Re: [Mingw-w64-public] there is lib and lib64, how target 32-bit/64-bit?
for 32-bit compiles only using 64-bit compiler (using -m32) I get mingw32/bin/ld.exe: i386:x86-64 architecture of input file `32\diskgeometry.manifest.res' is incompatible with i386 output collect2.exe: error: ld returned 1 exit status Q: - is there something special I need to do for -l switch to specify 32-bit libs? - do I use the same runtime DLLs like libgcc_s_sjlj-1.dll and libstdc++-6.dll? -which of these 4.9.0 experimental posix compilers is hosted on x64 (they both execute)? - does posix mean the posix subsystem of windows be installed for it to work (already did, but need to know for customers) or does it mean posix threads? whatever the case, I can't seem to build a 32-bit program (I put in a manifest, windows rejects the executable because the processorArchitecture=X86 in the manifest doesn't match the x86-64 binary). and I do run into 32-bit machines out there. here is the manifest. 32\diskgeometry.exe.manifest: = ?xml version=1.0 encoding=UTF-8 standalone=yes? assembly xmlns=urn:schemas-microsoft-com:asm.v1 manifestVersion=1.0 assemblyIdentity name=JimMichaels.DiskGeometry.DiskGeometry type=win32 version=1.16.0.80 processorArchitecture=X86 publicKeyToken= language=* / compatibility xmlns=urn:schemas-microsoft-com:compatibility.v1 application !-- The ID below indicates application support for Windows Vista -- supportedOS Id={e2011457-1546-43c5-a5fe-008deee3d3f0}/ !-- The ID below indicates application support for Windows 7 -- supportedOS Id={35138b9a-5d96-4fbd-8e2d-a2440225f93a}/ !-- The ID below indicates application support for Windows 8 -- supportedOS Id={4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}/ !-- The ID below indicates application support for Windows 8.1 -- supportedOS Id={1f676c76-80e1-4239-95bb-83d0f6d0da78}/ /application /compatibility descriptiondiskgeom - show disk geometry/description -- Identify the application security requirements. -- ms_asmv2:trustInfo xmlns:ms_asmv2=urn:schemas-microsoft-com:asm.v2 ms_asmv2:security ms_asmv2:requestedPrivileges ms_asmv2:requestedExecutionLevel level=asInvoker uiAccess=false /ms_asmv2:requestedExecutionLevel /ms_asmv2:requestedPrivileges /ms_asmv2:security /ms_asmv2:trustInfo /assembly From: Ivan Garramona heavenandhell...@gmail.com To: mingw-w64-public@lists.sourceforge.net Sent: Friday, January 17, 2014 5:49 PM Subject: Re: [Mingw-w64-public] there is lib and lib64,how target 32-bit/64-bit? You have to use the flags -m32 or -m64 to specify the target. The i686 will target 32bit by default, the same happens with the x86_64, it defaults to 64bit. 2014/1/17 Jim Michaels jmich...@yahoo.com there is lib and lib64, how do I target specific cpu type (32-bit/64-bit)? am using i686-4.9.0-snapshot-20131119-rev205009-posix-sjlj-rt_v4 x86_64-4.9.0-snapshot-20131119-rev205009-posix-sjlj-rt_v4 which of these compilers is hosted on x64? does posix mean the posix subsystem of windows be installed for it to work (already did, but need to know for customers)? in the 64-bit compiler, it has lib and lib32. in the 32-bit compiler, it has lib and lib64.so now curious what this all now means. thanks. - Jim Michaels jmich...@yahoo.com j...@renewalcomputerservices.com http://RenewalComputerServices.com http://JesusnJim.com (my personal site, has software) --- IEC Units: Computer RAM SSD measurements, microsoft disk size measurements (note: they will say GB or MB or KB or TB when it is IEC Units!): [KiB] [MiB] [GiB] [TiB] [2^10B=1,024^1B=1KiB] [2^20B=1,024^2B=1,048,576B=1MiB] [2^30B=1,024^3B=1,073,741,824B=1GiB] [2^40B=1,024^4B=1,099,511,627,776B=1TiB] [2^50B=1,024^5B=1,125,899,906,842,624B=1PiB] SI Units: Hard disk industry disk size measurements: [kB] [MB] [GB] [TB] [10^3B=1,000B=1kB] [10^6B=1,000,000B=1MB] [10^9B=1,000,000,000B=1GB] [10^12B=1,000,000,000,000B=1TB] [10^15B=1,000,000,000,000,000B=1PB] -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical
Re: [Mingw-w64-public] there is lib and lib64, how target 32-bit/64-bit?
2014/1/18 Jim Michaels jmich...@yahoo.com for 32-bit compiles only using 64-bit compiler (using -m32) I get mingw32/bin/ld.exe: i386:x86-64 architecture of input file `32\diskgeometry.manifest.res' is incompatible with i386 output collect2.exe: error: ld returned 1 exit status Q: - is there something special I need to do for -l switch to specify 32-bit libs? - do I use the same runtime DLLs like libgcc_s_sjlj-1.dll and libstdc++-6.dll? - which of these 4.9.0 experimental posix compilers is hosted on x64 (they both execute)? - does posix mean the posix subsystem of windows be installed for it to work (already did, but need to know for customers) or does it mean posix threads? No, this only means libgcc and libstdc++ are built using pthreads instead of the basic Win32 API implementation present in the code. This is required to enable C++11 thread, future, and mutex in libstdc++. You may have to redistribute the winpthreads DLL alongside the libgcc DLL. I don't know about the other things. Cheers, Ruben whatever the case, I can't seem to build a 32-bit program (I put in a manifest, windows rejects the executable because the processorArchitecture=X86 in the manifest doesn't match the x86-64 binary). and I do run into 32-bit machines out there. here is the manifest. 32\diskgeometry.exe.manifest: = ?xml version=1.0 encoding=UTF-8 standalone=yes? assembly xmlns=urn:schemas-microsoft-com:asm.v1 manifestVersion=1.0 assemblyIdentity name=JimMichaels.DiskGeometry.DiskGeometry type=win32 version=1.16.0.80 processorArchitecture=X86 publicKeyToken= language=* / compatibility xmlns=urn:schemas-microsoft-com:compatibility.v1 application !-- The ID below indicates application support for Windows Vista -- supportedOS Id={e2011457-1546-43c5-a5fe-008deee3d3f0}/ !-- The ID below indicates application support for Windows 7 -- supportedOS Id={35138b9a-5d96-4fbd-8e2d-a2440225f93a}/ !-- The ID below indicates application support for Windows 8 -- supportedOS Id={4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}/ !-- The ID below indicates application support for Windows 8.1 -- supportedOS Id={1f676c76-80e1-4239-95bb-83d0f6d0da78}/ /application /compatibility descriptiondiskgeom - show disk geometry/description -- Identify the application security requirements. -- ms_asmv2:trustInfo xmlns:ms_asmv2=urn:schemas-microsoft-com:asm.v2 ms_asmv2:security ms_asmv2:requestedPrivileges ms_asmv2:requestedExecutionLevel level=asInvoker uiAccess=false /ms_asmv2:requestedExecutionLevel /ms_asmv2:requestedPrivileges /ms_asmv2:security /ms_asmv2:trustInfo /assembly -- *From:* Ivan Garramona heavenandhell...@gmail.com *To:* mingw-w64-public@lists.sourceforge.net *Sent:* Friday, January 17, 2014 5:49 PM *Subject:* Re: [Mingw-w64-public] there is lib and lib64, how target 32-bit/64-bit? You have to use the flags -m32 or -m64 to specify the target. The i686 will target 32bit by default, the same happens with the x86_64, it defaults to 64bit. 2014/1/17 Jim Michaels jmich...@yahoo.com there is lib and lib64, how do I target specific cpu type (32-bit/64-bit)? am using i686-4.9.0-snapshot-20131119-rev205009-posix-sjlj-rt_v4 x86_64-4.9.0-snapshot-20131119-rev205009-posix-sjlj-rt_v4 which of these compilers is hosted on x64? does posix mean the posix subsystem of windows be installed for it to work (already did, but need to know for customers)? in the 64-bit compiler, it has lib and lib32. in the 32-bit compiler, it has lib and lib64. so now curious what this all now means. thanks. - Jim Michaels jmich...@yahoo.com jmich...@yahoo.com j...@renewalcomputerservices.com http:// http://renewalcomputerservices.com/RenewalComputerServices.comhttp://renewalcomputerservices.com/ http://JesusnJim.com http://jesusnjim.com/ (my personal site, has software) --- IEC Units: Computer RAM SSD measurements, microsoft disk size measurements (note: they will say GB or MB or KB or TB when it is IEC Units!): [KiB] [MiB] [GiB] [TiB] [2^10B=1,024^1B=1KiB] [2^20B=1,024^2B=1,048,576B=1MiB] [2^30B=1,024^3B=1,073,741,824B=1GiB] [2^40B=1,024^4B=1,099,511,627,776B=1TiB] [2^50B=1,024^5B=1,125,899,906,842,624B=1PiB] SI Units: Hard disk industry disk size measurements: [kB] [MB] [GB] [TB] [10^3B=1,000B=1kB] [10^6B=1,000,000B=1MB] [10^9B=1,000,000,000B=1GB] [10^12B=1,000,000,000,000B=1TB] [10^15B=1,000,000,000,000,000B=1PB] -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For
Re: [Mingw-w64-public] mingw-w64 and gcc plugins
I guess I misunderstood. I have used plugins in *applications* developed with gcc in mingw-w64. I really haven't looked into plugins used directly by gcc. Of that I am ignorant. sorry. 2014/1/16 xunxun xunxun1...@gmail.com 于 2014/1/17 星期五 6:45, Edscott Wilson 写道: I've used plugins fairly recently. No problem porting from Linux to Windows. Just compile the plugin as a dll and make sure you avoid C++ name mangling. You mean now we can build mingw(64) gcc with --enable-plugin smoothly? -- Best Regards, xunxun -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public -- Dr. Edscott Wilson Garcia Applied Mathematics and Computing Mexican Petroleum Institute -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] [PATCH] Add wmilib for use with DDK
This patch never got applied. Could someone please apply? Thanks Lars On Mon, Dec 30, 2013 at 9:54 AM, Kai Tietz ktiet...@googlemail.com wrote: Patch is ok for trunk. Thanks, Kai 2013/12/30 Lars Munch l...@segv.dk: This patch adds wmilib for use with the DDK wmilib.h header. The .def files where generated by running gendef on wmilib.sys from Windows 7, but wmilib.sys has been there since Win2k. --- mingw-w64-crt/Makefile.am | 3 ++- mingw-w64-crt/Makefile.in | 6 -- mingw-w64-crt/lib32/Makefile.am | 1 + mingw-w64-crt/lib32/wmilib.def | 10 ++ mingw-w64-crt/lib64/wmilib.def | 10 ++ 5 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 mingw-w64-crt/lib32/wmilib.def create mode 100644 mingw-w64-crt/lib64/wmilib.def diff --git a/mingw-w64-crt/Makefile.am b/mingw-w64-crt/Makefile.am index a2f89a6..4f8676a 100644 --- a/mingw-w64-crt/Makefile.am +++ b/mingw-w64-crt/Makefile.am @@ -949,7 +949,8 @@ lib64_DATA = \ lib64/libwiashext.a lib64/libwin32spl.a lib64/libwinfax.a lib64/libwininet.alib64/libwinipsec.a \ lib64/libwinmm.a lib64/libwinrnr.a lib64/libwinscard.a lib64/libwinspool.a lib64/libwinsrv.a\ lib64/libwinsta.a lib64/libwintrust.a lib64/libwkssvc.a lib64/libwldap32.alib64/libwlnotify.a \ - lib64/libwlstore.alib64/libwmi2xml.alib64/libwmiaprpl.a lib64/libwmi.alib64/libwmiprop.a \ + lib64/libwlstore.alib64/libwmi2xml.alib64/libwmiaprpl.a lib64/libwmi.alib64/libwmilib.a\ + lib64/libwmiprop.a\ lib64/libwmisvc.a lib64/libwow64cpu.a lib64/libwow64.a lib64/libwow64mib.a lib64/libwow64win.a \ lib64/libwpd_ci.a lib64/libws2help.alib64/libwscsvc.a lib64/libwshatm.a lib64/libwshbth.a\ lib64/libwshcon.a lib64/libwsock32.alib64/libzoneoc.a lib64/libnormaliz.a \ diff --git a/mingw-w64-crt/Makefile.in b/mingw-w64-crt/Makefile.in index 14e2777..de0014d 100644 --- a/mingw-w64-crt/Makefile.in +++ b/mingw-w64-crt/Makefile.in @@ -4229,7 +4229,8 @@ winrtlibs = \ @LIB32_TRUE@ lib32/libwinstrm.a lib32/libwinusb.a \ @LIB32_TRUE@ lib32/libwkscli.a lib32/libwlanapi.a \ @LIB32_TRUE@ lib32/libwlanui.a lib32/libwlanutil.a \ -@LIB32_TRUE@ lib32/libwldap32.a lib32/libwow32.a \ +@LIB32_TRUE@ lib32/libwldap32.a lib32/libwmilib.a \ +@LIB32_TRUE@ lib32/libwow32.a \ @LIB32_TRUE@ lib32/libwsdapi.a lib32/libwsnmp32.a \ @LIB32_TRUE@ lib32/libwsock32.a lib32/libwst.a \ @LIB32_TRUE@ lib32/libwtsapi32.a lib32/libx3daudio1_2.a \ @@ -4881,7 +4882,8 @@ winrtlibs = \ @LIB64_TRUE@ lib64/libwkssvc.a lib64/libwldap32.a \ @LIB64_TRUE@ lib64/libwlnotify.a lib64/libwlstore.a \ @LIB64_TRUE@ lib64/libwmi2xml.a lib64/libwmiaprpl.a \ -@LIB64_TRUE@ lib64/libwmi.a lib64/libwmiprop.a \ +@LIB64_TRUE@ lib64/libwmi.a lib64/libwmilib.a \ +@LIB64_TRUE@ lib64/libwmiprop.a \ @LIB64_TRUE@ lib64/libwmisvc.a lib64/libwow64cpu.a \ @LIB64_TRUE@ lib64/libwow64.a lib64/libwow64mib.a \ @LIB64_TRUE@ lib64/libwow64win.a lib64/libwpd_ci.a \ diff --git a/mingw-w64-crt/lib32/Makefile.am b/mingw-w64-crt/lib32/Makefile.am index d050c1d..191b0ae 100644 --- a/mingw-w64-crt/lib32/Makefile.am +++ b/mingw-w64-crt/lib32/Makefile.am @@ -294,6 +294,7 @@ lib32_DATA += %reldir%/libwlanapi.a lib32_DATA += %reldir%/libwlanui.a lib32_DATA += %reldir%/libwlanutil.a lib32_DATA += %reldir%/libwldap32.a +lib32_DATA += %reldir%/libwmilib.a lib32_DATA += %reldir%/libwow32.a #lib32_DATA += %reldir%/libws2_32.a # Handled by custom rule lib32_DATA += %reldir%/libwsdapi.a diff --git a/mingw-w64-crt/lib32/wmilib.def b/mingw-w64-crt/lib32/wmilib.def new file mode 100644 index 000..06d2d1b --- /dev/null +++ b/mingw-w64-crt/lib32/wmilib.def @@ -0,0 +1,10 @@ +; +; Definition file of WMILIB.SYS +; Automatic generated by gendef +; written by Kai Tietz 2008 +; +LIBRARY WMILIB.SYS +EXPORTS +WmiCompleteRequest@20 +WmiFireEvent@20 +WmiSystemControl@16 diff --git a/mingw-w64-crt/lib64/wmilib.def b/mingw-w64-crt/lib64/wmilib.def new file mode 100644 index 000..edb07a4 --- /dev/null +++ b/mingw-w64-crt/lib64/wmilib.def @@ -0,0 +1,10 @@ +; +; Definition file of WMILIB.SYS +; Automatic generated by gendef +; written by Kai Tietz 2008 +; +LIBRARY WMILIB.SYS +EXPORTS +WmiCompleteRequest +WmiFireEvent +WmiSystemControl -- 1.8.5.2 -- Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
Re: [Mingw-w64-public] there is lib and lib64, how target 32-bit/64-bit?
hmm. there seems to be a problem with 64-bit windres always making 64-bit .res files regardless of -m32, and windows 7 is complaining. there are no windres switches to change this. From: Ruben Van Boxem vanboxem.ru...@gmail.com To: mingw-w64-public@lists.sourceforge.net mingw-w64-public@lists.sourceforge.net Sent: Saturday, January 18, 2014 5:42 AM Subject: Re: [Mingw-w64-public] there is lib and lib64,how target 32-bit/64-bit? 2014/1/18 Jim Michaels jmich...@yahoo.com for 32-bit compiles only using 64-bit compiler (using -m32) I get mingw32/bin/ld.exe: i386:x86-64 architecture of input file `32\diskgeometry.manifest.res' is incompatible with i386 output collect2.exe: error: ld returned 1 exit status Q: - is there something special I need to do for -l switch to specify 32-bit libs? - do I use the same runtime DLLs like libgcc_s_sjlj-1.dll and libstdc++-6.dll? -which of these 4.9.0 experimental posix compilers is hosted on x64 (they both execute)? - does posix mean the posix subsystem of windows be installed for it to work (already did, but need to know for customers) or does it mean posix threads? No, this only means libgcc and libstdc++ are built using pthreads instead of the basic Win32 API implementation present in the code. This is required to enable C++11 thread, future, and mutex in libstdc++. You may have to redistribute the winpthreads DLL alongside the libgcc DLL. I don't know about the other things. Cheers, Ruben whatever the case, I can't seem to build a 32-bit program (I put in a manifest, windows rejects the executable because the processorArchitecture=X86 in the manifest doesn't match the x86-64 binary). and I do run into 32-bit machines out there. here is the manifest. 32\diskgeometry.exe.manifest: = ?xml version=1.0 encoding=UTF-8 standalone=yes? assembly xmlns=urn:schemas-microsoft-com:asm.v1 manifestVersion=1.0 assemblyIdentity name=JimMichaels.DiskGeometry.DiskGeometry type=win32 version=1.16.0.80 processorArchitecture=X86 publicKeyToken= language=* / compatibility xmlns=urn:schemas-microsoft-com:compatibility.v1 application !-- The ID below indicates application support for Windows Vista -- supportedOS Id={e2011457-1546-43c5-a5fe-008deee3d3f0}/ !-- The ID below indicates application support for Windows 7 -- supportedOS Id={35138b9a-5d96-4fbd-8e2d-a2440225f93a}/ !-- The ID below indicates application support for Windows 8 -- supportedOS Id={4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}/ !-- The ID below indicates application support for Windows 8.1 -- supportedOS Id={1f676c76-80e1-4239-95bb-83d0f6d0da78}/ /application /compatibility descriptiondiskgeom - show disk geometry/description -- Identify the application security requirements. -- ms_asmv2:trustInfo xmlns:ms_asmv2=urn:schemas-microsoft-com:asm.v2 ms_asmv2:security ms_asmv2:requestedPrivileges ms_asmv2:requestedExecutionLevel level=asInvoker uiAccess=false /ms_asmv2:requestedExecutionLevel /ms_asmv2:requestedPrivileges /ms_asmv2:security /ms_asmv2:trustInfo /assembly From: Ivan Garramona heavenandhell...@gmail.com To: mingw-w64-public@lists.sourceforge.net Sent: Friday, January 17, 2014 5:49 PM Subject: Re: [Mingw-w64-public] there is lib and lib64, how target 32-bit/64-bit? You have to use the flags -m32 or -m64 to specify the target. The i686 will target 32bit by default, the same happens with the x86_64, it defaults to 64bit. 2014/1/17 Jim Michaels jmich...@yahoo.com there is lib and lib64, how do I target specific cpu type (32-bit/64-bit)? am using i686-4.9.0-snapshot-20131119-rev205009-posix-sjlj-rt_v4 x86_64-4.9.0-snapshot-20131119-rev205009-posix-sjlj-rt_v4 which of these compilers is hosted on x64? does posix mean the posix subsystem of windows be installed for it to work (already did, but need to know for customers)? in the 64-bit compiler, it has lib and lib32. in the 32-bit compiler, it has lib and lib64.so now curious what this all now means. thanks. - Jim Michaels jmich...@yahoo.com j...@renewalcomputerservices.com http://RenewalComputerServices.com http://JesusnJim.com (my personal site, has software) --- IEC Units: Computer RAM SSD measurements, microsoft disk size measurements (note: they will say GB or MB or KB or TB when it is IEC Units!): [KiB] [MiB] [GiB] [TiB] [2^10B=1,024^1B=1KiB] [2^20B=1,024^2B=1,048,576B=1MiB] [2^30B=1,024^3B=1,073,741,824B=1GiB] [2^40B=1,024^4B=1,099,511,627,776B=1TiB] [2^50B=1,024^5B=1,125,899,906,842,624B=1PiB] SI Units: Hard disk industry disk size measurements: [kB] [MB] [GB] [TB] [10^3B=1,000B=1kB] [10^6B=1,000,000B=1MB]
Re: [Mingw-w64-public] there is lib and lib64, how target 32-bit/64-bit?
On Sat, Jan 18, 2014, Jim Michaels wrote: hmm. there seems to be a problem with 64-bit windres always making 64-bit .res files regardless of -m32, and windows 7 is complaining. there are no windres switches to change this. IMHO (well, and others think the same), multilib is a nice thing but if it introduces a significant number of issues. Separate compilers is the safer option. Of course everything could be made to work, with enough time and money. -- Adrien Nader -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] there is lib and lib64, how target 32-bit/64-bit?
2014/1/18 Jim Michaels jmich...@yahoo.com hmm. there seems to be a problem with 64-bit windres always making 64-bit .res files regardless of -m32, and windows 7 is complaining. there are no windres switches to change this. Only the GCC compiler driver understands -m32/-m64. But the windres documentation has this little gem: -F target--target targetSpecify the BFD format to use for a COFF file as input or output. This is a BFD target name; you can use the --help option to see a list of supported targets. Normally windres will use the default format, which is the first one listed by the --help option. Target Selectionhttps://sourceware.org/binutils/docs/binutils/Target-Selection.html#Target-Selection. Which seems to indicate it has certain options to handle this, but they are different from what you'd like to use. Cheers, Ruben -- *From:* Ruben Van Boxem vanboxem.ru...@gmail.com *To:* mingw-w64-public@lists.sourceforge.net mingw-w64-public@lists.sourceforge.net *Sent:* Saturday, January 18, 2014 5:42 AM *Subject:* Re: [Mingw-w64-public] there is lib and lib64, how target 32-bit/64-bit? 2014/1/18 Jim Michaels jmich...@yahoo.com for 32-bit compiles only using 64-bit compiler (using -m32) I get mingw32/bin/ld.exe: i386:x86-64 architecture of input file `32\diskgeometry.manifest.res' is incompatible with i386 output collect2.exe: error: ld returned 1 exit status Q: - is there something special I need to do for -l switch to specify 32-bit libs? - do I use the same runtime DLLs like libgcc_s_sjlj-1.dll and libstdc++-6.dll? - which of these 4.9.0 experimental posix compilers is hosted on x64 (they both execute)? - does posix mean the posix subsystem of windows be installed for it to work (already did, but need to know for customers) or does it mean posix threads? No, this only means libgcc and libstdc++ are built using pthreads instead of the basic Win32 API implementation present in the code. This is required to enable C++11 thread, future, and mutex in libstdc++. You may have to redistribute the winpthreads DLL alongside the libgcc DLL. I don't know about the other things. Cheers, Ruben whatever the case, I can't seem to build a 32-bit program (I put in a manifest, windows rejects the executable because the processorArchitecture=X86 in the manifest doesn't match the x86-64 binary). and I do run into 32-bit machines out there. here is the manifest. 32\diskgeometry.exe.manifest: = ?xml version=1.0 encoding=UTF-8 standalone=yes? assembly xmlns=urn:schemas-microsoft-com:asm.v1 manifestVersion=1.0 assemblyIdentity name=JimMichaels.DiskGeometry.DiskGeometry type=win32 version=1.16.0.80 processorArchitecture=X86 publicKeyToken= language=* / compatibility xmlns=urn:schemas-microsoft-com:compatibility.v1 application !-- The ID below indicates application support for Windows Vista -- supportedOS Id={e2011457-1546-43c5-a5fe-008deee3d3f0}/ !-- The ID below indicates application support for Windows 7 -- supportedOS Id={35138b9a-5d96-4fbd-8e2d-a2440225f93a}/ !-- The ID below indicates application support for Windows 8 -- supportedOS Id={4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}/ !-- The ID below indicates application support for Windows 8.1 -- supportedOS Id={1f676c76-80e1-4239-95bb-83d0f6d0da78}/ /application /compatibility descriptiondiskgeom - show disk geometry/description -- Identify the application security requirements. -- ms_asmv2:trustInfo xmlns:ms_asmv2=urn:schemas-microsoft-com:asm.v2 ms_asmv2:security ms_asmv2:requestedPrivileges ms_asmv2:requestedExecutionLevel level=asInvoker uiAccess=false /ms_asmv2:requestedExecutionLevel /ms_asmv2:requestedPrivileges /ms_asmv2:security /ms_asmv2:trustInfo /assembly -- *From:* Ivan Garramona heavenandhell...@gmail.com *To:* mingw-w64-public@lists.sourceforge.net *Sent:* Friday, January 17, 2014 5:49 PM *Subject:* Re: [Mingw-w64-public] there is lib and lib64, how target 32-bit/64-bit? You have to use the flags -m32 or -m64 to specify the target. The i686 will target 32bit by default, the same happens with the x86_64, it defaults to 64bit. 2014/1/17 Jim Michaels jmich...@yahoo.com there is lib and lib64, how do I target specific cpu type (32-bit/64-bit)? am using i686-4.9.0-snapshot-20131119-rev205009-posix-sjlj-rt_v4 x86_64-4.9.0-snapshot-20131119-rev205009-posix-sjlj-rt_v4 which of these compilers is hosted on x64? does posix mean the posix subsystem of windows be installed for it to work (already did, but need to know for customers)? in the 64-bit compiler, it has lib and lib32. in the
Re: [Mingw-w64-public] there is lib and lib64, how target 32-bit/64-bit?
I take that back. supported targets: pe-x86-64 pei-x86-64 elf64-x86-64 elf64-l1om elf64-k1om pe-i386 pei-i386 elf32-i386 elf64-little elf64-big elf32-little elf32-big srec symbolsrec verilog tekhex binary ihex so which one do I use for win64 and which one for win32? my guess is one of the pe series, but not sure which to pick. help appreciated. I don't know what the pei means, but I know that windows uses a wiundows PE exe format. - Jim Michaels jmich...@yahoo.com j...@renewalcomputerservices.com http://RenewalComputerServices.com http://JesusnJim.com (my personal site, has software) --- IEC Units: Computer RAM SSD measurements, microsoft disk size measurements (note: they will say GB or MB or KB or TB when it is IEC Units!): [KiB] [MiB] [GiB] [TiB] [2^10B=1,024^1B=1KiB] [2^20B=1,024^2B=1,048,576B=1MiB] [2^30B=1,024^3B=1,073,741,824B=1GiB] [2^40B=1,024^4B=1,099,511,627,776B=1TiB] [2^50B=1,024^5B=1,125,899,906,842,624B=1PiB] SI Units: Hard disk industry disk size measurements: [kB] [MB] [GB] [TB] [10^3B=1,000B=1kB] [10^6B=1,000,000B=1MB] [10^9B=1,000,000,000B=1GB] [10^12B=1,000,000,000,000B=1TB] [10^15B=1,000,000,000,000,000B=1PB] From: Jim Michaels jmich...@yahoo.com To: mingw-w64-public@lists.sourceforge.net mingw-w64-public@lists.sourceforge.net Sent: Saturday, January 18, 2014 2:34 PM Subject: Re: [Mingw-w64-public] there is lib and lib64,how target 32-bit/64-bit? hmm. there seems to be a problem with 64-bit windres always making 64-bit .res files regardless of -m32, and windows 7 is complaining. there are no windres switches to change this. From: Ruben Van Boxem vanboxem.ru...@gmail.com To: mingw-w64-public@lists.sourceforge.net mingw-w64-public@lists.sourceforge.net Sent: Saturday, January 18, 2014 5:42 AM Subject: Re: [Mingw-w64-public] there is lib and lib64, how target 32-bit/64-bit? 2014/1/18 Jim Michaels jmich...@yahoo.com for 32-bit compiles only using 64-bit compiler (using -m32) I get mingw32/bin/ld.exe: i386:x86-64 architecture of input file `32\diskgeometry.manifest.res' is incompatible with i386 output collect2.exe: error: ld returned 1 exit status Q: - is there something special I need to do for -l switch to specify 32-bit libs? - do I use the same runtime DLLs like libgcc_s_sjlj-1.dll and libstdc++-6.dll? -which of these 4.9.0 experimental posix compilers is hosted on x64 (they both execute)? - does posix mean the posix subsystem of windows be installed for it to work (already did, but need to know for customers) or does it mean posix threads? No, this only means libgcc and libstdc++ are built using pthreads instead of the basic Win32 API implementation present in the code. This is required to enable C++11 thread, future, and mutex in libstdc++. You may have to redistribute the winpthreads DLL alongside the libgcc DLL. I don't know about the other things. Cheers, Ruben whatever the case, I can't seem to build a 32-bit program (I put in a manifest, windows rejects the executable because the processorArchitecture=X86 in the manifest doesn't match the x86-64 binary). and I do run into 32-bit machines out there. here is the manifest. 32\diskgeometry.exe.manifest: = ?xml version=1.0 encoding=UTF-8 standalone=yes? assembly xmlns=urn:schemas-microsoft-com:asm.v1 manifestVersion=1.0 assemblyIdentity name=JimMichaels.DiskGeometry.DiskGeometry type=win32 version=1.16.0.80 processorArchitecture=X86 publicKeyToken= language=* / compatibility xmlns=urn:schemas-microsoft-com:compatibility.v1 application !-- The ID below indicates application support for Windows Vista -- supportedOS Id={e2011457-1546-43c5-a5fe-008deee3d3f0}/ !-- The ID below indicates application support for Windows 7 -- supportedOS Id={35138b9a-5d96-4fbd-8e2d-a2440225f93a}/ !-- The ID below indicates application support for Windows 8 -- supportedOS Id={4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}/ !-- The ID below indicates application support for Windows 8.1 -- supportedOS Id={1f676c76-80e1-4239-95bb-83d0f6d0da78}/ /application /compatibility descriptiondiskgeom - show disk geometry/description -- Identify the application security requirements. -- ms_asmv2:trustInfo xmlns:ms_asmv2=urn:schemas-microsoft-com:asm.v2 ms_asmv2:security ms_asmv2:requestedPrivileges ms_asmv2:requestedExecutionLevel level=asInvoker uiAccess=false /ms_asmv2:requestedExecutionLevel /ms_asmv2:requestedPrivileges /ms_asmv2:security /ms_asmv2:trustInfo /assembly From: Ivan Garramona heavenandhell...@gmail.com To: mingw-w64-public@lists.sourceforge.net Sent: Friday,
[Mingw-w64-public] Clang Driver and DllMainCRTStartup entry point
Hi, As previously announced, I am writing Clang Driver code so it directly calls as/ld instead of delegating that to GCC. I am nearly finished, with just one issue remaining. If I have this test code: #include stdio.h int main() { printf(Hello World!\n); } and I run $ i686-w64-mingw32-gcc -shared -v test.c -o test.dll I get the following output for the call to collect2/ld: /usr/libexec/gcc/i686-w64-mingw32/4.8.2/collect2 -m i386pe --shared -Bdynamic -e _DllMainCRTStartup@12 --enable-auto-image-base -o test.dll /usr/lib/gcc/i686-w64-mingw32/4.8.2/../../../../i686-w64-mingw32/lib/../lib/dllcrt2.o /usr/lib/gcc/i686-w64-mingw32/4.8.2/crtbegin.o -L/usr/lib/gcc/i686-w64-mingw32/4.8.2 -L/usr/lib/gcc/i686-w64-mingw32/4.8.2/../../../../i686-w64-mingw32/lib/../lib -L/usr/lib/gcc/i686-w64-mingw32/4.8.2/../../../../i686-w64-mingw32/lib /tmp/ccRL8M4y.o -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt -lpthread -ladvapi32 -lshell32 -luser32 -lkernel32 -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt /usr/lib/gcc/i686-w64-mingw32/4.8.2/crtend.o If I repeat that call, with my improved clang: clang -target i686-w64-mingw32 -v -shared test.c -o test.dll, I get this: /usr/libexec/gcc/i686-w64-mingw32/4.8.2/collect2 -m i386pe -Bdynamic --shared -e _DllMainCRTStartup@12 --enable-auto-image-base -o test.dll /usr/i686-w64-mingw32/lib/dllcrt2.o /usr/i686-w64-mingw32/lib/crtbegin.o -L/usr/i686-w64-mingw32/lib -L/usr/lib/gcc/i686-w64-mingw32/4.8.2 /tmp/test-c90c4a.o -lmingw32 -lgcc --as-needed -lgcc_s --no-as-needed -lmoldname -lmingwex -lmsvcrt -lpthread -ladvapi32 -lshell32 -luser32 -lkernel32 -lmingw32 -lgcc --as-needed -lgcc_s --no-as-needed -lmoldname -lmingwex -lmsvcrt /usr/i686-w64-mingw32/lib/crtend.o /usr/bin/i686-w64-mingw32-ld: warning: cannot find entry symbol _DllMainCRTStartup@12; defaulting to 6bec1000 I tried rearranging the --shared -Bdynamic at the beginning, but that changed nothing. Why does it give an error in the Clang case? As far as I can tell, the calls are pretty much identical. Furthermore, if I first compile to an object file by adding -c, then run the above command to produce a dll from this object file, I get no warning. What gives? And how can I check that the dll produced through clang works? Any help is appreciated. I've got more stuff for clang coming up, but I want to finish this first. Cheers, Ruben -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] Clang Driver and DllMainCRTStartup entry point
The LoadLibrary API calls the DLL's entry point. You can use it to check if the DLL is working. This simple snippet correctly printed the Hello World from the dll. #include windows.h int main() { LoadLibrary(test.dll); return 0; } -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] [PATCH] Add wmilib for use with DDK
On 1/18/2014 22:13, Lars Munch wrote: This patch never got applied. Could someone please apply? Thanks Lars Done with trunk r6444. signature.asc Description: OpenPGP digital signature -- CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431iu=/4140/ostg.clktrk___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] there is lib and lib64, how target 32-bit/64-bit?
all is well. discovered where the 32-bit DLLs were in 64-bit cvompiler using dir/s/b *.dll and now all is working well. thanks for the help. From: Jim Michaels jmich...@yahoo.com To: mingw-w64-public@lists.sourceforge.net mingw-w64-public@lists.sourceforge.net Sent: Saturday, January 18, 2014 2:43 PM Subject: Re: [Mingw-w64-public] there is lib and lib64,how target 32-bit/64-bit? I take that back. supported targets: pe-x86-64 pei-x86-64 elf64-x86-64 elf64-l1om elf64-k1om pe-i386 pei-i386 elf32-i386 elf64-little elf64-big elf32-little elf32-big srec symbolsrec verilog tekhex binary ihex so which one do I use for win64 and which one for win32? my guess is one of the pe series, but not sure which to pick. help appreciated. I don't know what the pei means, but I know that windows uses a wiundows PE exe format. - Jim Michaels jmich...@yahoo.com j...@renewalcomputerservices.com http://RenewalComputerServices.com http://JesusnJim.com (my personal site, has software) --- IEC Units: Computer RAM SSD measurements, microsoft disk size measurements (note: they will say GB or MB or KB or TB when it is IEC Units!): [KiB] [MiB] [GiB] [TiB] [2^10B=1,024^1B=1KiB] [2^20B=1,024^2B=1,048,576B=1MiB] [2^30B=1,024^3B=1,073,741,824B=1GiB] [2^40B=1,024^4B=1,099,511,627,776B=1TiB] [2^50B=1,024^5B=1,125,899,906,842,624B=1PiB] SI Units: Hard disk industry disk size measurements: [kB] [MB] [GB] [TB] [10^3B=1,000B=1kB] [10^6B=1,000,000B=1MB] [10^9B=1,000,000,000B=1GB] [10^12B=1,000,000,000,000B=1TB] [10^15B=1,000,000,000,000,000B=1PB] From: Jim Michaels jmich...@yahoo.com To: mingw-w64-public@lists.sourceforge.net mingw-w64-public@lists.sourceforge.net Sent: Saturday, January 18, 2014 2:34 PM Subject: Re: [Mingw-w64-public] there is lib and lib64, how target 32-bit/64-bit? hmm. there seems to be a problem with 64-bit windres always making 64-bit .res files regardless of -m32, and windows 7 is complaining. there are no windres switches to change this. From: Ruben Van Boxem vanboxem.ru...@gmail.com To: mingw-w64-public@lists.sourceforge.net mingw-w64-public@lists.sourceforge.net Sent: Saturday, January 18, 2014 5:42 AM Subject: Re: [Mingw-w64-public] there is lib and lib64, how target 32-bit/64-bit? 2014/1/18 Jim Michaels jmich...@yahoo.com for 32-bit compiles only using 64-bit compiler (using -m32) I get mingw32/bin/ld.exe: i386:x86-64 architecture of input file `32\diskgeometry.manifest.res' is incompatible with i386 output collect2.exe: error: ld returned 1 exit status Q: - is there something special I need to do for -l switch to specify 32-bit libs? - do I use the same runtime DLLs like libgcc_s_sjlj-1.dll and libstdc++-6.dll? -which of these 4.9.0 experimental posix compilers is hosted on x64 (they both execute)? - does posix mean the posix subsystem of windows be installed for it to work (already did, but need to know for customers) or does it mean posix threads? No, this only means libgcc and libstdc++ are built using pthreads instead of the basic Win32 API implementation present in the code. This is required to enable C++11 thread, future, and mutex in libstdc++. You may have to redistribute the winpthreads DLL alongside the libgcc DLL. I don't know about the other things. Cheers, Ruben whatever the case, I can't seem to build a 32-bit program (I put in a manifest, windows rejects the executable because the processorArchitecture=X86 in the manifest doesn't match the x86-64 binary). and I do run into 32-bit machines out there. here is the manifest. 32\diskgeometry.exe.manifest: = ?xml version=1.0 encoding=UTF-8 standalone=yes? assembly xmlns=urn:schemas-microsoft-com:asm.v1 manifestVersion=1.0 assemblyIdentity name=JimMichaels.DiskGeometry.DiskGeometry type=win32 version=1.16.0.80 processorArchitecture=X86 publicKeyToken= language=* / compatibility xmlns=urn:schemas-microsoft-com:compatibility.v1 application !-- The ID below indicates application support for Windows Vista -- supportedOS Id={e2011457-1546-43c5-a5fe-008deee3d3f0}/ !-- The ID below indicates application support for Windows 7 -- supportedOS Id={35138b9a-5d96-4fbd-8e2d-a2440225f93a}/ !-- The ID below indicates application support for Windows 8 -- supportedOS Id={4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}/ !-- The ID below indicates application support for Windows 8.1 -- supportedOS Id={1f676c76-80e1-4239-95bb-83d0f6d0da78}/ /application /compatibility descriptiondiskgeom - show disk geometry/description -- Identify the application security requirements. -- ms_asmv2:trustInfo xmlns:ms_asmv2=urn:schemas-microsoft-com:asm.v2