是否有一个用于从Linux到Windows交叉编译C++应用程序的手册?

就这样.我想要一些信息(链接,参考,例子…)来指导我做那件事.

我甚至不知道这是否可能.

我的目标是在Linux中编译一个程序并获得一个.我可以在Windows下运行的exe文件.

推荐答案

基本知识并不太难:

sudo apt-get install mingw32    
cat > main.c <<EOF
int main()
{
  printf("Hello, World!");
}
EOF
i586-mingw32msvc-cc main.c -o hello.exe

yum或Linux发行版使用的任何东西替换apt-get.这将为Windows生成一个hello.exe.

一旦你意识到这一点,你可以使用autotools,设置CC=i586-mingw32msvc-cc

CC=i586-mingw32msvc-cc ./configure && make

或者使用CMake and a toolchain file来管理构建.更困难的是添加本机跨库.通常它们存储在/usr/cross/i586-mingw32msvc/{include,lib}中,您需要在构建过程的配置步骤中单独添加这些路径.

Linux相关问答推荐

pci_user_write_config_word在哪里实现?

从一个文件中读取文件名并将文件名和内容存储到另一个带有|的文件中作为分隔符

如何修复 script(1) 实用程序输出的换行符?

X86 程序集 - struct 点 - 存储/返回不正确?

linux 提取字符串中可能是第二常见模式的部分

为什么 8 位字符串文字可以包含多字节字符,而 char 向量不能?

使用 AWS cli 从 AWS 机密管理器解析机密

关于 putenv() 和 setenv() 的问题

为什么在编译 K&R2 第 1 章中最长的行示例时出现getline 的类型冲突错误?

PuTTY:更改默认 SSH 登录目录

将 AWK 结果分配给变量

qstat 和长作业(job)名称

如何知道linux调度器时间片?

如何在 shell 脚本中向文件中添加一行?

如何在shell的递归目录中列出特定类型的文件?

我可以打开一个套接字并将其传递给 Linux 中的另一个进程吗

Android - 找不到命令

如何通过命令行识别特定的 Linux 风格?

将 BlueZ Stack 用作外设(广告商)

Linux 目录列表中只有问号