[英]C++ windows binaries: conditions to be used with MinGW
我是 C++ 新手,現在正在努力編譯和鏈接。 最近我一直在使用 cmake 和 make 重新編譯一個使用 Boost 的庫(mlpack)( Cmake 沒有找到 boost 1.51 (windows 8) )。
在第一次嘗試中,我下載了 Windows 的預編譯二進制文件。 這並沒有奏效,我已經解釋過我使用的二進制文件是用於 MSVC,而不是 MinGW,因此很麻煩。 事實上,在使用 MinGW 重新編譯 boost 之后,一切順利。
在這里,我只想了解 MSVC 和 MinGW 的二進制文件之間的區別。 我(天真地?)認為二進制文件是特定於操作系統/處理器的。 MSVC 的二進制文件包含哪些使 MinGW 無法使用它們的內容?
要簡單。
Windows 講French
。
MinGW 會說French
、 German
和English
。
Unix 系統說German
。
MSVC 二進制文件是用French
編寫的。
MinGW 二進制文件是用FrenchAngloGerman
編寫的。
UNIX 二進制文件是用German
編寫的。
Windows 需要 MinGW 將一些German
和English
成French
然后才能理解所有內容。
MinGW 與其他程序不同。 它基本上是一個介於 Windows 和 Linux 之間的迷你操作系統。 所以大多數情況下它需要修改形式的二進制文件才能正常工作。 您在 Windows 上的 MinGW 上開發程序的事實並不意味着它們可以在純 Windows 上運行而沒有任何問題。 您仍然需要發布或分發與您的程序一起使用的 MinGW 庫和可執行文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.