From: niXman <i.n...@au...> - 2014-05-31 16:08:28
|
Erika Butler 2014-05-30 22:30: Hi, Project joined MinGW-W64 project, so please repost to min...@li... ML. Thanks. > This is both with and without using the multithreading options on > mingw-make32. > > It is with this call executed from the build\msw subdirectory of the > wxWidgets installation folder: > > mingw32-make -f makefile.gcc -j4 MONOLITHIC=0 SHELL=CMD.exe BUILD=debug > UNICODE=1 SHARED=0 2>deberr.txt > > Though BUILD=release compiles and links all the libraries just fine, > BUILD=debug (like above) produces a linker error: > > ar: gcc_mswud\corelib_ipwin.o: No such file or directory > mingw32-make: *** [..\..\lib\gcc_lib\libwxmsw30ud_core.a] Error 1 > mingw32-make: *** Waiting for unfinished jobs.... > > This is most bizarre, because makefile.gcc does not list an object file > named "corelib_ipwin.o" to be linked into the wxmswu_core library. It > does, however, list an object file named "corelib_tipwin.o" to be > linked > into the wxmsu_core library and that file does exist in both the > Release > and Debug compiles. For some reason, in BUILD=release, the 't' is not > removed, but in BUILD=debug, the 't' is removed, producing an invalid > filename. > > (Note, this also happens when multithreading in mingw32-make is not > used.) > > Could this be an issue with mingw32_make or the linker? > > Reproducing the error: > > In Windows 8.1 x64, install mingw-builds 64-bit (either seh or sjlj in > posix) and set the PATH variable to its bin folder. Install wxWidgets > 3.0. In "[wxWidgets installation dir]\lib", if it does not already > exist, > create a sub-folder "gcc_lib"; in that sub-folder create the sub-folder > "mswud" and in that sub-folder create "wx" ("[wxWidgets installation > dir]\lib\gcc_lib\mswud\wx]" is hereafter called "[dest]"). Copy the > header > file "[wxWidgets installation dir]\include\wx\msw\setup.h" to "[dest]". > > Open up the Command Prompt and CD to "[wxWidgets installation > dir]\build\msw" and then run the following command: > > mingw32-make -f makefile.gcc -j4 MONOLITHIC=0 SHELL=CMD.exe BUILD=debug > UNICODE=1 SHARED=0 2>deberr.txt > > Open up deberr.txt to see the error message (along with some warnings), > which for me is: > > ar: gcc_mswud\corelib_ipwin.o: No such file or directory > mingw32-make: *** [..\..\lib\gcc_lib\libwxmsw30ud_core.a] Error 1 > mingw32-make: *** Waiting for unfinished jobs.... > > To do the release build, create in "[wxWidgets installation > dir]\lib\gcc_lib" sub-folder and in that sub-folder create the path > "mswu\wx" and into "[wxWidgets installation dir]\lib\gcc_lib\mswu\wx" > copy > the same setup.h file as you had in "[dest]". > > Then open up the command prompt and CD to "[wxWidgets installation > dir]\build\msw" and then run the following command: > > mingw32-make -f makefile.gcc -j4 MONOLITHIC=0 SHELL=CMD.exe > BUILD=release > UNICODE=1 SHARED=0 2>relerr.txt > > This build was successful for me and relerr.txt should only contain > warnings. > > Is anyone else able to reproduce this, either partially or wholly, and > if > so what are the results? Is there an issue with mingw32-make or the > linker > that is causing this problem or is it perhaps the way the makefile was > built? > > Anyway, I love your implementation's support of GCC 4.8.1 and therefore > all > of C++11. Keep up the good work! > > Thank you, > Erika Butler -- Regards, niXman ___________________________________________________ Dual-target(32 & 64-bit) MinGW-W64 compilers for 32 and 64-bit Windows: http://sourceforge.net/projects/mingw-w64/ ___________________________________________________ Another online IDE: http://liveworkspace.org/ |