簡體   English   中英

在 Linux for Windows 上編譯 C++ 代碼時出錯

[英]Error while compiling C++ code on Linux for Windows

我正在嘗試使用以下命令在 linux 主機上為 windows 編譯一個 C++ 應用程序:

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

但是在代碼中導入了特定的windows庫:

#import "mscorlib.tlb" raw_interfaces_only    \
   high_property_prefixes("_get","_put","_putref")  \
   auto_rename

我得到這個錯誤:

app.cpp:26:9: fatal error: mscorlib.tlb: No such file or directory

我試圖從 Windows 主機復制該文件並將其放入包含 .cpp 文件的目錄中,但這不起作用。 當我這樣做時,這是一段編譯器輸出:

mscorlib.tlb:1835:19: warning: null character(s) ignored
mscorlib.tlb:1835:21: error: stray ‘\4’ in program
mscorlib.tlb:1835:22: warning: null character(s) ignored
mscorlib.tlb:1835:24: error: stray ‘\1’ in program
mscorlib.tlb:1835:25: warning: null character(s) ignored
mscorlib.tlb:1835:29: error: stray ‘\2’ in program

如何解決我的問題? 非常感謝

#importmscorlib是 C++.NET(Microsoft® 的 C++ 派生語言),而不是C++。 MinGW 不支持,也不能支持(C++.NET 內部差異太大,盡管語法相似)。 嘗試使用 Microsoft® .NE​​T Core,它是跨平台的,應該有一個 C++.NET 編譯器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM