From: cat fa <boo...@gm...> - 2011-12-02 08:35:31
|
I decided to build qt with mingw on my own. But I encounterd an error while building libQtGuid4.a information is as follow: g++ -mthreads -shared -Wl,--out-implib,f:\qt-everywhere-opensource-src-4.7.4\qt- everywhere-opensource-src-4.7.4\lib\libQtGuid4.a -o ..\..\lib\QtGuid4.dll object _script.QtGuid.Debug -L"f:\qt-everywhere-opensource-src-4.7.4\qt-everywhere-ope nsource-src-4.7.4\lib" -L" f:\qt-everywhere-opensource-src-4.7.4\qt-everywhere-op ensource-src-4.7.4\lib" -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lwinspool -lws2_32 -lole32 -luuid -luser32 -ladvapi32 tmp\obj\debug_shared\QtGuid_resourc e_res.o -lmsimg32 -lshell32 -lQtCored4 c:/mingw/bin/../lib/gcc/mingw32/4.6.1/../../../../mingw32/bin/ld.exe: out of mem ory allocating 125660256 bytes collect2: ld returned 1 exit status mingw32-make[2]: *** [..\..\lib\QtGuid4.dll] Error 1 mingw32-make[2]: Leaving directory `F:/qt-everywhere-opensource-src-4.7.4/qt-eve rywhere-opensource-src-4.7.4/src/gui' mingw32-make[1]: *** [debug-all] Error 2 mingw32-make[1]: Leaving directory `F:/qt-everywhere-opensource-src-4.7.4/qt-eve rywhere-opensource-src-4.7.4/src/gui' mingw32-make: *** [sub-gui-make_default-ordered] Error 2 I have 4G ram and closed as many applications as possible. Is this a bug? My mingw included gcc 4.6.1. I’m using windows7 64bit |
From: xunxun <xun...@gm...> - 2011-12-02 08:41:21
|
于 2011/12/2 16:35, cat fa 写道: > |c:/mingw/bin/../lib/gcc/mingw32/4.6.1/../../../../mingw32/bin/ld.exe: > out of mem| > |ory allocating 125660256 bytes| You should add -fno-keep-inline-dllexport to your compiler option and rebuild it. -- Best Regards, xunxun |
From: Ralph E. <ral...@gm...> - 2011-12-02 10:50:51
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Known problem with sources using heavy inlining. Though i havent encountered it with QT though i know wxwidgets is notorious for throwing this unless you use xunxun's suggestion. Ralph -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iQEcBAEBAgAGBQJO2K2FAAoJEIjGvG7Y4HU8chcH/0objNerWpCBVLNLHhuBhtNV iuYnXJwy6RsdseZqSbL+4Eku/TDT/VHCl9UWnglQV7YFGmCa4BacdTSCmtjB1QJH 4baAqf4HlKDT6K0Ps6Q41YmXk5u/GM/8Xpb8aAfqPcEX/ZjrmuOSsw1rezxYfTxO eKnQgk5ibjIGiz8crC7w/M1xdNllGyX80/R5e1SRXx5rCnhYtjOirtFe00ED3ae8 5drqutrmQ7XRh+5FfgNorr0kSZRcJvTSOaBm+3zjQrSn12FdEyoim4gmM/Xb5Hxe 6Hkog5tvCEcqpT3Jb0dGPGYs05SoA+kFdx5C2Np8h6gqyyP8Q6aASaEY38hidAo= =/2tP -----END PGP SIGNATURE----- |
From: Earnie <ea...@us...> - 2011-12-02 13:47:59
|
cat fa wrote: > I decided to build qt with mingw on my own. > But I encounterd an error while building libQtGuid4.a > information is as follow: > > > g++ -mthreads -shared > -Wl,--out-implib,f:\qt-everywhere-opensource-src-4.7.4\qt- > everywhere-opensource-src-4.7.4\lib\libQtGuid4.a -o ..\..\lib\QtGuid4.dll > object > _script.QtGuid.Debug > -L"f:\qt-everywhere-opensource-src-4.7.4\qt-everywhere-ope > nsource-src-4.7.4\lib" -L" > f:\qt-everywhere-opensource-src-4.7.4\qt-everywhere-op > ensource-src-4.7.4\lib" -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm > -lwinspool > -lws2_32 -lole32 -luuid -luser32 -ladvapi32 > tmp\obj\debug_shared\QtGuid_resourc > e_res.o -lmsimg32 -lshell32 -lQtCored4 > Besides the other advice you've been given you need to add -mwindows to your link line. You also need to the specifications of -lgdi32, -lcomdlg32, -luser32, -ladvapi32, and -lshell32; g++ will add these by default in the order it needs them. Adding them to your command line causes these libraries to be searched more than once. Add a -v to the link line to see how g++ has constructed the arguments for ld. -- Earnie -- https://sites.google.com/site/earnieboyd/ |
From: K. F. <kfr...@gm...> - 2011-12-02 23:05:06
|
Hello cat fa! I have seen a similar error building Qt 4.8.0-rc1 with mingw-w64 4.7.0 (a 64-bit g++), but I did get it to work. Some details below. (Note that mingw-w64 is a separate project from mingw and it has its own mailing list.) On Fri, Dec 2, 2011 at 3:35 AM, cat fa <boo...@gm...> wrote: > I decided to build qt with mingw on my own. > But I encounterd an error while building libQtGuid4.a > information is as follow: > > g++ -mthreads -shared > ... > c:/mingw/bin/../lib/gcc/mingw32/4.6.1/../../../../mingw32/bin/ld.exe: out of > memory allocating 125660256 bytes > collect2: ld returned 1 exit status > ... I have seen a similar out-of-memory error building qt > I have 4G ram and closed as many applications as possible. Is this a bug? > > My mingw included gcc 4.6.1. I’m using windows7 64bit I was also running on a 4 GB 64-bit windows 7 machine. As I noted above, I had the problem building with the 64-bit g++ from the mingw-w64 project (a project separate from mingw). It turned out for me that 4 GB was just on the edge of being enough to complete the build. After starting with a clean reboot I went through task manager and killed off anything I thought might not be essential. By doing this I was able to get about 3 GB shown as free by task manager. This was enough for me to complete the build. (It looked like 2 GB free wasn't enough but that 3 GB was.) You've been given some suggestions as to how you might reduce the memory required by ld (the linker). I was also given some similar suggestions. In my case it turned out that I didn't need to use those suggestions to modify the build process -- after freeing up some memory I had enough to run the "out-of-the-box" qt build. (Of course your case -- different compiler / linker, different version of qt -- may be different, and you may have to use some of the options suggested for reducing memory usage.) (Just to note, I have been able to compile various versions of qt with various versions of the 32-bit mingw-project g++ on my 4 GB windows 7 machine.) More details can be found in the original thread in either the mingw-w64 archives: http://sourceforge.net/mailarchive/message.php?msg_id=28251694 or the qt-interest archives: http://lists.qt.nokia.com/pipermail/qt-interest/2011-October/036459.html Good luck. K. Frank |
From: Charles W. <cwi...@us...> - 2011-12-03 00:16:16
|
On 12/2/2011 6:04 PM, K. Frank wrote: > I have seen a similar error building Qt 4.8.0-rc1 with mingw-w64 4.7.0 > (a 64-bit g++), but I did get it to work. Some details below. ld memory usage: because of the way import libraries are handled, it turns out that linking "directly to the DLL" is both much faster and uses much less memory. However, it only works if (a) the DLL exports no DATA symbols, and (b) the "implib" has no externally added "static" members (libcygwin.a and libmsys-1.0.a are the import libs for cygwin-1.dll and msys-1.0.dll respectively, and they are both very odd because they add additional static .o's to the implib). IF you are sure that your dll satisfies these requirements, then you can TRY simply copying /bin/foo.dll onto /lib/libfoo.dll.a. If you need to do this for "curretly built" dlls in your source tree, obviously you'd need to munge up your Makefile.am/Makefile.in to add the new 'cp' rules. Libtool, if used, will make things difficult but it can be done. -- Chuck |
From: Alex B. <bi...@ii...> - 2011-12-02 23:16:49
|
I seem to remember having a similar bug to this when I was trying to build wxWidgets. If you search for this bug on google in relation to wxWidgets you should find it. I seem to remember there being talk about Windows having a 2 GB memory limit for any process and ld.exe would easily surpass this limit trying to link the wxWidgets library. The solution that I found was to use the TDM build of mongw-w64. Hope that is of some help. Bidski On 03/12/11 10:04, K. Frank wrote: > Hello cat fa! > > I have seen a similar error building Qt 4.8.0-rc1 with mingw-w64 4.7.0 > (a 64-bit g++), but I did get it to work. Some details below. > > (Note that mingw-w64 is a separate project from mingw and it has its > own mailing list.) > > On Fri, Dec 2, 2011 at 3:35 AM, cat fa<boo...@gm...> wrote: >> I decided to build qt with mingw on my own. >> But I encounterd an error while building libQtGuid4.a >> information is as follow: >> >> g++ -mthreads -shared >> ... >> c:/mingw/bin/../lib/gcc/mingw32/4.6.1/../../../../mingw32/bin/ld.exe: out of >> memory allocating 125660256 bytes >> collect2: ld returned 1 exit status >> ... > I have seen a similar out-of-memory error building qt > >> I have 4G ram and closed as many applications as possible. Is this a bug? >> >> My mingw included gcc 4.6.1. I’m using windows7 64bit > I was also running on a 4 GB 64-bit windows 7 machine. > > As I noted above, I had the problem building with the 64-bit g++ from > the mingw-w64 project (a project separate from mingw). > > It turned out for me that 4 GB was just on the edge of being enough to > complete the build. After starting with a clean reboot I went through task > manager and killed off anything I thought might not be essential. By doing > this I was able to get about 3 GB shown as free by task manager. This > was enough for me to complete the build. > > (It looked like 2 GB free wasn't enough but that 3 GB was.) > > You've been given some suggestions as to how you might reduce the > memory required by ld (the linker). I was also given some similar > suggestions. In my case it turned out that I didn't need to use those > suggestions to modify the build process -- after freeing up some memory > I had enough to run the "out-of-the-box" qt build. > > (Of course your case -- different compiler / linker, different version of > qt -- may be different, and you may have to use some of the options > suggested for reducing memory usage.) > > (Just to note, I have been able to compile various versions of qt with > various versions of the 32-bit mingw-project g++ on my 4 GB windows > 7 machine.) > > More details can be found in the original thread in either the mingw-w64 > archives: > > http://sourceforge.net/mailarchive/message.php?msg_id=28251694 > > or the qt-interest archives: > > http://lists.qt.nokia.com/pipermail/qt-interest/2011-October/036459.html > > > Good luck. > > > K. Frank > > ------------------------------------------------------------------------------ > All the data continuously generated in your IT infrastructure > contains a definitive record of customers, application performance, > security threats, fraudulent activity, and more. Splunk takes this > data and makes sense of it. IT sense. And common sense. > http://p.sf.net/sfu/splunk-novd2d > _______________________________________________ > MinGW-users mailing list > Min...@li... > > This list observes the Etiquette found at > http://www.mingw.org/Mailing_Lists. > We ask that you be polite and do the same. Disregard for the list etiquette may cause your account to be moderated. > > _______________________________________________ > You may change your MinGW Account Options or unsubscribe at: > https://lists.sourceforge.net/lists/listinfo/mingw-users > Also: mailto:min...@li...?subject=unsubscribe |
From: xunxun <xun...@gm...> - 2011-12-03 10:27:09
|
于 2011/12/3 10:05, cat fa 写道: > Thanks. > I edited the makefile and added that option to g++(see the LFLAGS > line), but I still got the out of memory error. > ####### Compiler, tools and options > > CC = gcc > CXX = g++ > DEFINES = -DQT_SHARED -DQT_THREAD_SUPPORT -DUNICODE > -DQT_LARGEFILE_SUPPORT -DQT_BUILD_GUI_LIB -DQT_NO_USING_NAMESPACE > -DQT_MAKEDLL -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS > -DQT3_SUPPORT -DQT_MOC_COMPAT -DQT_USE_FAST_OPERATOR_PLUS > -DQT_USE_FAST_CONCATENATION -D_USE_MATH_DEFINES -DQT_NO_DIRECTDRAW > -DQT_USE_BUNDLED_LIBPNG -DPNG_NO_ASSEMBLER_CODE -DQT_NO_CUPS > -DQT_NO_LPR -DQT_NO_OPENTYPE -DQT_NO_STYLE_MAC -DQT_NO_STYLE_GTK > -DQT_NO_STYLE_WINDOWSCE -DQT_NO_STYLE_WINDOWSMOBILE -DQT_NO_STYLE_S60 > -DQT_NO_EGL -DQ_INTERNAL_QAPP_SRC -DQT_DLL -DQT_CORE_LIB -DQT_HAVE_MMX > -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 > CFLAGS = -g -Wall $(DEFINES) > CXXFLAGS = -g -Wall -frtti -fexceptions -mthreads $(DEFINES) > INCPATH = -I"..\..\include\QtCore" -I"..\..\include" > -I"..\..\include\QtGui" -I"tmp\rcc\debug_shared" -I"tmp" > -I"..\3rdparty\wintab" -I"image" -I"..\3rdparty\libpng" > -I"..\3rdparty\zlib" -I"..\3rdparty\zlib" -I"..\3rdparty\harfbuzz\src" > -I"dialogs" -I"..\..\include\ActiveQt" -I"tmp\moc\debug_shared" -I"." > -I"..\..\mkspecs\win32-g++" > LINK = g++ > LFLAGS = -fno-keep-inline-dllexport -mthreads -shared > -Wl,--out-implib,d:\Lib\qt-everywhere-opensource-src-4.7.4\lib\libQtGuid4.a > LIBS = -L"d:\Lib\qt-everywhere-opensource-src-4.7.4\lib" > -L"d:\Lib\qt-everywhere-opensource-src-4.7.4\lib" -lgdi32 -lcomdlg32 > -loleaut32 -limm32 -lwinmm -lwinspool -lws2_32 -lole32 -luuid -luser32 > -ladvapi32 tmp\obj\debug_shared\QtGuid_resource_res.o -lmsimg32 > -lshell32 -lQtCored4 > QMAKE = d:\Lib\qt-everywhere-opensource-src-4.7.4\bin\qmake > IDC = d:\Lib\qt-everywhere-opensource-src-4.7.4\bin\idc.exe > IDL = midl > ZIP = zip -r -9 > DEF_FILE = > RES_FILE = tmp\obj\debug_shared\QtGuid_resource_res.o > COPY = copy /y > COPY_FILE = $(COPY) > COPY_DIR = xcopy /s /q /y /i > DEL_FILE = del > DEL_DIR = rmdir > MOVE = move > CHK_DIR_EXISTS= if not exist > MKDIR = mkdir > INSTALL_FILE = $(COPY_FILE) > INSTALL_PROGRAM = $(COPY_FILE) > INSTALL_DIR = $(COPY_DIR) > > 2011/12/2 xunxun <xun...@gm... <mailto:xun...@gm...>> > > 于 2011/12/2 16:35, cat fa 写道: > > |c:/mingw/bin/../lib/gcc/mingw32/4.6.1/../../../../mingw32/bin/ld.exe: > out of mem| > |ory allocating 125660256 bytes| > > You should add -fno-keep-inline-dllexport to your compiler option > and rebuild it. > > -- > Best Regards, > xunxun > > No, -fno-keep-inline-dllexport is a compiler option, not linker option. You should add it to CXXFLAGS -- Best Regards, xunxun |
From: cat fa <boo...@gm...> - 2011-12-03 14:14:44
|
Thank you for your help. If I use the TDM build of mongw-w64, will my QT lib be 32bit version or 64bit version? I need a 32bit version QT lib. 2011/12/3 Alex Biddulph <bi...@ii...> > I seem to remember having a similar bug to this when I was trying to > build wxWidgets. If you search for this bug on google in relation to > wxWidgets you should find it. > > I seem to remember there being talk about Windows having a 2 GB memory > limit for any process and ld.exe would easily surpass this limit trying > to link the wxWidgets library. The solution that I found was to use the > TDM build of mongw-w64. > > Hope that is of some help. > > Bidski > > On 03/12/11 10:04, K. Frank wrote: > > Hello cat fa! > > > > I have seen a similar error building Qt 4.8.0-rc1 with mingw-w64 4.7.0 > > (a 64-bit g++), but I did get it to work. Some details below. > > > > (Note that mingw-w64 is a separate project from mingw and it has its > > own mailing list.) > > > > On Fri, Dec 2, 2011 at 3:35 AM, cat fa<boo...@gm...> > wrote: > >> I decided to build qt with mingw on my own. > >> But I encounterd an error while building libQtGuid4.a > >> information is as follow: > >> > >> g++ -mthreads -shared > >> ... > >> c:/mingw/bin/../lib/gcc/mingw32/4.6.1/../../../../mingw32/bin/ld.exe: > out of > >> memory allocating 125660256 bytes > >> collect2: ld returned 1 exit status > >> ... > > I have seen a similar out-of-memory error building qt > > > >> I have 4G ram and closed as many applications as possible. Is this a > bug? > >> > >> My mingw included gcc 4.6.1. I’m using windows7 64bit > > I was also running on a 4 GB 64-bit windows 7 machine. > > > > As I noted above, I had the problem building with the 64-bit g++ from > > the mingw-w64 project (a project separate from mingw). > > > > It turned out for me that 4 GB was just on the edge of being enough to > > complete the build. After starting with a clean reboot I went through > task > > manager and killed off anything I thought might not be essential. By > doing > > this I was able to get about 3 GB shown as free by task manager. This > > was enough for me to complete the build. > > > > (It looked like 2 GB free wasn't enough but that 3 GB was.) > > > > You've been given some suggestions as to how you might reduce the > > memory required by ld (the linker). I was also given some similar > > suggestions. In my case it turned out that I didn't need to use those > > suggestions to modify the build process -- after freeing up some memory > > I had enough to run the "out-of-the-box" qt build. > > > > (Of course your case -- different compiler / linker, different version of > > qt -- may be different, and you may have to use some of the options > > suggested for reducing memory usage.) > > > > (Just to note, I have been able to compile various versions of qt with > > various versions of the 32-bit mingw-project g++ on my 4 GB windows > > 7 machine.) > > > > More details can be found in the original thread in either the mingw-w64 > > archives: > > > > http://sourceforge.net/mailarchive/message.php?msg_id=28251694 > > > > or the qt-interest archives: > > > > > http://lists.qt.nokia.com/pipermail/qt-interest/2011-October/036459.html > > > > > > Good luck. > > > > > > K. Frank > > > > > ------------------------------------------------------------------------------ > > All the data continuously generated in your IT infrastructure > > contains a definitive record of customers, application performance, > > security threats, fraudulent activity, and more. Splunk takes this > > data and makes sense of it. IT sense. And common sense. > > http://p.sf.net/sfu/splunk-novd2d > > _______________________________________________ > > MinGW-users mailing list > > Min...@li... > > > > This list observes the Etiquette found at > > http://www.mingw.org/Mailing_Lists. > > We ask that you be polite and do the same. Disregard for the list > etiquette may cause your account to be moderated. > > > > _______________________________________________ > > You may change your MinGW Account Options or unsubscribe at: > > https://lists.sourceforge.net/lists/listinfo/mingw-users > > Also: mailto:min...@li... > ?subject=unsubscribe > > > > ------------------------------------------------------------------------------ > All the data continuously generated in your IT infrastructure > contains a definitive record of customers, application performance, > security threats, fraudulent activity, and more. Splunk takes this > data and makes sense of it. IT sense. And common sense. > http://p.sf.net/sfu/splunk-novd2d > _______________________________________________ > MinGW-users mailing list > Min...@li... > > This list observes the Etiquette found at > http://www.mingw.org/Mailing_Lists. > We ask that you be polite and do the same. Disregard for the list > etiquette may cause your account to be moderated. > > _______________________________________________ > You may change your MinGW Account Options or unsubscribe at: > https://lists.sourceforge.net/lists/listinfo/mingw-users > Also: mailto:min...@li...?subject=unsubscribe > |
From: xunxun <xun...@gm...> - 2011-12-03 14:30:32
|
Also add it to CFLAGS But I don't know whether mingw ld was built using "-Wl,--large-address-aware"(the option can make ld cover 3GB memory) (qt debug objs are also very huge, and this can cost ld more memory), so you can build ld yourself using -Wl,--large-address-aware, or you can use my build : https://pcxprj.googlecode.com/files/MinGW64CRT_gcc4.6.3pre_static_win32.7z Other method is that you should build binutils with like "--host=X86_64... target=X86..." 2011/12/3 cat fa <boo...@gm...>: > Sorry. I made a mistake in my previous mail. > > It DID NOT work. > > 在 2011年12月3日 下午10:07,cat fa <boo...@gm...>写道: > >> It did work. This is a part of the content of the makefile. >> >> ####### Compiler, tools and options >> >> CC = gcc >> CXX = g++ >> DEFINES = -DQT_SHARED -DQT_THREAD_SUPPORT -DUNICODE >> -DQT_LARGEFILE_SUPPORT -DQT_BUILD_GUI_LIB -DQT_NO_USING_NAMESPACE >> -DQT_MAKEDLL -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT3_SUPPORT >> -DQT_MOC_COMPAT -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION >> -D_USE_MATH_DEFINES -DQT_NO_DIRECTDRAW -DQT_USE_BUNDLED_LIBPNG >> -DPNG_NO_ASSEMBLER_CODE -DQT_NO_CUPS -DQT_NO_LPR -DQT_NO_OPENTYPE >> -DQT_NO_STYLE_MAC -DQT_NO_STYLE_GTK -DQT_NO_STYLE_WINDOWSCE >> -DQT_NO_STYLE_WINDOWSMOBILE -DQT_NO_STYLE_S60 -DQT_NO_EGL >> -DQ_INTERNAL_QAPP_SRC -DQT_DLL -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW >> -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 >> CFLAGS = -g -Wall $(DEFINES) >> CXXFLAGS = -fno-keep-inline-dllexport -g -Wall -frtti -fexceptions >> -mthreads $(DEFINES) >> >> INCPATH = -I"..\..\include\QtCore" -I"..\..\include" >> -I"..\..\include\QtGui" -I"tmp\rcc\debug_shared" -I"tmp" >> -I"..\3rdparty\wintab" -I"image" -I"..\3rdparty\libpng" -I"..\3rdparty\zlib" >> -I"..\3rdparty\zlib" -I"..\3rdparty\harfbuzz\src" -I"dialogs" >> -I"..\..\include\ActiveQt" -I"tmp\moc\debug_shared" -I"." >> -I"..\..\mkspecs\win32-g++" >> LINK = g++ >> LFLAGS = -mthreads -shared >> -Wl,--out-implib,d:\Lib\qt-everywhere-opensource-src-4.7.4\lib\libQtGuid4.a >> >> LIBS = -L"d:\Lib\qt-everywhere-opensource-src-4.7.4\lib" >> -L"d:\Lib\qt-everywhere-opensource-src-4.7.4\lib" -lgdi32 -lcomdlg32 >> -loleaut32 -limm32 -lwinmm -lwinspool -lws2_32 -lole32 -luuid -luser32 >> -ladvapi32 tmp\obj\debug_shared\QtGuid_resource_res.o -lmsimg32 -lshell32 >> -lQtCored4 >> QMAKE = d:\Lib\qt-everywhere-opensource-src-4.7.4\bin\qmake >> IDC = d:\Lib\qt-everywhere-opensource-src-4.7.4\bin\idc.exe >> IDL = midl >> ZIP = zip -r -9 >> DEF_FILE = >> RES_FILE = tmp\obj\debug_shared\QtGuid_resource_res.o >> COPY = copy /y >> COPY_FILE = $(COPY) >> COPY_DIR = xcopy /s /q /y /i >> DEL_FILE = del >> DEL_DIR = rmdir >> MOVE = move >> CHK_DIR_EXISTS= if not exist >> MKDIR = mkdir >> INSTALL_FILE = $(COPY_FILE) >> INSTALL_PROGRAM = $(COPY_FILE) >> INSTALL_DIR = $(COPY_DIR) >> >> 2011/12/3 xunxun <xun...@gm...> >>> >>> 于 2011/12/3 10:05, cat fa 写道: >>>> >>>> Thanks. >>>> I edited the makefile and added that option to g++(see the LFLAGS >>>> line), but I still got the out of memory error. >>>> ####### Compiler, tools and options >>>> >>>> CC = gcc >>>> CXX = g++ >>>> DEFINES = -DQT_SHARED -DQT_THREAD_SUPPORT -DUNICODE >>>> -DQT_LARGEFILE_SUPPORT -DQT_BUILD_GUI_LIB -DQT_NO_USING_NAMESPACE >>>> -DQT_MAKEDLL -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT3_SUPPORT >>>> -DQT_MOC_COMPAT -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION >>>> -D_USE_MATH_DEFINES -DQT_NO_DIRECTDRAW -DQT_USE_BUNDLED_LIBPNG >>>> -DPNG_NO_ASSEMBLER_CODE -DQT_NO_CUPS -DQT_NO_LPR -DQT_NO_OPENTYPE >>>> -DQT_NO_STYLE_MAC -DQT_NO_STYLE_GTK -DQT_NO_STYLE_WINDOWSCE >>>> -DQT_NO_STYLE_WINDOWSMOBILE -DQT_NO_STYLE_S60 -DQT_NO_EGL >>>> -DQ_INTERNAL_QAPP_SRC -DQT_DLL -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW >>>> -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 >>>> CFLAGS = -g -Wall $(DEFINES) >>>> CXXFLAGS = -g -Wall -frtti -fexceptions -mthreads $(DEFINES) >>>> INCPATH = -I"..\..\include\QtCore" -I"..\..\include" >>>> -I"..\..\include\QtGui" -I"tmp\rcc\debug_shared" -I"tmp" >>>> -I"..\3rdparty\wintab" -I"image" -I"..\3rdparty\libpng" -I"..\3rdparty\zlib" >>>> -I"..\3rdparty\zlib" -I"..\3rdparty\harfbuzz\src" -I"dialogs" >>>> -I"..\..\include\ActiveQt" -I"tmp\moc\debug_shared" -I"." >>>> -I"..\..\mkspecs\win32-g++" >>>> LINK = g++ >>>> LFLAGS = -fno-keep-inline-dllexport -mthreads -shared >>>> -Wl,--out-implib,d:\Lib\qt-everywhere-opensource-src-4.7.4\lib\libQtGuid4.a >>>> LIBS = -L"d:\Lib\qt-everywhere-opensource-src-4.7.4\lib" >>>> -L"d:\Lib\qt-everywhere-opensource-src-4.7.4\lib" -lgdi32 -lcomdlg32 >>>> -loleaut32 -limm32 -lwinmm -lwinspool -lws2_32 -lole32 -luuid -luser32 >>>> -ladvapi32 tmp\obj\debug_shared\QtGuid_resource_res.o -lmsimg32 -lshell32 >>>> -lQtCored4 >>>> QMAKE = d:\Lib\qt-everywhere-opensource-src-4.7.4\bin\qmake >>>> IDC = d:\Lib\qt-everywhere-opensource-src-4.7.4\bin\idc.exe >>>> IDL = midl >>>> ZIP = zip -r -9 >>>> DEF_FILE = >>>> RES_FILE = tmp\obj\debug_shared\QtGuid_resource_res.o >>>> COPY = copy /y >>>> COPY_FILE = $(COPY) >>>> COPY_DIR = xcopy /s /q /y /i >>>> DEL_FILE = del >>>> DEL_DIR = rmdir >>>> MOVE = move >>>> CHK_DIR_EXISTS= if not exist >>>> MKDIR = mkdir >>>> INSTALL_FILE = $(COPY_FILE) >>>> INSTALL_PROGRAM = $(COPY_FILE) >>>> INSTALL_DIR = $(COPY_DIR) >>>> >>>> 2011/12/2 xunxun <xun...@gm... <mailto:xun...@gm...>> >>>> >>>> >>>> 于 2011/12/2 16:35, cat fa 写道: >>>> >>>> >>>> |c:/mingw/bin/../lib/gcc/mingw32/4.6.1/../../../../mingw32/bin/ld.exe: >>>> out of mem| >>>> |ory allocating 125660256 bytes| >>>> >>>> You should add -fno-keep-inline-dllexport to your compiler option >>>> and rebuild it. >>>> >>>> -- Best Regards, >>>> xunxun >>>> >>>> >>> No, -fno-keep-inline-dllexport is a compiler option, not linker option. >>> You should add it to CXXFLAGS >>> >>> >>> -- >>> Best Regards, >>> xunxun >>> >> > -- Best Regards, xunxun |
From: K. F. <kfr...@gm...> - 2011-12-03 17:06:12
|
Hi cat fa! On Sat, Dec 3, 2011 at 9:14 AM, cat fa <boo...@gm...> wrote: > Thank you for your help. > If I use the TDM build of mongw-w64, will my QT lib be 32bit version or > 64bit version? I need a 32bit version QT lib. The mingw-w64 project does offer 32-bit versions the g++, specifically a "native" 32-bit g++ that is native in the sense that g++ is a 32-bit program that produces 32-bit programs. (Note, however, that my success in using mingw-w64 to build qt was with a native 64-bit compiler, i.e., g++ was a 64-bit program that produced 64-bit programs.) I don't know whether tdm offers a 32-bit mingw-w64 build. (They might.) Also, my 64-bit success was with a "rubenvb personal build." I didn't try with tdm. (In the past I have successfully built earlier versions of qt with earlier versions of the tdm build of the native 32-bit mingw (not mingw-w64) g++.) One issue that I don't know the answer to is whether it's important to use a 64-bit ld to link QtGuid4.dll. (Maybe a 64-bit ld can address more memory, so it doesn't run out of memory as soon.) Then the question would become whether mingw-w64 offers a 64-bit / 32-bit "cross" compiler, i.e., a 64-bit version of g++ (with a 64-bit ld) that produces 32-bit code as you need. It would certainly be possible to make a 64-bit / 32-bit cross g++; I just don't know whether the mingw-w64 project has done so. Sorry that I don't have a simple, clear-cut answer to your question, but hopefully some of this information will be of help. Good luck. K. Frank > ... > 2011/12/3 Alex Biddulph <bi...@ii...> >> >> I seem to remember having a similar bug to this when I was trying to >> build wxWidgets. If you search for this bug on google in relation to >> ... >> >> Bidski >> >> On 03/12/11 10:04, K. Frank wrote: >> > Hello cat fa! >> > >> > I have seen a similar error building Qt 4.8.0-rc1 with mingw-w64 4.7.0 >> > (a 64-bit g++), but I did get it to work. Some details below. >> > >> > (Note that mingw-w64 is a separate project from mingw and it has its >> > own mailing list.) >> > >> > On Fri, Dec 2, 2011 at 3:35 AM, cat fa<boo...@gm...> >> > wrote: >> >> I decided to build qt with mingw on my own. >> >> But I encounterd an error while building libQtGuid4.a >> >> ... |
From: Ralph E. <ral...@gm...> - 2011-12-03 17:35:41
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 If you want i supply my own mingw64 builds which differs from TDM only in that they are made for specific architecture (either 32 or 64 bit). if you use both architectures that ofc means you need both versions, but they are somewhat easier to use because you dont need to supply -m32 and other things in CFLAGS/LDFLAGS etc to build a 32 bit executable or dll. TDM defaults to 64 bit and needs those flags to know if you want a 32 bit instead. I recently upgraded my package to gcc-4.6.2 and going to upload it shortly. You can find them here https://sourceforge.net/projects/cbadvanced/files/ . Theres allready two older versions there which use gcc-4.6.1 but i suggest you wait for the new release as some bugs where fixed and the binutils version is newer (old one used a beta of 2.22 new one uses the released 2.22). Ralph -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iQEcBAEBAgAGBQJO2l3qAAoJEIjGvG7Y4HU8ubgH/0pEXVHyRwzJbhSXGCi5BaNk WN2tUR85hD9FlDx7LEs2doG0fmWJYSHfmyqyhGCBPGC0lW194Isz2Mo8iFfkS+sx 1LOH0q8m/Md0K04yHQeWGfFW7/OHxK5h7qoOev6jf9L2nTmfiDu+CMTa0gITwHsT X5vDcKSDfuUgwwQVATkKPk6TIFUFESETsPoQhmyWu030sOWYZneIZVB4HhCv9Luz ILI9WS8WLNd/3hLgNntmw0wuhQ5KLztoeZnTAgh53Eb7weHc4eZFpDLLAvnOURgp xL+VtlkHoxDkqnxkeZAMXufVOYA/6BdJBM+Gdl/FCHVGU44JPONtbHBY6eIUN88= =B/o2 -----END PGP SIGNATURE----- |
From: Alex B. <bi...@ii...> - 2011-12-03 23:40:25
|
It has been a while, but I am pretty sure that the TDM build of mingw-w64 allows the option to generate 32-bit binaries by specifying the '-m32' flag to gcc/g++/ld. Conversely, you can specify '-m64' to force the creation of 64-bit binaries (I think this would be the default for mingw-w64). Bidski On 04/12/11 01:14, cat fa wrote: > Thank you for your help. > If I use the TDM build of mongw-w64, will my QT lib be 32bit version > or 64bit version? I need a 32bit version QT lib. > > 2011/12/3 Alex Biddulph <bi...@ii... <mailto:bi...@ii...>> > > I seem to remember having a similar bug to this when I was trying to > build wxWidgets. If you search for this bug on google in relation to > wxWidgets you should find it. > > I seem to remember there being talk about Windows having a 2 GB memory > limit for any process and ld.exe would easily surpass this limit > trying > to link the wxWidgets library. The solution that I found was to > use the > TDM build of mongw-w64. > > Hope that is of some help. > > Bidski > > On 03/12/11 10:04, K. Frank wrote: > > Hello cat fa! > > > > I have seen a similar error building Qt 4.8.0-rc1 with mingw-w64 > 4.7.0 > > (a 64-bit g++), but I did get it to work. Some details below. > > > > (Note that mingw-w64 is a separate project from mingw and it has its > > own mailing list.) > > > > On Fri, Dec 2, 2011 at 3:35 AM, cat > fa<boo...@gm... > <mailto:boo...@gm...>> wrote: > >> I decided to build qt with mingw on my own. > >> But I encounterd an error while building libQtGuid4.a > >> information is as follow: > >> > >> g++ -mthreads -shared > >> ... > >> > c:/mingw/bin/../lib/gcc/mingw32/4.6.1/../../../../mingw32/bin/ld.exe: > out of > >> memory allocating 125660256 bytes > >> collect2: ld returned 1 exit status > >> ... > > I have seen a similar out-of-memory error building qt > > > >> I have 4G ram and closed as many applications as possible. Is > this a bug? > >> > >> My mingw included gcc 4.6.1. I'm using windows7 64bit > > I was also running on a 4 GB 64-bit windows 7 machine. > > > > As I noted above, I had the problem building with the 64-bit g++ > from > > the mingw-w64 project (a project separate from mingw). > > > > It turned out for me that 4 GB was just on the edge of being > enough to > > complete the build. After starting with a clean reboot I went > through task > > manager and killed off anything I thought might not be > essential. By doing > > this I was able to get about 3 GB shown as free by task manager. > This > > was enough for me to complete the build. > > > > (It looked like 2 GB free wasn't enough but that 3 GB was.) > > > > You've been given some suggestions as to how you might reduce the > > memory required by ld (the linker). I was also given some similar > > suggestions. In my case it turned out that I didn't need to use > those > > suggestions to modify the build process -- after freeing up some > memory > > I had enough to run the "out-of-the-box" qt build. > > > > (Of course your case -- different compiler / linker, different > version of > > qt -- may be different, and you may have to use some of the options > > suggested for reducing memory usage.) > > > > (Just to note, I have been able to compile various versions of > qt with > > various versions of the 32-bit mingw-project g++ on my 4 GB windows > > 7 machine.) > > > > More details can be found in the original thread in either the > mingw-w64 > > archives: > > > > http://sourceforge.net/mailarchive/message.php?msg_id=28251694 > > > > or the qt-interest archives: > > > > > http://lists.qt.nokia.com/pipermail/qt-interest/2011-October/036459.html > > > > > > Good luck. > > > > > > K. Frank > > > > > ------------------------------------------------------------------------------ > > All the data continuously generated in your IT infrastructure > > contains a definitive record of customers, application performance, > > security threats, fraudulent activity, and more. Splunk takes this > > data and makes sense of it. IT sense. And common sense. > > http://p.sf.net/sfu/splunk-novd2d > > _______________________________________________ > > MinGW-users mailing list > > Min...@li... > <mailto:Min...@li...> > > > > This list observes the Etiquette found at > > http://www.mingw.org/Mailing_Lists. > > We ask that you be polite and do the same. Disregard for the > list etiquette may cause your account to be moderated. > > > > _______________________________________________ > > You may change your MinGW Account Options or unsubscribe at: > > https://lists.sourceforge.net/lists/listinfo/mingw-users > > Also: mailto:min...@li... > <mailto:min...@li...>?subject=unsubscribe > > > ------------------------------------------------------------------------------ > All the data continuously generated in your IT infrastructure > contains a definitive record of customers, application performance, > security threats, fraudulent activity, and more. Splunk takes this > data and makes sense of it. IT sense. And common sense. > http://p.sf.net/sfu/splunk-novd2d > _______________________________________________ > MinGW-users mailing list > Min...@li... > <mailto:Min...@li...> > > This list observes the Etiquette found at > http://www.mingw.org/Mailing_Lists. > We ask that you be polite and do the same. Disregard for the list > etiquette may cause your account to be moderated. > > _______________________________________________ > You may change your MinGW Account Options or unsubscribe at: > https://lists.sourceforge.net/lists/listinfo/mingw-users > Also: mailto:min...@li... > <mailto:min...@li...>?subject=unsubscribe > > > > > ------------------------------------------------------------------------------ > All the data continuously generated in your IT infrastructure > contains a definitive record of customers, application performance, > security threats, fraudulent activity, and more. Splunk takes this > data and makes sense of it. IT sense. And common sense. > http://p.sf.net/sfu/splunk-novd2d > > > _______________________________________________ > MinGW-users mailing list > Min...@li... > > This list observes the Etiquette found at > http://www.mingw.org/Mailing_Lists. > We ask that you be polite and do the same. Disregard for the list etiquette may cause your account to be moderated. > > _______________________________________________ > You may change your MinGW Account Options or unsubscribe at: > https://lists.sourceforge.net/lists/listinfo/mingw-users > Also: mailto:min...@li...?subject=unsubscribe |
From: cat fa <boo...@gm...> - 2011-12-04 04:07:20
|
I changed to a TMD Mingw32 complier. This time everything went well except one that gcc 4.6 and later didn't recognize the -static-libstdc++ option. So I removed this option from the makefile. After that I SUCCESSFULLY built the whole project. I did't use a 64bit TMD Mingw, the 32bit TMD Mingw works well. At last, thank you all my friends. 2011/12/4 Alex Biddulph <bi...@ii...> > It has been a while, but I am pretty sure that the TDM build of mingw-w64 > allows the option to generate 32-bit binaries by specifying the '-m32' flag > to gcc/g++/ld. Conversely, you can specify '-m64' to force the creation of > 64-bit binaries (I think this would be the default for mingw-w64). > > Bidski > > > On 04/12/11 01:14, cat fa wrote: > > Thank you for your help. > If I use the TDM build of mongw-w64, will my QT lib be 32bit version or > 64bit version? I need a 32bit version QT lib. > > 2011/12/3 Alex Biddulph <bi...@ii...> > >> I seem to remember having a similar bug to this when I was trying to >> build wxWidgets. If you search for this bug on google in relation to >> wxWidgets you should find it. >> >> I seem to remember there being talk about Windows having a 2 GB memory >> limit for any process and ld.exe would easily surpass this limit trying >> to link the wxWidgets library. The solution that I found was to use the >> TDM build of mongw-w64. >> >> Hope that is of some help. >> >> Bidski >> >> On 03/12/11 10:04, K. Frank wrote: >> > Hello cat fa! >> > >> > I have seen a similar error building Qt 4.8.0-rc1 with mingw-w64 4.7.0 >> > (a 64-bit g++), but I did get it to work. Some details below. >> > >> > (Note that mingw-w64 is a separate project from mingw and it has its >> > own mailing list.) >> > >> > On Fri, Dec 2, 2011 at 3:35 AM, cat fa<boo...@gm...> >> wrote: >> >> I decided to build qt with mingw on my own. >> >> But I encounterd an error while building libQtGuid4.a >> >> information is as follow: >> >> >> >> g++ -mthreads -shared >> >> ... >> >> c:/mingw/bin/../lib/gcc/mingw32/4.6.1/../../../../mingw32/bin/ld.exe: >> out of >> >> memory allocating 125660256 bytes >> >> collect2: ld returned 1 exit status >> >> ... >> > I have seen a similar out-of-memory error building qt >> > >> >> I have 4G ram and closed as many applications as possible. Is this a >> bug? >> >> >> >> My mingw included gcc 4.6.1. I’m using windows7 64bit >> > I was also running on a 4 GB 64-bit windows 7 machine. >> > >> > As I noted above, I had the problem building with the 64-bit g++ from >> > the mingw-w64 project (a project separate from mingw). >> > >> > It turned out for me that 4 GB was just on the edge of being enough to >> > complete the build. After starting with a clean reboot I went through >> task >> > manager and killed off anything I thought might not be essential. By >> doing >> > this I was able to get about 3 GB shown as free by task manager. This >> > was enough for me to complete the build. >> > >> > (It looked like 2 GB free wasn't enough but that 3 GB was.) >> > >> > You've been given some suggestions as to how you might reduce the >> > memory required by ld (the linker). I was also given some similar >> > suggestions. In my case it turned out that I didn't need to use those >> > suggestions to modify the build process -- after freeing up some memory >> > I had enough to run the "out-of-the-box" qt build. >> > >> > (Of course your case -- different compiler / linker, different version >> of >> > qt -- may be different, and you may have to use some of the options >> > suggested for reducing memory usage.) >> > >> > (Just to note, I have been able to compile various versions of qt with >> > various versions of the 32-bit mingw-project g++ on my 4 GB windows >> > 7 machine.) >> > >> > More details can be found in the original thread in either the mingw-w64 >> > archives: >> > >> > http://sourceforge.net/mailarchive/message.php?msg_id=28251694 >> > >> > or the qt-interest archives: >> > >> > >> http://lists.qt.nokia.com/pipermail/qt-interest/2011-October/036459.html >> > >> > >> > Good luck. >> > >> > >> > K. Frank >> > >> > >> ------------------------------------------------------------------------------ >> > All the data continuously generated in your IT infrastructure >> > contains a definitive record of customers, application performance, >> > security threats, fraudulent activity, and more. Splunk takes this >> > data and makes sense of it. IT sense. And common sense. >> > http://p.sf.net/sfu/splunk-novd2d >> > _______________________________________________ >> > MinGW-users mailing list >> > Min...@li... >> > >> > This list observes the Etiquette found at >> > http://www.mingw.org/Mailing_Lists. >> > We ask that you be polite and do the same. Disregard for the list >> etiquette may cause your account to be moderated. >> > >> > _______________________________________________ >> > You may change your MinGW Account Options or unsubscribe at: >> > https://lists.sourceforge.net/lists/listinfo/mingw-users >> > Also: mailto:min...@li... >> ?subject=unsubscribe >> >> >> >> ------------------------------------------------------------------------------ >> All the data continuously generated in your IT infrastructure >> contains a definitive record of customers, application performance, >> security threats, fraudulent activity, and more. Splunk takes this >> data and makes sense of it. IT sense. And common sense. >> http://p.sf.net/sfu/splunk-novd2d >> _______________________________________________ >> MinGW-users mailing list >> Min...@li... >> >> This list observes the Etiquette found at >> http://www.mingw.org/Mailing_Lists. >> We ask that you be polite and do the same. Disregard for the list >> etiquette may cause your account to be moderated. >> >> _______________________________________________ >> You may change your MinGW Account Options or unsubscribe at: >> https://lists.sourceforge.net/lists/listinfo/mingw-users >> Also: mailto:min...@li... >> ?subject=unsubscribe >> > > > > ------------------------------------------------------------------------------ > All the data continuously generated in your IT infrastructure > contains a definitive record of customers, application performance, > security threats, fraudulent activity, and more. Splunk takes this > data and makes sense of it. IT sense. And common sense.http://p.sf.net/sfu/splunk-novd2d > > > > _______________________________________________ > MinGW-users mailing lis...@li... > > This list observes the Etiquette found at http://www.mingw.org/Mailing_Lists. > We ask that you be polite and do the same. Disregard for the list etiquette may cause your account to be moderated. > > _______________________________________________ > You may change your MinGW Account Options or unsubscribe at:https://lists.sourceforge.net/lists/listinfo/mingw-users > Also: mailto:min...@li...?subject=unsubscribe <min...@li...?subject=unsubscribe> > > > > > ------------------------------------------------------------------------------ > All the data continuously generated in your IT infrastructure > contains a definitive record of customers, application performance, > security threats, fraudulent activity, and more. Splunk takes this > data and makes sense of it. IT sense. And common sense. > http://p.sf.net/sfu/splunk-novd2d > _______________________________________________ > MinGW-users mailing list > Min...@li... > > This list observes the Etiquette found at > http://www.mingw.org/Mailing_Lists. > We ask that you be polite and do the same. Disregard for the list > etiquette may cause your account to be moderated. > > _______________________________________________ > You may change your MinGW Account Options or unsubscribe at: > https://lists.sourceforge.net/lists/listinfo/mingw-users > Also: mailto:min...@li...?subject=unsubscribe > |
From: Earnie <ea...@us...> - 2011-12-05 12:58:19
|
What's with all the top posting and non-trimming? Please do not top post in this list and please trim the unnecessary text. Alex Biddulph wrote: > It has been a while, but I am pretty sure that the TDM build of > mingw-w64 allows the option to generate 32-bit binaries by specifying > the '-m32' flag to gcc/g++/ld. Conversely, you can specify '-m64' to > force the creation of 64-bit binaries (I think this would be the default > for mingw-w64). > -m32/-m64 etc isn't specific to TDM or any other build. Earnie Boyd@xxxxxx ~ $ gcc -v --help 2>&1 | grep m32 -m32 Generate 32bit i386 code Earnie Boyd@xxxxxx ~ $ gcc -v --help 2>&1 | grep m64 -m64 Generate 64bit x86-64 code Earnie Boyd@xxxxxx ~ $ gcc -v Using built-in specs. COLLECT_GCC=c:\opt\MinGWalto\mingw\bin\gcc.exe COLLECT_LTO_WRAPPER=c:/opt/mingwalto/mingw/bin/../libexec/gcc/mingw32/4.6.1/lto-wrapper.exe Target: mingw32 Configured with: ../gcc-4.6.1/configure --enable-languages=c,c++,fortran,objc,obj-c++ --disable-sjlj-exceptions --with-dwarf2 --enable-shared --enable-libgomp --disable-win32-registry --enable-libstdcxx-debug --enable-version-specific-runtime-libs --build=mingw32 --prefix=/mingw Thread model: win32 gcc version 4.6.1 (GCC) -- Earnie -- https://sites.google.com/site/earnieboyd/ |