trinity-devel@lists.pearsoncomputing.net

Message: previous - next
Month: January 2014

Re: [trinity-devel] [PATCH] Re: [trinity-devel] tdebase FTBFS - No rule to make target '/opt/trinity/lib/libtdefakes_nonpic.a'

From: Slávek Banko <slavek.banko@...>
Date: Mon, 20 Jan 2014 21:26:00 +0100
On Monday 20 of January 2014 21:18:03 David C. Rankin wrote:
> On 01/20/2014 01:21 PM, Sl�vek Banko wrote:
> > On Monday 20 of January 2014 20:13:02 David C. Rankin wrote:
> >> On 01/20/2014 11:25 AM, Sl�vek Banko wrote:
> >>> How did you come to the conclusion that building ksysguardd depends on
> >>> WITH_SENSORS? I do not see any such condition in CMake files.
> >>
> >> (1) Because ksysguard is the wonderful monitoring package;
> >> (2) that uses system hardware sensors;
> >> (3) I've never run into this missing file before; and
> >> (4) this was the first time I have ever built WITH_SENSORS.
> >>
> >> Elementary my dear Mr. Watson...
> >>
> >>
> >> Oh,
> >>
> >>   Also, in the CMakeLists.txt file where I had to fix this screwy
> >> filename, I found this....
> >>
> >> ##### ksysguardd (executable) ###################
> >>
> >> tde_add_executable( ksysguardd AUTOMOC
> >>   SOURCES Command.c conf.c ksysguardd.c PWUIDCache.c
> >>   LINK ccont-static ksysguardd-static
> >> ${TDE_LIB_DIR}/libtdefakes_nonpic.a ${SENSORS_LIBRARIES}
> >>     ^^^^^^^^^^^^^^^^^^^^
> >>   DESTINATION ${BIN_INSTALL_DIR}
> >> )
> >
> > If WITH_SENSORS is OFF, variable ${SENSORS_LIBRARIES} is empty and
> > ksysguardd is built without problems, just without lm_sensors support.
> > It's not option without which it would be impossible to build ksysguardd.
> >
> > Slavek
>
> I'm trying to nail this problem down at the moment and I'm not sure why the
> '.a' files are not in my install. The files were generated and made part of
> the package when tdelibs was built. From the tdelibs build log:
>
> 13:55 phoinix:/dat_e/tde/log> grep libtdefake tde-tdelibs.log
> Linking C shared library libtdefakes.so
> /usr/bin/cc  -fPIC -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector
> --param=ssp-buffer-size=4  -Wl,--no-undefined -shared
> -Wl,-soname,libtdefakes.so.14 -o libtdefakes.so.14.0.0
> CMakeFiles/tdefakes-shared.dir/fakes.c.o
> CMakeFiles/tdefakes-shared.dir/vsnprintf.c.o  -L/opt/tqt3/lib
> cd /build/tde-tdelibs/src/build/tdecore && /usr/bin/cmake -E
> cmake_symlink_library libtdefakes.so.14.0.0 libtdefakes.so.14
> libtdefakes.so Linking C static library libtdefakes_nonpic.a
> /usr/bin/ar cr libtdefakes_nonpic.a
> CMakeFiles/tdefakes_nonpic-static.dir/fakes.c.o
> CMakeFiles/tdefakes_nonpic-static.dir/vsnprintf.c.o
> /usr/bin/ranlib libtdefakes_nonpic.a
> Linking C static library libtdefakes_pic.a
> /usr/bin/ar cr libtdefakes_pic.a 
> CMakeFiles/tdefakes_pic-static.dir/fakes.c.o
> CMakeFiles/tdefakes_pic-static.dir/vsnprintf.c.o
> /usr/bin/ranlib libtdefakes_pic.a
> /usr/bin/c++   -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector
> --param=ssp-buffer-size=4   -DQT_NO_ASCII_CAST -DQT_CLEAN_NAMESPACE
> -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -DQT_THREAD_SUPPORT
> -D_REENTRANT -include tqt.h -I/opt/tqt3/include -I/usr/include/tqt
> -DQT_NO_ASCII_CAST
> -DQT_CLEAN_NAMESPACE -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION
> -DQT_THREAD_SUPPORT -D_REENTRANT -include tqt.h
> -Wl,-O1,--sort-common,--as-needed,-z,relro
> CMakeFiles/tdestartupconfig.dir/tdestartupconfig.cpp.o  -o tdestartupconfig
> -L/opt/tqt3/lib -rdynamic ../tdecore/libtdefakes.so.14.0.0 -ltqt -ltqt-mt
> -Wl,-rpath,/opt/tqt3/lib:/build/tde-tdelibs/src/build/tdecore:
> /usr/bin/cc  -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector
> --param=ssp-buffer-size=4    -Wl,-O1,--sort-common,--as-needed,-z,relro
> CMakeFiles/cupsdoprint.dir/cupsdoprint.c.o  -o cupsdoprint  -L/opt/tqt3/lib
> -rdynamic ../../tdecore/libtdefakes.so.14.0.0 -lcups
> -Wl,-rpath,/opt/tqt3/lib:/build/tde-tdelibs/src/build/tdecore:
> /usr/bin/cc  -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector
> --param=ssp-buffer-size=4    -Wl,-O1,--sort-common,--as-needed,-z,relro
> CMakeFiles/make_driver_db_cups.dir/make_driver_db_cups.c.o  -o
> make_driver_db_cups  -L/opt/tqt3/lib -rdynamic ../libdriverparse.a
> ../../tdecore/libtdefakes.so.14.0.0 -lz -ldl
> -Wl,-rpath,/opt/tqt3/lib:/build/tde-tdelibs/src/build/tdecore:
> /usr/bin/cc  -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector
> --param=ssp-buffer-size=4    -Wl,-O1,--sort-common,--as-needed,-z,relro
> CMakeFiles/make_driver_db_lpr.dir/make_driver_db_lpr.c.o  -o
> make_driver_db_lpr -L/opt/tqt3/lib -rdynamic ../libdriverparse.a
> ../../tdecore/libtdefakes.so.14.0.0 -ldl
> -Wl,-rpath,/opt/tqt3/lib:/build/tde-tdelibs/src/build/tdecore:
> -- Installing:
> /build/tde-tdelibs/pkg/tde-tdelibs/opt/trinity/lib/libtdefakes_nonpic.a
> -- Installing:
> /build/tde-tdelibs/pkg/tde-tdelibs/opt/trinity/lib/libtdefakes_pic.a --
> Installing:
> /build/tde-tdelibs/pkg/tde-tdelibs/opt/trinity/lib/libtdefakes.so.14.0.0
> -- Installing:
> /build/tde-tdelibs/pkg/tde-tdelibs/opt/trinity/lib/libtdefakes.so.14 --
> Installing:
> /build/tde-tdelibs/pkg/tde-tdelibs/opt/trinity/lib/libtdefakes.so --
> Installing:
> /build/tde-tdelibs/pkg/tde-tdelibs/opt/trinity/lib/libtdefakes.la
>
>   So the libtdefakes_nonpic.a and libtdefakes_pic.a were 'installed' by
> 'make install', but were later somehow stripped in packaging. Now it is NOT
> something I did intentionally because my package() function for tdelibs is:
>
> package() {
>   msg "Packaging - $pkgname-$pkgver"
>   cd ${srcdir}/build
>
>   make -j1 DESTDIR="$pkgdir" install
> }
>
>   That's it! So if the '.a' files are gone, then Arch's packaging software
> automatically strips them internally. That is what I'm trying to track
> down.
>
>   What is the contents of your libtdefakes_nonpic.a and libtdefakes_pic.a
> files?

The files '*.a' are binary. I did not inquire, what is the purpose of this 
library.

Slavek
--