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.
--
David C. Rankin, J.D.,P.E.