2015-11-01 80 views
0

我知道Cygwin是一個適用於Linux的Windows界面,但是有一個適用於Windows的Linux界面。適用於Windows的C++ linux界面?

如果我使用Windows的Linux接口,一旦在此接口上構建了一個庫,它可以用於在Windows上構建項目?

我正在尋找解決方案來構建開源C++庫時遇到的無數構建錯誤。

謝謝

+0

你可以看看https://www.reactos.org。它是Windows平臺的開源實現。您可以將它們的頭文件和庫與一個以Linux爲目標的交叉編譯器一起用於Windows,並使用Wine測試您的二進制文件。沒有承諾它是否適用於您的特定應用程序。 –

回答

1

Cygwin本身不是「Linux的Windows界面」。它是一套模擬庫,工具和bash shell,允許在Windows上重新編譯和運行現有的Unix/Linux代碼。在Cygwin中編譯爲EXE的應用程序通常可以通過將構建的EXE和Cygwin DLL的一些子集包含到同一個安裝目錄中而重新分發給其他Windows機器。

我懷疑如果你採用了開源代碼,並在Cygwin下構建爲共享庫(.dll),那麼可以將代碼鏈接到該DLL。可能會構建.lib文件,但我從來沒有嘗試過。然後將在Visual Studio(或其他編譯器)下構建的可執行文件,Cygwin編譯的二進制文件和Cygwin運行時一起分發。

+0

謝謝安德魯。這是Cygwin的一個很好的解釋。我開始懷疑這些版主是否有任何東西沒有擱置。 Stackoverflow似乎傾向於成爲一個真正的論壇,而不是被監管的網站。再次感謝您的幫助,我會研究這一點。 – domonica

+0

歡迎來到Stack Overflow @domonica。由於以下原因,您的問題可能會被擱置:1.請求一般幫助,以獲取代碼編譯的模糊問題。 *「'我正在尋找無數構建錯誤的解決方案......」*不夠具體。 2.您的問題標題與您真正要求的不符。不要說*「用於Windows的C++ linux界面」*,你可以將它標題爲「將代碼從Linux移植到Windows時遇到問題」**,然後提到Cygwin是否是問題中的一個選項,作爲更廣泛意義上的解決方案。 – selbie

+0

想象一下,如果你的問題的措辭如下:「我試圖將libWhatever的源文件包含到我的Windows Visual Studio項目中。問題是我得到了很多構建錯誤,如下所示:我該如何解決方法這些類型的錯誤?或者我應該採取一種不同的方法來獲取這些代碼,通常用於Linux編譯和Windows工作?我聽說過Cygwin - 會有幫助嗎?*「 – selbie

相關問題