madushan1000 wrote
I'm trying to build GNU Octave under Mingw compiler.After building required dependencies I tried to build octave.
When I call make,I think at the final linking stage,at this line
/bin/sh ../libtool --tag=CC --mode=link gcc -g -O2 -pthread -DHAVE_CONFIG_H -mieee-fp -Wall -W -Wshadow -Wformat -Wpointer-arith -Wmissing-prototypes -Wstrict-prototypes -Wwrite-strings -Wcast-align -Wcast-qual -g -O2 -pthread -pthread -g -O2 -pthread -no-undefined -o octave.exe main.o liboctinterp.la ../liboctave/liboctave.la ../libcruft/libcruft.la -liberty -lm -lgdi32 -lws2_32 -luser32 -lkernel32 -lgdi32 -lws2_32 -luser32 -lkernel32
ld.exe grows up to all the free RAM and after exceed memory,gives lots of errors.In those errors some are saying c standers libraries could't find too.I dumped errors to file and the file size is more than 40MBs.
Some of those errors
c:/mingw/bin/../lib/gcc/mingw32/4.7.0/include/c++/ostream:111: undefined reference to `std::cout' c:/mingw/bin/../lib/gcc/mingw32/4.7.0/include/c++/ostream:111: undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&)' ./.libs/liboctinterp.a(liboctinterp_la-octave.o): In function `octave_main': C:\MinGW\sources\octave-3.6.2\src/octave.cc:931: undefined reference to `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&)' C:\MinGW\sources\octave-3.6.2\src/octave.cc:931: undefined reference to `std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()' ./.libs/liboctinterp.a(liboctinterp_la-octave.o): In function `protect_var<bool>': C:\MinGW\sources\octave-3.6.2\src/unwind-prot.h:238: undefined reference to `operator new(unsigned int)' ./.libs/liboctinterp.a(liboctinterp_la-octave.o): In function `~Array': C:\MinGW\sources\octave-3.6.2\src/../liboctave/Array.h:235: undefined reference to `operator delete(void*)' ./.libs/liboctinterp.a(liboctinterp_la-octave.o): In function `maximum_braindamage':