机缘
机缘巧合下收到了这个小任务.
工作流
先是找了下资料发现过去的都是关于mingw32. 教程的做法:
- 增加个源 (trusty 是linux发行的版本标识,比如22.04是
jammy

deb http://us.archive.ubuntu.com/ubuntu trusty main universe
- 更新源
sudo apt update
- 下载mingw32.
sudo apt install mingw32
结果发现在源里根本找不到mingw32
报错 Unable to locate package mingw32
最后发现 ubantu高于15.04的版本mingw32不可用,这也就是上面找不到这个的原因.毕竟现在是2024年1月10日18:06分(已经下班了),一般的版本都在20.04上.
关于mingw-w64
从 Ubuntu 15.04 版本开始,mingw32 工具链不再提供,取而代之的是 mingw-w64。mingw-w64 是一个跨平台的 C/C++ 编译器,可以在 Linux 或其他操作系统上编译 Windows 应用程序。与 mingw32 相比,mingw-w64 提供了对 64 位 Windows 应用程序的支持,并且通常被认为是更现代和更新的工具。
如果您需要在 Ubuntu 系统上安装 mingw-w64,可以通过以下命令进行:
sudo apt-get update
sudo apt-get install mingw-w64
在使用 mingw-w64 编译 Windows 程序时,您应该使用新的目标前缀 i686-w64-mingw32(用于 32 位应用程序)和 x86_64-w64-mingw32(用于 64 位应用程序),取代原来的i586-mingw32msvc前缀。例如,如果您想要编译一个 32 位的 Windows 应用程序,您可以使用如下命令:
i686-w64-mingw32-gcc -o myapp.exe myapp.c
下载完成后在 /usr/bin下可以看到:(32位和64位的交叉工具链,mingw-w64这个包提供了交叉编译生成32位或者是64位的gcc和g++.)


最低0.47元/天 解锁文章
交叉编译生成windows32位,64位可执行程序和库&spm=1001.2101.3001.5002&articleId=135509851&d=1&t=3&u=bfa75248cbfa4f8fbf6ede65483a2e88)
1294

被折叠的 条评论
为什么被折叠?



