Hi! On Fri, 31 Oct 2003, Jonathan Brandmeyer wrote:
I am attempting to build CLN (and later, GiNaC) on my Windows XP machine with Mingw. I am using g++ 3.2.3 and the latest binary utilities.
I have a build of GMP 4.2.1 for use as a backend for CLN (installed under c:\msys\1.0\local\).
CLN was configured with CPPFLAGS=-I/usr/local/include LIBS=/usr/local/lib/libgmp-3.dll CXXFLAGS="-O2 -finline-functions -fomit-frame-pointer -march=i686 -finline-limit=1000" ./configure --with-gmp.
The build progressed and after a couple hours the link failed for the shared library. It looks a lot like what was described on ginac-devel when a fellow had problems on Alpha (thread begins here: http://www.ginac.de/lists/ginac-devel/msg00091.html), except that I am using a relatively modern toolchain.
The linker errors are of the form: cl_t_c2.lo(.text+0x4e):cl_t_c2.cc: undefined reference to `_GLOBAL__I_cl_module__cl_prin_globals__firstglobalfun'
Any thoughts? -Jonathan Brandmeyer
P.S. I am using msys to drive the build, but I do not want to use Cygwin.
Sorry, no clue. I don't know of anyone using your toolchain. But I am sure that it should work at least on Cygwin since we've received some smallish patches (which've all made it into our tree). Wait! -finline-functions is something which is switched on with -O3 normally. Now, I do know that there used to be such unresolved symbols with -O3. Since not much else is switched on with -O3 (only register renaming), maybe that would be the culprit? Could you please try without -finline-functions and see how it goes?! BTW, as of GCC-3.4 (current CVS snapshot) CLN should now compile fine with full -O3 optimizations (which *does* make a difference, but only due to the new -funit-at-a-time option, not due to the passes already present in GCC-3.3). Luck -richy. -- Richard B. Kreckel <Richard.Kreckel@GiNaC.DE> <http://www.ginac.de/~kreckel/>