[CMake] Autotools->CMake build error

Kornel Benko kornel at lyx.org
Thu Aug 28 16:39:48 EDT 2014


Am Donnerstag, 28. August 2014 um 14:36:45, schrieb Richard Shaw <hobbes1069 at gmail.com>
> I'm working on converting a project[1] from autotools to CMake and I've
> gotten a lot of it working. The project HEAVILY relies on values from a
> config.h but I think I've gotten the essentials covered although it took a
> while.
> 
> Currently the build is failing on the following:
> [ 23%] Building CXX object src/CMakeFiles/fldigi.dir/widgets/FTextRXTX.cxx.o
> cd /home/build/tmp/build_fldigi/src && /usr/lib64/ccache/c++
> -DBUILD_FLDIGI -DHAVE_CONFIG_H -DLOCALEDIR=\"/usr/local/share/locale\"
> -DPKGDATADIR=\"/usr/local/share\" -DUSE_HAMLIB -DUSE_PNG -DUSE_PORTAUDIO
> -DUSE_PULSEAUDIO -DUSE_SAMPLERATE -DUSE_SNDFILE -DUSE_X -Wall -ffast-math
> -finline-functions -I/usr/include/freetype2 -D_LARGEFILE_SOURCE
> -D_LARGEFILE64_SOURCE -D_THREAD_SAFE -D_REENTRANT -pthread -O3 -DNDEBUG
> -I/home/build/tmp/build_fldigi -I/home/build/git/fldigi/src/xmlrpcpp
> -I/home/build/git/fldigi/src/fileselector
> -I/home/build/git/fldigi/src/libtiniconv
> -I/home/build/git/fldigi/src/irrxml -I/home/build/git/fldigi/src/include
> -I/home/build/git/fldigi/src -I/usr/include/libpng16 -I/usr/include/alsa
> -I/home/build/tmp/build_fldigi/src
> -I/home/build/git/fldigi/src/flarq-src/include    -o
> CMakeFiles/fldigi.dir/widgets/FTextRXTX.cxx.o -c
> /home/build/git/fldigi/src/widgets/FTextRXTX.cxx
> /home/build/git/fldigi/src/widgets/FTextRXTX.cxx:252:6: error: prototype
> for ‘void FTextRX::add(unsigned int, int)’ does not match any in class
> ‘FTextRX’
>  void FTextRX::add(unsigned int c, int attr)
>       ^
> In file included from /home/build/git/fldigi/src/include/fl_digi.h:34:0,
>                  from /home/build/git/fldigi/src/widgets/FTextRXTX.cxx:47:
> /home/build/git/fldigi/src/include/FTextRXTX.h:50:15: error: candidates
> are: virtual void FTextRX::add(const char*, int)
>   virtual void add(const char *s, int attr = RECV)
>                ^
> /home/build/git/fldigi/src/include/FTextRXTX.h:49:15: error:
>   virtual void FTextRX::add(unsigned char, int)
>   virtual void add(unsigned char c, int attr = RECV);
>                ^
> --- end ---
> 
> The automake line is:
> g++ -DHAVE_CONFIG_H -I.  -DBUILD_FLDIGI -DLOCALEDIR=\"/usr/share/locale\"
> -I. -I./include -I./irrxml -I./libtiniconv -I./fileselector -I./xmlrpcpp
> -DPKGDATADIR=\"/usr/share/fldigi\"  -pthread -I/usr/include/alsa
>  -I/usr/include/freetype2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
> -D_THREAD_SAFE -D_REENTRANT    -D_REENTRANT   -I/usr/include/libpng16
> -pipe -Wall -fexceptions -O2 -ffast-math -finline-functions  -DNDEBUG -O2
> -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
> -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches
>  -m64 -mtune=generic -c -o fldigi-FTextRXTX.o `test -f
> 'widgets/FTextRXTX.cxx' || echo './'`widgets/FTextRXTX.cxx
> --- end ---
> 
> Besides a lot of extra flags enforced by Fedora, I can't seem to find the
> essential difference between the two.
> 
> Can someone point me in the right direction?
> 
> I was going to put in a link to my remote branch at sourceforge but I'm not
> able to push to it right now....
> 
> Thanks,
> Richard
> 
> [1] http://www.w1hkj.com/Fldigi.html

You use '-DHAVE_CONFIG_H', this means probably generated 'config.h'.
Differences between generation of this file of automake/cmake?

	Kornel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 490 bytes
Desc: This is a digitally signed message part.
URL: <http://public.kitware.com/pipermail/cmake/attachments/20140828/70bbdf09/attachment-0001.sig>


More information about the CMake mailing list