Dne po 20. ledna 2014 David C. Rankin napsal(a):
On 01/20/2014 02:25 AM, David C. Rankin wrote:
On 01/20/2014 02:07 AM, David C. Rankin wrote:
All,
I do not know what in the heck this error is:
[ 95%] Built target ksysguardd-static
Scanning dependencies of target ksysguardd
[ 95%] Building C object
ksysguard/ksysguardd/CMakeFiles/ksysguardd.dir/Command.c.o [ 95%]
Building C object
ksysguard/ksysguardd/CMakeFiles/ksysguardd.dir/conf.c.o [ 95%]
Building C object
ksysguard/ksysguardd/CMakeFiles/ksysguardd.dir/ksysguardd.c.o
[ 95%] Building C object
ksysguard/ksysguardd/CMakeFiles/ksysguardd.dir/PWUIDCache.c.o
make[2]: *** No rule to make target
'/opt/trinity/lib/libtdefakes_nonpic.a', needed by
'ksysguard/ksysguardd/ksysguardd'. Stop.
CMakeFiles/Makefile2:24311: recipe for target
'ksysguard/ksysguardd/CMakeFiles/ksysguardd.dir/all' failed
make[1]: *** [ksysguard/ksysguardd/CMakeFiles/ksysguardd.dir/all]
Error 2 Makefile:116: recipe for target 'all' failed
make: *** [all] Error 2
The base error is:
*** No rule to make target '/opt/trinity/lib/libtdefakes_nonpic.a',
needed by 'ksysguard/ksysguardd/ksysguardd'. Stop.
Is this a CMake error or some other type of error? Where to start?
The failure comes from ksysguard/ksysguardd/CMakeLists.txt
#### 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}
)
I suspect that should be libtdefakes_nonpic.la
will patch and test (who pushed this stuff....:-)
[ 95%] Building C object
ksysguard/ksysguardd/CMakeFiles/ksysguardd.dir/PWUIDCache.c.o
make[2]: *** No rule to make target
'/opt/trinity/lib/libtdefakes_nonpic.la', needed by
There is NO file named:
'/opt/trinity/lib/libtdefakes_nonpic.a' (or .la)
There IS a file named:
'/opt/trinity/lib/libtdefakes.la'
But why would something be trying to link against a libtool library.
If someone can explain the ksysguardd AUTOMOC call, I'd appreciate it.
Regardless, tdebase was going to complete its build tonight. So
instead of messing with the autotool .la file, I patched CMakeLists.txt
to link to the shared-object .so file. It worked!
--- CMakeLists.txt
+++ ksysguard/ksysguardd/CMakeLists.txt 2014-01-20 04:06:29.291128193
-0600 @@ -39,7 +39,7 @@
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 + LINK ccont-static
ksysguardd-static ${TDE_LIB_DIR}/libtdefakes.so ${SENSORS_LIBRARIES}
DESTINATION ${BIN_INSTALL_DIR}
)
Whoop!
tde-tdebase-14.0.0-1-x86_64.pkg.tar.xz (built without HAL)
Needless to say, the ksysguardd/CMakeLists.txt should be reworked. I
believe this part of tdebase is only built if building with
-DWITH_SENSORS=ON. I've attached the patch. Look it over and let me
know if you want a bug opened.
I think that the patch is not correct. All other libraries are linked
static, so it seems to me correct also tdefakes linking static, not
shared.
Built on Debian, also without HAL:
# ls -1 /opt/trinity/lib/libtdefakes*
/opt/trinity/lib/libtdefakes.la
/opt/trinity/lib/libtdefakes.so
/opt/trinity/lib/libtdefakes.so.14
/opt/trinity/lib/libtdefakes.so.14.0.0
/opt/trinity/lib/libtdefakes_nonpic.a
/opt/trinity/lib/libtdefakes_pic.a
As I mentioned in the other mail, tdefakes is built in tdelibs. Please
check your tdelibs build.
Slavek
--