trinity-devel@lists.pearsoncomputing.net

Message: previous - next
Month: December 2016

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

From: Michele Calgaro <michele.calgaro@...>
Date: Tue, 6 Dec 2016 12:29:49 +0900
On 2016/12/05 03:54 PM, gregory guy wrote:
> 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?
> 
> @+
> 
Yes, I recommend so.
There are some issues with hidden-visibility (there is a bug in bugszilla about it, don't remember the exact number) but
you should try with hidden-visibility enable first.
Cheers
  Michele



Attachments: