是否有交叉編譯從Linux到Windows中的C++應用程序手冊?從Linux到Windows交叉編譯C++應用程序的手冊?
這一點。我想要一些信息(鏈接,參考,例子...)來指導我做到這一點。
我甚至不知道它是否可能。
我的目標是在編譯的Linux程序,並得到我可以在Windows下運行.exe文件。
是否有交叉編譯從Linux到Windows中的C++應用程序手冊?從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
更換apt-get
與yum
,或任何你的Linux發行版使用。這將爲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}
中,您需要在構建過程的配置步驟中分別添加這些路徑。
這取決於你是什麼意思(我真的不能說)。
如果你的意思是你想在Windows上使用現有的Linux應用程序,那麼你可以嘗試使用Windows上Cygwin它編譯。然而,這並不會給你的Windows從對Cygwin的所有依賴可執行免費(可執行文件仍取決於cygwin.dll
文件) - 它仍然可能需要做一些移植之前,它會工作。見http://www.cygwin.com。
如果您的意思是您希望能夠在Linux上執行Windows應用程序的實際編譯並生成可在Windows上執行的.exe文件 - 從而使用您的Linux機箱進行開發和/或編譯,那麼您應該查看針對Linux的MinGW,這是Linux上用於Windows的交叉編譯工具。請參閱http://www.mingw.org/wiki/LinuxCrossMinGW。
此致敬禮!
我建議你試一下,GUB(Grand Unified Builder),因爲它交叉編譯幾個包及其依賴關係,並將它們組裝到當前11個體繫結構的單個安裝包中。您可以從here下載安裝預建的異在一個虛擬機,並按照源here。它目前可用於交叉編譯GNU LilyPond/GNU Denemo/Inkscape和OpenOffice.org。
目標架構:
有一件事與此要注意的是,有些圖書館不喜歡交叉編譯。如果您的唯一選擇是.exe安裝程序和源代碼,則可能需要在wine下安裝該庫,然後將這些庫和標題複製到您的mingw搜索路徑中。我永遠不可能讓Boost交叉編譯 – Branan 2008-10-08 18:26:01