cygwin編譯linux程序 cygwin把源程序鏈接到指定的庫(kù)進(jìn)行編譯,用什么指令?
cygwin把源程序鏈接到指定的庫(kù)進(jìn)行編譯,用什么指令?如果您想問(wèn)如何生成庫(kù),請(qǐng)查閱編譯器并查看您使用的編譯器?合同通用條款?),手冊(cè)將包含編譯器和鏈接器的命令行參數(shù)。編譯時(shí),可以使用相關(guān)選項(xiàng)指定庫(kù)路
cygwin把源程序鏈接到指定的庫(kù)進(jìn)行編譯,用什么指令?
如果您想問(wèn)如何生成庫(kù),請(qǐng)查閱編譯器并查看您使用的編譯器?合同通用條款?),手冊(cè)將包含編譯器和鏈接器的命令行參數(shù)。編譯時(shí),可以使用相關(guān)選項(xiàng)指定庫(kù)路徑。如果您的問(wèn)題與cygwin路徑和環(huán)境變量有關(guān),請(qǐng)打開(kāi)cygwin安裝目錄,您將看到熟悉的目錄路徑,它類似于Linux??蓤?zhí)行文件放在bin下,一些庫(kù)的頭文件放在usr/include下,動(dòng)態(tài)和靜態(tài)庫(kù)文件放在lib下。您可以將其放入這些目錄中,也可以通過(guò)查閱手冊(cè)找到更改cygwin環(huán)境變量的方法。只需添加庫(kù)路徑。在cygwin中,windows的C盤(pán)對(duì)應(yīng)的路徑是/cygdrive/C/D和/cygdrive/D/others。。。
Cygwin編譯的結(jié)果可以直接在linux下運(yùn)行嗎?
Cygwin編譯器的結(jié)果可以直接在Linux下運(yùn)行,答案如下:1、可以安裝Cygwin,Cygwin是一個(gè)類似UNIX的仿真環(huán)境,運(yùn)行在Windows平臺(tái)上,是Cygnus公司開(kāi)發(fā)的免費(fèi)軟件,可以通過(guò)搜索官方網(wǎng)站下載。下載完成后,記得安裝相關(guān)語(yǔ)言的編譯器和解釋器,并在cygwin中生成Linux可執(zhí)行文件。
2. 您可以安裝VMware、Virtual PC等虛擬機(jī),在虛擬機(jī)中安裝Linux系統(tǒng),然后在Linux系統(tǒng)中編譯相應(yīng)的源代碼,在Linux上生成可執(zhí)行文件。
cygwin下將linux下的程序轉(zhuǎn)化成windows下程序需要注意哪些地方?
Cygwin是一個(gè)Linux模擬環(huán)境。在cygwin中開(kāi)發(fā)windows程序是一個(gè)交叉編譯cygwin調(diào)用cygwin.dll庫(kù)支持GCC的功能,在Linux下支持windows。
如果不是cygwin.dll,您應(yīng)該將-MnO cygwin添加到編譯參數(shù)中,這意味著要使用MinGW的庫(kù)進(jìn)行編譯。缺點(diǎn)是Linux中的一些函數(shù)不受支持。如果你想簡(jiǎn)單的移植,或者cygwin.dll最好一起出版。但這種方法并不能保證所有的可移植性。C語(yǔ)言能否移植還與C庫(kù)在Linux和windows下的不同實(shí)現(xiàn)有關(guān)。最簡(jiǎn)單的例子是,它們的基本數(shù)據(jù)類型可以用不同的方式表示。在Linux中,它們由4個(gè)字節(jié)表示,在Linux中,它們可以由8個(gè)字節(jié)表示。所以函數(shù)的輸出是不同的。因此,您需要做的是稍微看看這兩個(gè)系統(tǒng)的定義,以確保它們的實(shí)現(xiàn)是相同的,不會(huì)產(chǎn)生矛盾。此外,庫(kù)函數(shù)的返回可能不同,必須排除不同的返回值。