Date: prev next · Thread: first prev next last
2016 Archives by date, by thread · List index


On 11/10/2016 12:14 PM, Rodnyansky Pavel wrote:
*Firstly, what i ve got to this point:*
- My os is Ubuntu 16.04 LTS 64 bit
- I successfully installed LibreOffice and sdk from deb packages, both
versions 5.2.3 x86-64
- Build headers with cppumaker
- My setsdk_env script up and running
- I compiled couple of basic included examples, but was unable to run them
afterwards

Can you be more specific?

- I m trying to compile simplest c++ application with basically couple of
sdk headers on top using Qt/GCC_64 and getting a bunch of compiler errors

*Here is my output:*

/home/pavel/Programms/LibreOfficeTest/include/sal/types.h:293: error: #error
("unknown platform")

/home/pavel/Qt/5.7/gcc_64/include/QtCore/qcompilerdetection.h:223: error:
expected constructor, destructor, or type conversion before ‘(’ token #
define Q_DECL_IMPORT     __declspec(dllimport)

etc etc...

I digged a little bit deeper and found this line in sal/config.h file
#if defined(SOLARIS) || defined(LINUX) || defined(NETBSD) ||
defined(FREEBSD) || \
    defined(AIX) || defined(OPENBSD) || defined(DRAGONFLY) ||
defined(ANDROID)

All variables not defined. From the looks of it, my programm have no idea
about its environment. If i understand correctly this variables can be
defined from settings.mk file but i have no idea how to fix it.

Unfortunately it's not enough to run from within a setsdkenv_unix shell, you also need to set up some C++ compiler command line arguments. Modelling your makefiles after the sdk's example/ makefiles (which include the SDK's settings/*.mk) would give you that, but you should also be able to get it working with a plain, handcrafted makefile. LO's git sources contain ure/source/uretest/Makefile.pln as an example of doing that. What's probably missing for you is defines

  -DCPPU_ENV=gcc3 -DLINUX -DUNX

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.