在 linux 下编译 exe 文件

Table of Contents

都什么年代,还在玩传统操作系统?

主力 linux,然而学校传统的实验平台实在是过于弱智,以至于需要上传 exe 才能测评;但是不想重启,也不想开虚拟机,online compiler 几乎没有提供生成 exe 文件下载的,于是需要换个方式。

How to do

交叉编译器。deb 系上跑 mingw 的交叉编译器,用以下命令安装:

sudo apt install mingw-w64

然后,就可以编译了。mingw 有一套编译器,用一个就行了。例如:

i686-w64-mingw32-g++ A.cpp -o A.exe

By the way,这个名字太长了,打起来不是很方便,所以要 alias

常见 shell 配置文件地址:

  • Bash – ~/.bashrc
  • ZSH – ~/.zshrc
  • Fish – ~/.config/fish/config.fish

按照自己的 shell 编辑,加上 alias wing++="i686-w64-mingw32-g++" 就可以了。当然我取的名字是“wing++”,可以按需修改。这样,你就可以wing++ A.cpp -o A.exe 了。Great.

吐槽

DS 的实验平台实在是太逆天了,防止恶意代码靠 360,运行 exe 文件,槽点满满。有 OJ 不用,也不知道部署 sandbox,呃呃。

Share