Ubuntu
無法在 Ubuntu 上使用 Mingw-w64 交叉編譯 SDL2
我在使用 WSL2 的 Ubuntu 上,我想創建一個可以在 Windows 上執行的執行檔。目前我可以為 linux 建構執行檔就好了。我將 SDL MinGw Windows 開發工具(上面的連結)下載到我的 /opt 文件夾中。當我執行
make cross
時,我收到以下輸出:for arch in i686-w64-mingw32 x86_64-w64-mingw32; do \ make install-package arch=$arch prefix=/usr/local/$arch; \ done make[1]: Entering directory '/opt/SDL2-2.0.12' *** ERROR: i686-w64-mingw32 or /usr/local/i686-w64-mingw32 does not exist! make[1]: *** [Makefile:21: install-package] Error 1 make[1]: Leaving directory '/opt/SDL2-2.0.12' make[1]: Entering directory '/opt/SDL2-2.0.12' *** ERROR: x86_64-w64-mingw32 or /usr/local/x86_64-w64-mingw32 does not exist! make[1]: *** [Makefile:21: install-package] Error 1 make[1]: Leaving directory '/opt/SDL2-2.0.12' make: *** [Makefile:16: cross] Error 2
如果我搜尋我得到的那些
which i686-w64-mingw32-g++ /usr/bin/i686-w64-mingw32-g++ which x86_64-w64-mingw32-g++ /usr/bin/x86_64-w64-mingw32-g++
/usr/bin 在我的路徑上,我在文件夾中看到具有這些名稱的可執行
/opt/SDL2-2.0.12
文件。其起源是當我嘗試使用 x86_64-w64-mingw32-g++ 而不是 g++ 編譯我的 SDL 程序時。
您需要創建前綴目錄:
mkdir /usr/local/{i686,x86_64}-w64-mingw32