Everyone,
After moving everything to a clean build environment and rebuilding everything from scratch to get around a kdebase make failure, we have come full circle. The kdebase build is dying at the same place:
Scanning dependencies of target kcm_iccconfig-module make[2]: Leaving directory `/home/david/tbld/kdebase/src' make -f kcontrol/iccconfig/CMakeFiles/kcm_iccconfig-module.dir/build.make kcontrol/iccconfig/CMakeFiles/kcm_iccconfig-module.dir/build make[2]: Entering directory `/home/david/tbld/kdebase/src' /usr/bin/cmake -E cmake_progress_report /home/david/tbld/kdebase/src/CMakeFiles [ 30%] Building CXX object kcontrol/iccconfig/CMakeFiles/kcm_iccconfig-module.dir/iccconfig.cpp.o cd /home/david/tbld/kdebase/src/kcontrol/iccconfig && /usr/bin/c++ -Dkcm_iccconfig_module_EXPORTS -DHAVE_CONFIG_H -DUSE_QT3 -DQT_NO_ASCII_CAST -DQT_CLEAN_NAMESPACE -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -DQT_THREAD_SUPPORT -D_REENTRANT -march=i686 -mtune=generic -O2 -pipe -include tqt.h -fPIC -I/home/david/tbld/kdebase/src/kcontrol/iccconfig -I/home/david/tbld/kdebase/src -I/opt/trinity/include -I/opt/qt/include -I/opt/qt/include/tqt -DKDE_CONFDIR="/opt/trinity/share/config" -o CMakeFiles/kcm_iccconfig-module.dir/iccconfig.cpp.o -c /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp: In member function ‘void KICCConfig::load(bool)’: /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:289:38: error: expected type-specifier /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:289:38: error: cannot convert ‘int*’ to ‘KRandrSimpleAPI*’ in initialization /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:289:38: error: expected ‘,’ or ‘;’ /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp: In member function ‘virtual void KICCConfig::save()’: /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:359:37: error: expected type-specifier /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:359:37: error: cannot convert ‘int*’ to ‘KRandrSimpleAPI*’ in initialization /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:359:37: error: expected ‘,’ or ‘;’ make[2]: *** [kcontrol/iccconfig/CMakeFiles/kcm_iccconfig-module.dir/iccconfig.cpp.o] Error 1 make[2]: Leaving directory `/home/david/tbld/kdebase/src' make[1]: *** [kcontrol/iccconfig/CMakeFiles/kcm_iccconfig-module.dir/all] Error 2 make[1]: Leaving directory `/home/david/tbld/kdebase/src' make: *** [all] Error 2 Aborting...
Serghei, as you requested in the "Round 2" thread, I have attached /opt/trinity/include/libkranr/libkranr.h and CMakeError.log.
I am at a loss. The current build arguments are:
[[ ${PATH%%:*} =~ /opt/trinity/bin ]] || export PATH=/opt/trinity/bin:$PATH export CMAKE_PREFIX_PATH=/opt/qt:/opt/trinity export CMAKE_INCLUDE_PATH=/opt/qt/include:/opt/qt/include/tqt:/usr/include/dbus-1.0 export LD_LIBRARY_PATH=/opt/trinity/lib:$LD_LIBRARY_PATH export PKG_CONFIG_PATH=:/opt/trinity/lib/pkgconfig:/opt/qt/lib/pkgconfig
trinity_prefix="/opt/trinity"
cd ${srcdir} cmake ../ \ -DCMAKE_INSTALL_PREFIX=${trinity_prefix} \ -DWITH_QT3=ON \ -DQTDIR=/opt/qt \ -DBUILD_ALL=ON make VERBOSE=1
Any thoughts on why we are seeing this iccconfig.cpp error? Got any more rabbits left in your hat? ;-)
On 02/07/2011 08:17 PM, David C. Rankin wrote:
[ 30%] Building CXX object kcontrol/iccconfig/CMakeFiles/kcm_iccconfig-module.dir/iccconfig.cpp.o cd /home/david/tbld/kdebase/src/kcontrol/iccconfig && /usr/bin/c++ -Dkcm_iccconfig_module_EXPORTS -DHAVE_CONFIG_H -DUSE_QT3 -DQT_NO_ASCII_CAST -DQT_CLEAN_NAMESPACE -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -DQT_THREAD_SUPPORT -D_REENTRANT -march=i686 -mtune=generic -O2 -pipe -include tqt.h -fPIC -I/home/david/tbld/kdebase/src/kcontrol/iccconfig -I/home/david/tbld/kdebase/src -I/opt/trinity/include -I/opt/qt/include -I/opt/qt/include/tqt -DKDE_CONFDIR="/opt/trinity/share/config" -o CMakeFiles/kcm_iccconfig-module.dir/iccconfig.cpp.o -c /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp: In member function ‘void KICCConfig::load(bool)’: /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:289:38: error: expected type-specifier /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:289:38: error: cannot convert ‘int*’ to ‘KRandrSimpleAPI*’ in initialization /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:289:38: error: expected ‘,’ or ‘;’ /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp: In member function ‘virtual void KICCConfig::save()’: /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:359:37: error: expected type-specifier /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:359:37: error: cannot convert ‘int*’ to ‘KRandrSimpleAPI*’ in initialization /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:359:37: error: expected ‘,’ or ‘;’ make[2]: *** [kcontrol/iccconfig/CMakeFiles/kcm_iccconfig-module.dir/iccconfig.cpp.o] Error 1 make[2]: Leaving directory `/home/david/tbld/kdebase/src' make[1]: *** [kcontrol/iccconfig/CMakeFiles/kcm_iccconfig-module.dir/all] Error 2 make[1]: Leaving directory `/home/david/tbld/kdebase/src' make: *** [all] Error 2 Aborting...
Serghei, as you requested in the "Round 2" thread, I have attached
/opt/trinity/include/libkranr/libkranr.h and CMakeError.log.
Err... might help if I actually attach the files:
On 02/07/2011 08:36 PM, David C. Rankin wrote:
On 02/07/2011 08:17 PM, David C. Rankin wrote:
[ 30%] Building CXX object kcontrol/iccconfig/CMakeFiles/kcm_iccconfig-module.dir/iccconfig.cpp.o cd /home/david/tbld/kdebase/src/kcontrol/iccconfig && /usr/bin/c++ -Dkcm_iccconfig_module_EXPORTS -DHAVE_CONFIG_H -DUSE_QT3 -DQT_NO_ASCII_CAST -DQT_CLEAN_NAMESPACE -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -DQT_THREAD_SUPPORT -D_REENTRANT -march=i686 -mtune=generic -O2 -pipe -include tqt.h -fPIC -I/home/david/tbld/kdebase/src/kcontrol/iccconfig -I/home/david/tbld/kdebase/src -I/opt/trinity/include -I/opt/qt/include -I/opt/qt/include/tqt -DKDE_CONFDIR="/opt/trinity/share/config" -o CMakeFiles/kcm_iccconfig-module.dir/iccconfig.cpp.o -c /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp: In member function ‘void KICCConfig::load(bool)’: /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:289:38: error: expected type-specifier /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:289:38: error: cannot convert ‘int*’ to ‘KRandrSimpleAPI*’ in initialization
<snip>
I don't know if this is the problem, but it doesn't look like xrandr is providing any pkg-config information. I get nothing returned from the following command:
20:47 trinity:/usr/lib/pkgconfig> pkg-config xrandr --cflags
However, the pkg-config information is present for xrandr:
20:47 trinity:/usr/lib/pkgconfig> cat xrandr.pc prefix=/usr exec_prefix=${prefix} libdir=${exec_prefix}/lib includedir=${prefix}/include
Name: Xrandr Description: X RandR Library Version: 1.3.1 Requires: xproto randrproto >= 1.3 Requires.private: x11 xext xrender Cflags: -I${includedir} Libs: -L${libdir} -lXrandr
Possible problem?
On 02/07/2011 08:51 PM, David C. Rankin wrote:
On 02/07/2011 08:36 PM, David C. Rankin wrote:
On 02/07/2011 08:17 PM, David C. Rankin wrote:
[ 30%] Building CXX object kcontrol/iccconfig/CMakeFiles/kcm_iccconfig-module.dir/iccconfig.cpp.o cd /home/david/tbld/kdebase/src/kcontrol/iccconfig && /usr/bin/c++ -Dkcm_iccconfig_module_EXPORTS -DHAVE_CONFIG_H -DUSE_QT3 -DQT_NO_ASCII_CAST -DQT_CLEAN_NAMESPACE -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -DQT_THREAD_SUPPORT -D_REENTRANT -march=i686 -mtune=generic -O2 -pipe -include tqt.h -fPIC -I/home/david/tbld/kdebase/src/kcontrol/iccconfig -I/home/david/tbld/kdebase/src -I/opt/trinity/include -I/opt/qt/include -I/opt/qt/include/tqt -DKDE_CONFDIR="/opt/trinity/share/config" -o CMakeFiles/kcm_iccconfig-module.dir/iccconfig.cpp.o -c /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp: In member function ‘void KICCConfig::load(bool)’: /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:289:38: error: expected type-specifier /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:289:38: error: cannot convert ‘int*’ to ‘KRandrSimpleAPI*’ in initialization
<snip>
I don't know if this is the problem, but it doesn't look like xrandr is providing any pkg-config information. I get nothing returned from the following command:
20:47 trinity:/usr/lib/pkgconfig> pkg-config xrandr --cflags
However, the pkg-config information is present for xrandr:
20:47 trinity:/usr/lib/pkgconfig> cat xrandr.pc prefix=/usr exec_prefix=${prefix} libdir=${exec_prefix}/lib includedir=${prefix}/include
Name: Xrandr Description: X RandR Library Version: 1.3.1 Requires: xproto randrproto >= 1.3 Requires.private: x11 xext xrender Cflags: -I${includedir} Libs: -L${libdir} -lXrandr
Possible problem?
Looking closely at the error:
/home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:289:38: error: expected type-specifier /home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:289:38: error: cannot convert ‘int*’ to ‘KRandrSimpleAPI*’ in initialization
it clear that the kdebase build isn't getting the class define of:
class KRANDR_EXPORT KRandrSimpleAPI : public RandRDisplay <snip>
from libkrandr.h. But there question is where and how is this being missed in my build of kdebase?
Looking closely at kdebase/kcontrol/iccconfig/iccconfig.h there seems to be a missing iccconfigbase.h file in the iccconfig directory. From iccconfig.h you have the following includes:
#include <dcopobject.h>
#include <libkrandr/libkrandr.h>
#include "iccconfigbase.h"
But looking in the iccconfig directory -- there is no iccconfigbase.h:
07:57 archangel:/dat_e/david/bld/trinity/kdebase/kcontrol/iccconfig> ls -1 CMakeLists.txt Makefile.am configure.in.in iccconfig.cpp iccconfig.desktop iccconfig.h iccconfigbase.ui
Is this a missing header that is causing my build fail?