trinity-devel@lists.pearsoncomputing.net

Message: previous - next
Month: December 2016

Re: <DKIM> [trinity-devel] Re: [Bulk] [trinity-devel] Build failure - tdeadmin-14.0.4 - slackware

From: gregory guy <zadig83@...>
Date: Mon, 5 Dec 2016 07:54:55 +0100
On 05/12/2016 06:48, Michele Calgaro wrote:
> On 2016/12/05 01:41 PM, gregory guy wrote:
>> Hi guys,
>>
>> I'm unable to build "tdefile-plugins" from the "tdeadmin" package, here is the error I get:
>>
>> ------------------------------------------------------------------------
>>
>> /bin/sh ../../libtool  --tag=CXX   --mode=link g++ -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE
>> -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -O2 -m64 -fPIC -march=x86-64 -mtune=native -Wformat-security
>> -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -I/usr/include/tqt
>> -fvisibility=hidden -fvisibility-inlines-hidden -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT
>> -DQT_NO_TRANSLATION -L/usr/lib64    -module -avoid-version -module -no-undefined -Wl,--no-undefined
>> -Wl,--allow-shlib-undefined -I/usr/include/tqt3 -o tdefile_rpm.la -rpath /usr/lib64/trinity tdefile_rpm.lo -ltdeio
>> libtool: link: g++  -fPIC -DPIC -shared -nostdlib /usr/lib64/gcc/x86_64-slackware-linux/5.4.0/../../../../lib64/crti.o
>> /usr/lib64/gcc/x86_64-slackware-linux/5.4.0/crtbeginS.o .libs/tdefile_rpm.o   -Wl,-rpath -Wl,/usr/lib64/../lib64
>> -Wl,-rpath -Wl,/usr/lib64/../lib64 -L/usr/lib64 /usr/lib64/libtdeio.so -L/usr/lib64/gcc/x86_64-slackware-linux/5.4.0
>> -L/usr/lib64/gcc/x86_64-slackware-linux/5.4.0/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64
>> -L/usr/lib64/gcc/x86_64-slackware-linux/5.4.0/../../../../x86_64-slackware-linux/lib
>> -L/usr/lib64/gcc/x86_64-slackware-linux/5.4.0/../../.. /usr/lib64/../lib64/libstdc++.so -lm -lc -lgcc_s
>> /usr/lib64/gcc/x86_64-slackware-linux/5.4.0/crtendS.o
>> /usr/lib64/gcc/x86_64-slackware-linux/5.4.0/../../../../lib64/crtn.o -O2 -m64 -march=x86-64 -mtune=native
>> -Wl,--no-undefined -Wl,--allow-shlib-undefined   -Wl,-soname -Wl,tdefile_rpm.so -o .libs/tdefile_rpm.so
>> .libs/tdefile_rpm.o: In function `KRpmPlugin::staticMetaObject()':
>> tdefile_rpm.cpp:(.text+0x24): undefined reference to `tqt_sharedMetaObjectMutex'
>> tdefile_rpm.cpp:(.text+0x31): undefined reference to `TQMutex::lock()'
>> tdefile_rpm.cpp:(.text+0x4a): undefined reference to `TQMutex::unlock()'
>> tdefile_rpm.cpp:(.text+0x86): undefined reference to `TQMetaObject::new_metaobject(char const*, TQMetaObject*,
>> TQMetaData const*, int, TQMetaData const*, int, TQMetaProperty const*, int, TQMetaEnum const*, int, TQClassInfo const*,
>> int)'
>> tdefile_rpm.cpp:(.text+0xa4): undefined reference to `TQMetaObjectCleanUp::setMetaObject(TQMetaObject*&)'
>> .libs/tdefile_rpm.o: In function `init_tdefile_rpm':
>> tdefile_rpm.cpp:(.text+0xdb): undefined reference to `KLibFactory::KLibFactory(TQObject*, char const*)'
>> tdefile_rpm.cpp:(.text+0xf6): undefined reference to `TQCString::TQCString(char const*)'
>> .libs/tdefile_rpm.o: In function `KRpmPlugin::KRpmPlugin(TQObject*, char const*, TQStringList const&)':
>> tdefile_rpm.cpp:(.text+0x161): undefined reference to `TQString::TQString(char const*)'
>> tdefile_rpm.cpp:(.text+0x177): undefined reference to `TQString::~TQString()'
>> tdefile_rpm.cpp:(.text+0x186): undefined reference to `i18n(char const*)'
>> tdefile_rpm.cpp:(.text+0x195): undefined reference to `TQString::TQString(char const*)'
>> tdefile_rpm.cpp:(.text+0x1b1): undefined reference to `TQString::~TQString()'
>>
>> ------------------------------------------------------------------------
>>
>> Source: tdeadmin 14.0.4
>> Platform: Linux Slackware 14.2 64bit
>>
>> I tried to compile the package without tdefile-plugins ; with a sed command (in my building script) I've removed the
>> tdefile-plugins subdirectory in the Makefile, as a result I could built the package but then the lilo configuration tool
>> in Trinity control center crashes as soon as I input my root password.
>> That' a pity, because I'm mainly interrested to the lilo config tool...
>>
>> I've build Tdelibs with everything but ELF icon and Hunspell ; still, I'm puzzled, maybe I've been missing a library or
>> a package.
>>
>> Here is the packages I've built so far (in that order):
>> - libart_lgpl
>> - tqt3
>> - tqtinterface
>> - dbus-tqt
>> - dbus-1-tqt
>> - arts
>> - tdelibs
>> - tdebase
>> - tdeartwork
>> - tde-i18n
>> - tdeutils
>> - tdemultimedia
>> - tdegraphics
>> - tdenetwork
>> - dolphin
>> - tdeaddons
>>
>> Any hint to solve my build failure will be appreciated.
>> Regards.
>> gregory
>>
>>
> Looks like your linker is not finding all the required functions. I did not really looked in deep detail, but either you
> are missing some
> libraries when you invoke the linker or you may have mixed up shared and static objects during the build of various modules.
> Since you are building rpm, perhaps you can find useful info in the OBS used by Francois for building in several rpm
> based distros
> https://build.opensuse.org/project/show/home:PunisherHD:Trinity:r14.0.x
>
> Hope this helps :-)
> Cheers
>    Michele
>
>
Hi Michele,

Thanks for your reply.
To your knowledge, Slackware isn't a RPM distro, we build the software 
throught shell scripts (Bash) into a temporary directory and make a 
package out of it with the "tar" tool and XZ compression algorithm.
I've made up my build scripts.

With the settings (passed to "configure") provided by the SPECS file 
from Fran├žois, it's working.
Trying to isolate the culprit, (I should have added --with-shadow to 
configure, i guess)

Well, since you're at it, when we build Trinity's applications, should 
we pass "hidden-visibility" to the compiler or not?

@+