Windows下怎樣編譯出可在Linux上執行的程式

2025-07-09 08:05:13 字數 1772 閱讀 1572

1樓:匠人共

總共又三種方案:mingw+codeblocks,是windows下的gcc編譯工具+跨的輕量ide,可以編譯c++的程式,還可以使用wxwidget(跨的介面工具)

使用cygwin,是windows下中介軟體級別的編譯工具。可以在cygwin下用命令列編譯程式。

使用vmware或者其他虛擬機器,安裝目標linux系統,並且編譯。這是虛擬硬體級別的編譯工具,其編譯的程式是完全可以在linux系統上執行的。

2樓:兄弟連教育

1、可亮森以安裝cygwin,cygwin是乙個在windows平臺上執行的類unix模擬環境,是cygnus solutions公司開發的自由軟體,搜尋官網下鎮鍵餘載即可,**完成,安裝的時候注意記得安裝相關語言的編譯器、直譯器,在cygwin中生成linux可執行檔案。

2、 可以安裝vmware、virtualpc等虛擬機器御滾,在虛擬機器裡安裝linux系統,然後在linux系統中編譯相應的原始碼,生成linux上的可執行檔案。

64位linux下的gcc如何編譯出乙個32位可執行程式?

3樓:滕苑博

理論上安裝支援環境,之後 64 位的 gcc 編譯成 32 位程式,就加 -m32 引數即可。

當然還乙個辦法是裝個 32 位的 gcc 。

另外,交叉編譯也適用於 x86 架構。

不過這麼編譯經常會出現各種問題,所以編譯 32 位的程式,最好還是用 32 位系統。

不一定重灌,用 chroot 和 setarch 命令配合即可弄出乙個 32 位的子系統。

一般64位系統最好不要安裝32位庫的-dev,經常有衝突,強行安裝會破壞64位環境,標頭檔案並不像共享庫分得那麼完美。

我覺得比較好的做法是,重新把某乙個資料夾當成rootfs,在裡面安裝各種32位的庫和庫-dev,然後給gcc傳遞引數"--sysroot=路徑"就可以讓gcc重新選取那個資料夾為rootfs,而不再認為/為rootfs。

怎樣使自己的c程式既能在win又能linux系統上執行?

4樓:網友

你如果是想自己寫乙個c程式,編譯成可執行檔案後,既可以在win上跑又可以在linux上跑,就目前我的瞭解是不可能的。

但是同乙個c程式,只要在不同的編譯器上編譯過後就可以在不同的系統上跑,那是完全可行的。

舉個例子:vc++編譯乙個c程式可以在win上跑,相同的程式用gcc編譯了,就可以在linux上跑。

如果涉及到作業系統相關的系統函式可以用巨集定義隔開。

舉個例子:ifdef _winnt_

你的windows系統**。

ifdef _linux_

你的linux系統**。

使用不同編譯器編譯時,在相關編譯器裡設定相應的巨集即可。比如gcc用 -d_linux_引數。詳細的情況可以去了解預處理關於ifdef相關章節。

5樓:網友

剛學c語言啊!難道不知道c語言遵循ansi標準嗎?當然不同的編譯器肯定會有一些差別的。水平夠得話會很快發現的。

如何將在windows下寫的程式編譯成linux下的可執行程式檔案?

6樓:

在linux上用fortran編譯器本地編譯。或者用windows版gcc的fortran元件交叉編譯。

7樓:網友

程式本身和編譯環境沒關係,在什麼平臺下編譯就生成什麼平臺的檔案。

編譯選項可能略有不同。

windows下怎樣搭建apache php mysql環境

只要在windows下安裝好apache程式,php程式,mysql程式,就搭建完成。windows下怎樣搭建apache php mysql環境 經過以上配置,apache已經可以載入php模組來解析php檔案了。但是,別忘了設定最重要的一點php初始化檔案目錄,phpinidir e wamp ...

Linux系統下C語言編譯,顯示時間 800分

可以任意複製修改,scenbuffalo不負任何責任!中文下的話,把nian換成年,yue換成月,ri換成日就行 我的linux不支援中文,只好用拼音代替。include include include int main return 用qt顯示圖形介面。每秒重新整理如果要求精度不高,這樣就可以 whi...

怎樣在windows7系統下安裝xp虛擬機器

你可以試一下微軟自家的虛擬機器,microsoft virtual pc,完美支援微軟的所有系統,甚至是win7 就是可以在虛擬機器裡安裝win7 並且是免費的,有漢化版 首先要檢查一下你的cpu是否支援虛擬模式,然後才到裝虛擬機器的步驟 詳細教程請看這裡 http hi.32位的win7系統可以安...