trinity-users@lists.pearsoncomputing.net

Message: previous - next
Month: February 2011

Re: [trinity-users] iccconfig - Makefile.am: noinst_HEADERS = iccconfig.h (is this right?)

From: "David C. Rankin" <drankinatty@...>
Date: Fri, 11 Feb 2011 09:57:31 -0600
On 02/11/2011 12:46 AM, Timothy Pearson wrote:
>> On 02/10/2011 10:14 PM, Robert Xu wrote:
>>> I'll look closer, but something tells me I'm not going to get far...
>>
>> Hehehe...
>>
>>   I'd wager a little look closer by you = weeks of hunting and pecking
>> around by
>> me :) Thanks for your build arguments. I'll rebuild kdelibs and see if I
>> can
>> incorporate a few additional arguments and go from there.
>>
> 
> Just for fu, try inserting this line:
> #include <libkrandr/libkrandr.h>
> 
> into this file:
> kdebase/kcontrol/iccconfig/iccconfig.cpp
> 
> directly underneath this line:
> #include <tqstring.h>
> 
> Then try rebuilding kdebase and see if the error changes at all.  I have
> heard that GCC is not supposed to follow includes more than one file deep;
> if that is prohibiting a successful build then the above modification
> would fix it.
> 
> Let me know if that works!
> 
> Tim
> 
> 
<snip>
#include <string>
#include <stdio.h>
#include <tqstring.h>

// test inclusion
#include <libkrandr/libkrandr.h>

#include "iccconfig.h"

using namespace std;
<snip>

  Hmm.. No change. Same 'expected type-specifier' -> cannot convert ‘int*’ to
‘KRandrSimpleAPI*’ in initialization error. It is like it is missing code that
lets iccconfig.cpp know that ‘KRandrSimpleAPI*’ is an 'int*'. Could we add a
type-cast somewhere?  If so, where? Here is the error in full:

[ 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:292:38: error:
expected type-specifier
/home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:292:38: error: cannot
convert ‘int*’ to ‘KRandrSimpleAPI*’ in initialization
/home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:292: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:362:37: error:
expected type-specifier
/home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:362:37: error: cannot
convert ‘int*’ to ‘KRandrSimpleAPI*’ in initialization
/home/david/tbld/kdebase/kcontrol/iccconfig/iccconfig.cpp:362: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...



-- 
David C. Rankin, J.D.,P.E.