我正在使用Ubuntu 13.04,并使用安装了mingw-w64 apt-get install mingw-w64
。我可以使用以下命令来编译和链接程序的64位工作版本:
x86_64-w64-mingw32-g++ code.cpp -o app.exe
生成一个64位的 app.exe 文件。
我使用哪些二进制或命令行标志来生成32位版本的app.exe?
这取决于您当前正在使用哪种工具链。既 DWARF 和_SEH_变体(它们来自GCC4.8.0开始)仅单一目标。您可以通过检查其发行版的目录结构来自己查看,即它们仅包含具有64位和32位寻址的库,而不能同时包含两者。另一方面,普通的旧
SJLJ 发行版确实是双重目标,并且为了构建32位目标,只需提供-m32
标志。如果那行不通,那就用构建i686-w64-mingw32-g++
。
顺便说一句,实现每个 GCC异常模型 的三个相应的 动态链接库 (DLL)是 __
libgcc_s_dw2-1.dll
(侏儒);libgcc_s_seh-1.dll
(SEH);libgcc_s_sjlj-1.dll
(SJLJ)。因此,要找出您当前的MinGW-w64发行版到底提供了什么异常模型,您可以
bin
);要么___gxx_personality_v*
(DWARF),___gxx_personality_seh*
(SEH),___gxx_personality_sj*
(SJLJ)之类的引用的存在;The project's goal is to deliver runtime, headers, and libs for developing 64 bit (x64), as well as 32 bit (x86), windows applications using gcc-4.4 or newer versions.
问题内容: 我有一台新的64位Windows计算机,并且将python用于各种用途,因此希望安装64位python。 但是,我的一个python项目创建了一个Windows可执行文件,然后在32位Windows计算机(使用py2exe创建)上运行。 如何使用64位python和py2exe创建32位可执行文件? 如果我做不到,我想我的选择是: 在包括我的所有机器上使用32位python;要么 在3
问题内容: 嗨,我目前正在为我正在编写的编译器生成x86程序集,并且在将文件链接到我的64位VM(程序集代码为32位)时遇到一些麻烦。 我可以使用以下命令很好地汇编目标文件: 但我似乎找不到任何使它生成32位ELF文件的选项: 任何帮助都会很棒。 问题答案: 您可以通过以下方式获得可用架构的列表: 样本输出: 但是,这不是必须的:ld查看第一个对象,并应根据该对象的格式自动选择仿真。
mingw-w64-build mingw-w64-build is a Bash script to build a MinGW-w64cross compiler for i686 (Win32) and x86_64 (Win64). It will build a fully statictoolchain that can compile Windows executables that
问题内容: 我有一个纯Python脚本,我想分发给具有未知Python配置的系统。因此,我想将Python代码编译为独立的可执行文件。 我奔波没有问题。那我跑 哪里给 并给 通过这种方式,我可以获得一个动态链接的可执行文件,该文件可以正常运行。产量 现在,我尝试将选项添加到gcc,但这会导致错误: 我检查了ldd给定的所有共享库是否也都安装为静态库。 那么,这与python3-config提供的选