[Kst] Re: branches/work/kst/portto4/kst

Peter Kümmel syntheticpp at gmx.net
Sun Jan 9 01:33:15 CET 2011


On 08.01.2011 23:43, Nicolas Brisset wrote:
> Hi Peter,
> 
> I am having problems building kst right now. Using qmake under Creator, I get the following error:
> linking ../../build/bin/kst2
> /home/nicolas/Code/kst/src/kst/../../build/lib/libkst2math.so: undefined reference to `typeinfo for Kst::NextColor'
> /home/nicolas/Code/kst/src/kst/../../build/lib/libkst2lib.so: undefined reference to `Kst::NextColor::self()'
> /home/nicolas/Code/kst/src/kst/../../build/lib/libkst2math.so: undefined reference to `Kst::NextColor::NextColor()'
> /home/nicolas/Code/kst/src/kst/../../build/lib/libkst2math.so: undefined reference to `Kst::NextColor::~NextColor()'
> collect2: ld returned 1 exit status
> make[1]: *** [../../build/bin/kst2] Erreur 1
> make[1]: quittant le répertoire « /home/nicolas/Code/kst/src/kst »
> make: *** [sub-src-kst-make_default-ordered] Erreur 2
> make: quittant le répertoire « /home/nicolas/Code/kst »
> Terminé avec le code de sortie 2.

Sorry, forgot to update the .pro file.
The cmake build system scans the directories, so no need to update any file.
Seems this is worth to be mentioned in the INSTALL file.

> 
> Since I don't know exactly when I'm supposed to switch to cmake, I tried it as well. But I also have an issue. With the following command (launched manually, but from Creator it does the same):
> "cmake ../../kst/cmake/ -Dkst_merge_files=ON"
> I get:
> nicolas at linux-cwbq:~/Code/kst_cmake/manual_build> make
> ...
> [ 13%] Built target kstcore
> [ 24%] Built target kstmath
> [ 24%] Building CXX object src/widgets/CMakeFiles/kstwidgets.dir/merged_const.cpp.o
> /home/nicolas/Code/kst_cmake/manual_build/src/widgets/merged_const.cpp:33:61: fatal error: /home/nicolas/Code/kst/src/widgets/qrc_images.cpp: Aucun fichier ou dossier de ce type

"Aucun fichier ou dossier de ce type" what does this mean? "Could not find"?

> compilation terminated.
> make[2]: *** [src/widgets/CMakeFiles/kstwidgets.dir/merged_const.cpp.o] Erreur 1
> make[1]: *** [src/widgets/CMakeFiles/kstwidgets.dir/all] Erreur 2
> make: *** [all] Erreur 2
> 
> Do you have any idea why? It looks like it is not generating the qrc_images.cpp from the Qt resource system correctly.

Strange, I've tested it on Linux with 4.7 and 4.4, on Mac with 4.7, and on Windows with 4.7 and
never got an error because of qrc_images.cpp. What is your setup, Qt version, cmake version, Linux?
Do you have enough disk space?

> 
> BTW, this merged file option looks pretty cool :-) The speed difference is very noticeable.

Yes, sometimes it decides between waiting in front of the computer until the build is ready
or to leave it and to come back later.

I also have to document a feature of the merged build:
When you heavily work on one file you could comment out the relevant define in the
merged_const.cpp file, so only the file merged_touched.cpp file will be re-compiled again an again.

Peter


> 
> Thanks,
> 
> Nicolas
> ----- "Peter Kümmel" <syntheticpp at gmx.net> a écrit :
> 
>> SVN commit 1212913 by kuemmel:
>>
>> update INSTALL file
>>
>>  M  +8 -4      INSTALL  
>>
>>
>> --- branches/work/kst/portto4/kst/INSTALL #1212912:1212913
>> @@ -89,9 +89,14 @@
>>  	Options could be passed by the -D prefix when running cmake.
>>  	Available options will be listed on each cmake run:
>>  
>> -	-- kst_merge_files          = OFF     : Merge files to speedup
>> build
>> +	-- kst_release              = OFF    : Build release version
>> +	-- kst_merge_files          = OFF    : Merge files to speedup build
>> about factor 5
>>  	-- kst_merge_rebuild        = OFF     : Rebuild generated files from
>> merged files build
>> +	-- kst_verbose              = OFF    : Make verbose CMake run and
>> Makefiles
>> +	-- kst_install_prefix       = OFF    : Install path for Kst, using a
>> default if not set
>> +	-- kst_3rdparty             = OFF    : Build plugins depending on
>> 3rd party libraries
>>  	
>> +	
>>  	To enable a option pass the value ON or 1, eg
>>  		cmake ../kst/cmake -Dkst_merge_files=1
>>  
>> @@ -108,12 +113,10 @@
>>  	qmake until all issues are solved.
>>  	
>>  	TODOs:
>> -	- add install rules
>> +	- install on Mac
>>  	- add package rules
>>  	- add svn revision number extraction
>> -	- add support for all 3rd party libraries used by the plugins
>>  	- add support for pre-compiled headers
>> -	- add configure checkes so config.h is generated
>>  	- only the kst binary is generated
>>  	- build and run tests
>>  	- have a look at kst1's cmake files, especially the 3rd party lib
>> code
>> @@ -124,3 +127,4 @@
>>  
>>  
>>  
>> +
>> _______________________________________________
>> Kst mailing list
>> Kst at kde.org
>> https://mail.kde.org/mailman/listinfo/kst
> _______________________________________________
> Kst mailing list
> Kst at kde.org
> https://mail.kde.org/mailman/listinfo/kst


More information about the Kst mailing list