windows交叉編譯環境
Ⅰ windows eclipse c++怎麼交叉編譯linux
Eclipse 一般用作java開發,但也可以用作C/C++開發工具。那麼,在 Linux 系統下,怎樣安裝 eclipse 用來編譯 C/C++ 程序呢?
工具/原料
Eclipse IDE for c/c++ 安裝包
一、下載 Eclipse IDE for c/c++ 安裝包
1
啟動 Linux 系統,使用瀏覽器從 eclipse 官網下載 Eclipse IDE for c/c++ 安裝包。地址見圖。
2
下載時,請根據你的系統版本下載相應的安裝包。由於我是 CentOS 6.6 32位版本,自然是下載 Linux 32 位的。
3
在這兒說明一下,使用此安裝包,可以免去安裝 eclipse 後還需配置 CDT 的煩惱。作為一個 c/c++ 程序開發者,深感比以前方便了不少。
END
二、安裝 Eclipse IDE for c/c++
1
下載完成後,進入 Eclipse 安裝包所在目錄,在空白處右擊滑鼠,啟動終端。
2
安裝 Eclipse 之前,請確保安裝了以下組件並更新到最新版:
1、Java 環境
2、gcc 和 g++
下面簡單介紹一下檢測方法:
1、查詢 java 版本(通用):java -version
2、查詢 gcc 版本(紅帽系列):rpm -qa gcc
3
下面進入 eclipse 的安裝環節,非常簡單。總體來說是解壓後即可用。
首先,登陸 root 帳戶,鍵入命令 tar -zxvf 安裝包名,回車,將壓縮包解壓到當前目錄下。
4
解壓完成後,鍵入 ls ,可以看到當前目錄多了一個目錄 eclipse 。
鍵入 cp -r eclipse /opt/ ,將 eclipse 目錄下的所有文件復制到 /opt 目錄下(這個目錄隨你喜好了,不復制也行)。
END
三、使用 eclipse
1
如果像我上面那樣將 eclipse 文件夾復制到了 opt 目錄,在終端鍵入 /opt/eclispe/eclipse,回車。eclipse 就啟動了。
2
註:為了便於英語不好的同學理解,我下面全用中文,實際菜單為英文。
1)新建工程
首次啟動時,會提示你程序代碼保存位置,然後可能還會出現歡迎界面(關閉掉歡迎界面,IDE界面就可以看到了)。點擊「文件」-「新建」-「c++工程」。
3
為工程取一個名字(例如 test),選擇「空工程」,其餘選項保持默認(下同),點擊「下一步」。
4
在接下來的頁面中,繼續點擊「下一步」,最後點擊「完成」。
5
2)添加代碼文件
點擊「文件」-「新建」-「源文件」。
6
填寫源文件名,切記,一定要加擴展名。
7
下面,就可以在源文件中書寫代碼。書寫代碼時,系統有時會給出一些錯誤提示,如果你確認你的代碼沒有寫錯,不要去理會。
8
代碼寫完後,點擊工具欄的小三角按鈕即可對代碼編譯運行,如果彈出提示框問你「代碼已經修改,是否保存」,點擊「是」。
9
運行的結果輸出在下邊的框里。
END
注意事項
安裝 eclipse 前,要確保必須的組件已經安裝。
添加程序代碼文件時,一定要加上擴展名。
Ⅱ 如何在windows平台下交叉編譯gcc-C/C++
我怎麼記得回答過呢? cygwin + 交叉編譯器(這個必須是 for cygwin 的) Colinux + 交叉編譯器(這個直接可以用 Linux 下面的) 虛擬機 + 交叉編譯器(同上,虛擬機里就是一個 Linux) 雙引導進 Linux + 交叉編譯器
Ⅲ 如何構建交叉編譯環境。
你說的是我下面的回答嗎?下面就一些問題作一個說明,以期拋磚引玉。
基於Linux操作系統的應用開發環境一般是由目標系統硬體(開發板)和宿主PC機所構成。目標硬體開發板用於運行操作系統和系統應用軟體,而目標板所用到的操作系統的內核編譯、應用程序的開發和調試則需要通過宿主PC機來完成(所以稱為交叉編譯)。雙方之間一般通過串口,並口或乙太網介面建立連接關系。
但在此我建議構建如下的交叉編譯環境,適合個人或研發小組使用:單獨拿出一台PC機(PII以上即可,就用以前淘汰的舊機器就可以),在該PC上安裝桌面的Linux操作系統(如Red Hat Linux 8.0及以上),可以採用默認的安裝選項(注意要包含ftp服務),這台PC作為Linux伺服器,除管理員以外,一般不直接讓其他人去操作。
將該Linux伺服器接入區域網,並新建一些合法用戶,以便其他的PC機(在此我們將其稱為工作站)的合法用戶能訪問到Linux伺服器。而其他的PC機(工作站)仍然使用Windows操作系統,原來幹啥繼續幹啥。
需要的軟體工具包括:
1、FTP客戶端程序(如Cuteftp,可到網上下載)。
2、Telnet工具(如SecureCRT,可到網上下載)。
3、移植到某一特定ARM平台的Linux操作系統內核源碼(一般由銷售商整理提供)。
4、GNU編譯工具,可由相關網站下載,或由銷售商整理提供。
在工作站安裝:
在某工作站PC上安裝FTP客戶端程序和Telnet工具,安裝完畢後應該可以在該工作站PC和Linux伺服器之間進行文件的傳輸,並在工作站PC可以通過Telnet登陸到Linux伺服器(可能需要將Linux伺服器的防火牆服務關閉才能完成)。
在Linux伺服器安裝:
將工作站PC上的Linux操作系統內核源碼壓縮包和GNU編譯工具通過FTP傳送到Linux伺服器的某個目錄(如合法的用戶目錄),然後在該目錄下解壓,並將GNU編譯工具安裝到默認的工作目錄即可,以上工作通過在工作站PC使用Telnet工具完成,而不需要在Linux伺服器上進行。
Linux操作系統內核的編譯:
Linux操作系統內核的編譯一般有一個比較固定的步驟,會根據MakeFile文件的不同而略有差異,可參考相關文檔,編譯的工作在工作站PC使用Telnet工具完成。
Ⅳ 能否在windows上搭建arm-linux交叉編譯環境
這個估計沒必要,安裝一個虛擬機,然後安裝一個桌面版的里Linux系統,再在系統中安裝一個vim編輯器,再安裝一個gdb調試器,最後再arm-linux-gcc就可以編譯c文件了,要是你的很多源程序文件都在windows系統中,你可以設置Windows與Linux共享文件。這些東西在網上都可以找到教程,剛開始可能覺得Linux系統很不方便,但是要熟悉Linux系統就必須經常呆在Linux系統中,希望能幫到你。
Ⅳ 如何在windows下面編譯u-boot
1. 執行:apt-get install mingw32安裝了linux-windows交叉編譯環境mingwin
2. 執行:. build/envsetup.sh
3. 執行choosecombo,選擇各個參數
這兩步設置了一些編譯參數和環境變數,按照你正常編譯Android的設置即可。
4. 執行:make USE_MINGW=y adb
5. 執行:make USE_MINGW=y fastboot
最後到out/host/windows-x86/bin目錄下就能找到你剛剛編譯的東西了。
Ⅵ 如何在Windows上建立arm-linux開發環境
如何在Windows上建立arm-linux開發環境 FriendlyARM 目 前,有很多地方介紹了如何在cygwin上為ARM7建立arm-elf-gcc交叉編譯工具鏈,但是對ARM9卻鮮有介紹,為了方便大家更好在 Windows上進行嵌入式linux開發,我們鋒則在cygwin上移植了arm-linux-gcc for ARM920T。 要在Windows上建立arm-linux開發環境,您需要先安裝cygwin(見「cygwin完全安裝指南」)。
1. 解壓交叉編譯器 下載:FriendlyARM.tgz 下載gdbserver(for ARM920t):gdbserver.tgz 下載gdbserver所依賴的庫:lib-for-gdbserver.tgz(請把庫解壓到目標板的/usr/lib目錄下) #mkdir /opt ;創建opt目錄,如果已經存在則不需要創建 #tar xvzf FriendlyARM.tgz -C /opt ;把交叉編譯器安裝在/opt/FriendlyARM目錄,注意必須是此目錄 2. 配置啟動腳本/etc/profile 3. 測試 退出cygwin,重新啟動一個終端,輸入:arm-linux-gcc -v,如果出現以前讓下信慧基局息,說明您已經正確安裝,否則仔細檢查/etc/profile是否配置好。
Ⅶ windows7下搭建eclipse對stm32的交叉編譯環境,ECLIPSE(C/C++ JUNO)+yagarto+mingw+gunplugin gcc版本
JRE的版本問題,導致插件不能使用,導致不能連接到有效的庫文件,所以,重裝吧。一定要選對版本
Ⅷ 如何在windows上用ndk交叉編譯其他平台程序
目標 :編譯arm64的.so庫
編譯方法:理論上應該有兩種交叉編譯方法,法一,在Linux伺服器上安裝交叉工具鏈,直接用交叉工具鏈進行編譯鏈接;法二,使用ndk完成交叉編譯,因為
ndk已經安裝好交叉編譯工具鏈,以及相關的系統庫和系統頭文件了。這兩種方法的區別在於,linux伺服器上的編譯使用的makefile和ndk使用的.mk
文件顯然不同。原因是ndk作為一個集成編譯環境,制定了一套特定的規則用於生成最終的編譯腳本。
這里簡單總結下,如何在windows用ndk進行交叉編譯arm64目標平台的.so庫:
step1:找到ndk開發工具包,官網之類的都可以下載,Android-ndk64-r10-windows-x86_64.rar文件
step2:解壓上述ndk工具包,將包含程序源文件和頭文件的文件夾testProject都放入android-ndk-r10下的samples目錄下。
放在其他地方當然也可以,但是後續相對路徑之類的不太好加,既然其他例子都放這,把代碼放這編譯是最保險的了。
step3:在testProject中增加一個jni的文件夾,必須要添加!!!!!!
step4:在jni文件夾中,添加一個Android.mk的文件,必須要添加!!!!!
step5:在jni文件夾中,添加一個Application.mk的文件與Android.mk並列,必須要添加!!!!!
step6:Android.mk和Application.mk合起來就類似於linux環境下的makefile編譯文件。
如何寫Android.mk,可以參考例子helllo-jni中jni文件夾下的Android.mk。
LOCAL_PATH:=$(call my-dir) #必須要寫的
include $(CLEAR_VARS) #必須要寫的
LOCAL_MODULE:=hello-jni #編譯出來的模塊名稱
LOCAL_SRC_FILES:=hello-jni.c #制定編譯的源文件名稱
include $(BUILD_SHARED_LIBRARY)#放在最後
除了上述變數之外,還有其他的指定的變數,
LOCAL_CFLAGS,用於指定編譯選項,這個和makefile中是完全一樣的,可以指定編譯選項-g,也可以指定編譯宏及宏值
LOCAL_LDLIBS,用於指定鏈接的依賴庫,這個可以makefile也是完全一樣的,可以指定鏈接庫用-l庫名,以及指定庫搜索路徑用_L路徑名
LOCAL_STATIC_LIBRARIES,指定鏈接的靜態庫名,makefile中沒有
LOCAL_C_INCLUDES,用於指定編譯頭文件的路徑,和makefile中不同,路徑前不需要加-I,直接寫路徑即可,可以是相對路徑或絕對路徑,
多個路徑之間用空格隔開。
編寫上述Android.mk碰到的問題有,
(1)使用默認的系統自動載入stl庫頭文件總是出錯,只好手動在LOCAL_STATIC_LIBRARIES指定sources/cxx-stl/stlport/stlport來完成對#include<string>這種c++形式的頭文件載入
(2)使用$(SYSROOT)/usr/include來完成對系統庫頭文件的載入,結果找不到sem_t符號,只好指定platforms/android-L/arch-arm64/usr/include
step7:Application.mk編寫
APP_STL指定使用的stl移植庫,動態或者靜態都行
APP_CPPFLAGS,指定app編譯的編譯選項
APP_ABI指定abi規范類型,例如arm64-v8a,也可以寫成ALL就是把所有的類型全部編一編
APP_PLATFORM指定編譯的platform名稱,這里可以寫成android-L或者不指定全編。
step8:編譯完成後,運行。
啟動cmd,使用cd /D進行到testProject的jni目錄下
step9:將android-ndk-r10下的ndk-build.cmd直接拖拽到cmd中,此時直接敲回車,就可以編譯了。當然也可以加一個 clean,清除編譯中間文件。
step10:檢查下編譯結果,編譯成功後在testProject中多了兩個文件夾與jni並列的,libs和obj。
編譯鏈接後的結果就在libs中!