Bug #8140 2006-07-19 20:18
tdb
Fails to build on Linux
I'm been unable to compile Code::Blocks on Linux for several weeks. The first revision where I noticed this was r2699, and the latest one r2772 (which I just checked out). I'm using Debian unstable with GCC 4.1. I tried to figure out the problem myself, but without much success due to not being familiar with the code. Below is the output concerning the failed file. I can provide full output if needed. make[6]: Entering directory `/home/tdb/src/codeblocks/codeblocks-1.0+svn2772/src/sdk/scripting/bindings' if /bin/sh ../../../../libtool --tag=CXX --mode=compile i486-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I../../../../src/sdk -I/usr/lib/wx/include/gtk2-unicode-release-2.6 -I/usr/include/wx-2.6 -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -D_LARGEFILE_SOURCE=1 -DNO_GCC_PRAGMA -I../../../../src/sdk -I../../../../src/sdk/wxscintilla/include -I../../../../src/sdk/scripting/include -I../../../../src/sdk/scripting/sqplus -O2 -ffast-math -g -O2 -DCB_PRECOMP -Winvalid-pch -fPIC -DPIC -MT scriptbindings.lo -MD -MP -MF ".deps/scriptbindings.Tpo" -c -o scriptbindings.lo scriptbindings.cpp; \ then mv -f ".deps/scriptbindings.Tpo" ".deps/scriptbindings.Plo"; else rm -f ".deps/scriptbindings.Tpo"; exit 1; fi mkdir .libs i486-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I../../../../src/sdk -I/usr/lib/wx/include/gtk2-unicode-release-2.6 -I/usr/include/wx-2.6 -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -D_LARGEFILE_SOURCE=1 -DNO_GCC_PRAGMA -I../../../../src/sdk -I../../../../src/sdk/wxscintilla/include -I../../../../src/sdk/scripting/include -I../../../../src/sdk/scripting/sqplus -O2 -ffast-math -g -O2 -DCB_PRECOMP -Winvalid-pch -fPIC -DPIC -MT scriptbindings.lo -MD -MP -MF .deps/scriptbindings.Tpo -c scriptbindings.cpp -fPIC -DPIC -o .libs/scriptbindings.o ../../../../src/sdk/scripting/sqplus/SqPlusConst.h: In static member function static int SqPlus::ReturnSpecialization<RT>::Call(Callee&, RT (Callee::*)()const, SQVM*, int) [with Callee = CompileOptionsBase, RT = const wxArrayString&]: ../../../../src/sdk/scripting/sqplus/SqPlusConst.h:281: instantiated from int SqPlus::Call(Callee&, RT (Callee::*)()const, SQVM*, int) [with Callee = CompileOptionsBase, RT = const wxArrayString&] ../../../../src/sdk/scripting/sqplus/sqplus.h:1315: instantiated from static SQInteger SqPlus::DirectCallInstanceMemberFunction<Callee, Func>::Dispatch(SQVM*) [with Callee = CompileOptionsBase, Func = const wxArrayString& (CompileOptionsBase::*)()const] ../../../../src/sdk/scripting/sqplus/sqplus.h:1383: instantiated from void SqPlus::sq_pushdirectinstanceclosure(SQVM*, const Callee&, Func, SQUnsignedInteger) [with Callee = CompileOptionsBase, Func = const wxArrayString& (CompileOptionsBase::*)()const] ../../../../src/sdk/scripting/sqplus/sqplus.h:1467: instantiated from void SqPlus::RegisterInstance(SQVM*, HSQOBJECT, Callee&, Func, const SQChar*) [with Callee = CompileOptionsBase, Func = const wxArrayString& (CompileOptionsBase::*)()const] ../../../../src/sdk/scripting/sqplus/sqplus.h:1817: instantiated from SqPlus::SQClassDef<TClassType>& SqPlus::SQClassDef<TClassType>::func(Func, const SQChar*) [with Func = const wxArrayString& (CompileOptionsBase::*)()const, TClassType = CompileOptionsBase] scriptbindings.cpp:337: instantiated from here ../../../../src/sdk/scripting/sqplus/SqPlusConst.h:46: error: no matching function for call to Push(SQVM*&, const wxArrayString&) ../../../../src/sdk/scripting/sqplus/sqplus.h:595: note: candidates are: void SqPlus::Push(SQVM*, char) ../../../../src/sdk/scripting/sqplus/sqplus.h:596: note: void SqPlus::Push(SQVM*, unsigned char) ../../../../src/sdk/scripting/sqplus/sqplus.h:597: note: void SqPlus::Push(SQVM*, short int) ../../../../src/sdk/scripting/sqplus/sqplus.h:598: note: void SqPlus::Push(SQVM*, short unsigned int) ../../../../src/sdk/scripting/sqplus/sqplus.h:599: note: void SqPlus::Push(SQVM*, int) ../../../../src/sdk/scripting/sqplus/sqplus.h:600: note: void SqPlus::Push(SQVM*, unsigned int) ../../../../src/sdk/scripting/sqplus/sqplus.h:601: note: void SqPlus::Push(SQVM*, long int) ../../../../src/sdk/scripting/sqplus/sqplus.h:602: note: void SqPlus::Push(SQVM*, long unsigned int) ../../../../src/sdk/scripting/sqplus/sqplus.h:603: note: void SqPlus::Push(SQVM*, double) ../../../../src/sdk/scripting/sqplus/sqplus.h:604: note: void SqPlus::Push(SQVM*, float) ../../../../src/sdk/scripting/sqplus/sqplus.h:605: note: void SqPlus::Push(SQVM*, const SQChar*) ../../../../src/sdk/scripting/sqplus/sqplus.h:606: note: void SqPlus::Push(SQVM*, const SqPlus::SquirrelNull&) ../../../../src/sdk/scripting/sqplus/sqplus.h:607: note: void SqPlus::Push(SQVM*, SQInteger (*)(SQVM*)) ../../../../src/sdk/scripting/sqplus/sqplus.h:608: note: void SqPlus::Push(SQVM*, SqPlus::SQAnything*) ../../../../src/sdk/scripting/sqplus/sqplus.h:609: note: void SqPlus::Push(SQVM*, SquirrelObject&) ../../../../src/sdk/scripting/sqplus/sqplus.h:618: note: void SqPlus::Push(SQVM*, bool) ../../../../src/sdk/scripting/sqplus/sqplus.h:619: note: void SqPlus::Push(SQVM*, const void*) ../../../../src/sdk/scripting/sqplus/sqplus.h:620: note: void SqPlus::Push(SQVM*, void* const&) make[6]: *** [scriptbindings.lo] Error 1
- Category
- Group
- Status
- Closed
- Close date
- 2006-09-08 11:06
- Assigned to
History
Confirmed
PLD Linux
[czarny@kacper SPECS]$ gcc -v
Reading specs from /usr/lib/gcc/i686-pld-linux/4.1.2/specs
Target: i686-pld-linux
Configured with: ../configure --prefix=/usr --with-local-prefix=/usr/local --libdir=/usr/lib --libexecdir=/usr/lib --infodir=/usr/share/info --mandir=/usr/share/man --x-libraries=/usr/lib --enable-shared --enable-threads=posix --enable-languages=c,c++,fortran,objc,obj-c++,ada,java --enable-c99 --enable-long-long --disable-multilib --enable-nls --disable-werror --with-gnu-as --with-gnu-ld --with-demangler-in-ld --with-system-zlib --with-slibdir=/lib --without-system-libunwind --enable-cmath --with-long-double-128 --with-gxx-include-dir=/usr/include/c++/4.1.2 --disable-libstdcxx-pch --enable-__cxa_atexit --enable-libstdcxx-allocator=new --with-qt4dir=/usr/lib/qt4 --disable-libjava-multilib --enable-libgcj --enable-libgcj-multifile --enable-libgcj-database --enable-gtk-cairo --enable-java-awt=qt,gtk,xlib --enable-jni --enable-xmlj --enable-alsa --enable-dssi i686-pld-linux
Thread model: posix
gcc version 4.1.2 20060712 (prerelease) (PLD-Linux)
[czarny@kacper SPECS]$ uname -r
2.6.16.22-2
It seems this is a bug in the GCC 4.1.x. Other gcc versions (3.4.x 4.0.x) do it correctly.
Solution : downgrade your gcc, I am suffering the same problem, but still need to find out first how to downgrade my GCC.
please see a patch at bug 008132, it is taken from CB forums
This bug has been already fixed in HEAD.
Thank you.