導航:首頁 > 源碼編譯 > 交叉編譯工具在哪兒

交叉編譯工具在哪兒

發布時間:2023-09-24 22:14:19

『壹』 請問各位linux 系統高手,cross-3.3.2.tar.bz2交叉編譯工具在哪裡可以下載啊,幫幫忙,謝謝!

你要的是crosstool吧?這是GCC交叉編譯工具集的自動安裝腳本,可以到http://www.kegel.com/crosstool/#download下載,最新版本為0.43。

不知道這是不是你在找的。

『貳』 如何在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中!

『叄』 Ubuntu14.04 用arm-linux-gcc 4.4.3 配置交叉編譯環境問題

安裝步驟

1、將壓縮包arm-linux-gcc-4.4.3.tar.gz存放在一個目錄下,這個目錄就是你等會解壓縮的目錄,以後這個目錄就不能隨便刪掉了

『肆』 如何交叉編譯sqlite

一、首先到http://www.sqlite.org/download.html下載Linux版本的源碼:sqlite-autoconf-3130000.tar.gz。

二、解壓:tar xvzf sqlite-autoconf-3130000.tar.gz

三、進入解壓後的目錄:$ cd sqlite-autoconf-3130000

四、執行:./configure CC=/opt/poky/1.6.1/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc --host=arm-linux --prefix= /usr/tmp/

說明:CC賦值為嵌入式開發環境所使用的交叉編譯工具,--host指定軟體運行環境為arm-linux, --prefix指定源碼交叉編譯後生成文件的路徑。

五、執行 sudo make && make install

六、將在 /usr/tmp/lib 目錄下生成的 libsqlite3.so libsqlite3.so.0 libsqlite3.so.0.8.6三個so文件拷貝的,嵌入式開發環境的/lib/目錄 或者程序運行依賴的lib目錄下即可。

將/usr/tmp/bin 目錄下的 sqlite3 應用程序拷貝到嵌入式開發環境下就可以運行並創建資料庫了。

七、編譯程序 需要加上 -l sqlite3 這個鏈接選項。

『伍』 yocto交叉編譯工具在哪個目錄

概述YoctoProject是一個開源協作項目,它提供了一些模板、工具和方法來支持面向嵌入式產品的自定義Linux系統,不管硬體架構是什麼。我想要告訴那些對yocto這個名稱不甚理解的用戶的是,術語yocto是最小的SI單元。最為一個前綴,yocto表示10^-24。本文將提供一個分步指導,向您介紹如何使用YoctoProject的行業標准開源工具為嵌入式設備創建自定義的Linux操作系統,並使用QEMU在一台虛擬機中啟動操作系統。YoctoProject是由大型硬體公司和操作系統供應商資助的、由Linux基金會贊助的開源項目,提供了一些行業領先的工具、方法和元數據來構建Linux系統。YoctoProject的兩大主要組件由YoctoProject和OpenEmbedded項目一起維護,這兩個組件是BitBake和OpenEmbedded-Core,前者是構建引擎,後者是運行構建過程所使用的一套核心配方(recipe)。下一節會介紹所有項目組件。YoctoProject簡介作為一個協作項目,YoctoProject有時也稱為「umbrella」項目,它吸納了許多不同的開發流程部分。在整個YoctoProject中,這些部分被稱為項目,包括構建工具、稱為核心配方的構建指令元數據、庫、實用程序和圖形用戶界面(GUI)。PokyPoky是YoctoProject的一個參考構建系統。它包含BitBake、OpenEmbedded-Core、一個板卡支持包(BSP)以及整合到構建過程中的其他任何程序包或層。Poky這一名稱也指使用參考構建系統得到的默認Linux發行版,它可能極其小(core-image-minimal),也可能是帶有GUI的整個Linux系統(core-image-sato)。您可以將Poky構建系統看作是整個項目的一個參考系統,即運行中進程的一個工作示例。在下載YoctoProject時,實際上也下載了可用於構建默認系統的這些工具、實用程序、庫、工具鏈和元數據的實例。這一參考系統以及它創建的參考發行版都被命名為Poky。您還可以將此作為一個起點來創建您自己的發行版,當然,您可以對此發行版隨意命名。所有構建系統都需要的一個項目是工具鏈:一個編譯器、匯編程序、鏈接器以及為給定架構創建二進制可執行文件所需的其他二進制實用程序。Poky使用了GNUCompilerCollection(GCC),不過您也可以指定其他工具鏈。Poky使用了一種名為交叉編譯的技術:在一個架構上使用工具鏈為另一個架構構建二進制可執行文件(例如,在基於x86的系統上構建ARM發行版)。開發人員常常在嵌入式系統開發中使用交叉編譯來利用主機系統的高性能。元數據集元數據集按層進行排列,這樣一來每一層都可以為下面的層提供單獨的功能。基層是OpenEmbedded-Core或oe-core,提供了所有構建項目所必需的常見配方、類和相關功能。然後您可以通過在oe-core之上添加新層來定製構建。OpenEmbedded-Core由YoctoProject和OpenEmbedded項目共同維護。將YoctoProject與OpenEmbedded分開的層是meta-yocto層,該層提供了Poky發行版配置和一組核心的參考BSP。

『陸』 如何安裝arm-linux-gcc

對於嵌入式linux的來說,建立開發環境是開發的第一步,arm-linux-gcc是基於arm架構的linux平台交叉編譯工具。
工具原料:linux+下載arm-linux-gcc-4.4.3.tar.gz安裝包。
安裝arm-linux-gcc方法如下:
一、下載arm-linux-gcc-4.4.3.tar.gz安裝包。
二、打開終端,輸入
sudo
tar
xvzf
arm-linux-gcc-4.4.3.tar.gz
-C
/
安裝arm-linux-gcc-4.4.3如下圖所示:
三、在終端輸入
sudo
vim
/root/.bashrc,在最後一行輸入:
export
PATH=$PATH:/opt/toolschain/4.4.3/bin加入arm-linux-gcc的開發環境
四、安裝兼容庫,在終端輸入:sudo
apt-get
install
g++-multilib如下圖所示
五、測試成功沒有,登錄root後輸入:
arm-linux-gcc
-v,出現如下圖所示,則安裝成功:
這樣就ok了

『柒』 ubuntu怎麼安裝交叉編譯工具鏈

. 解壓 arm-linux-gcc-3.4.1.tar.bz2
#tar -jxvf arm-linux-gcc-3.4.1.tar.bz2

解壓過程需要一段時間,解壓後的文件形成了 usr/local/ 文件夾,進入該文件夾,將arm文件夾拷貝到/usr/local/下

# cd usr/local/

#cp -rv arm /usr/local/

現在交叉編譯程序集都在/usr/local/arm/3.4.1/bin下面了

3. 修改環境變數,把交叉編譯器的路徑加入到PATH。(有三種方法,強烈推薦使用方法一)

方法一:修改/etc/bash.bashrc文件

#vim /etc/bash.bashrc

在最後加上:

export PATH=$PATH:/usr/local/arm/3.4.1/bin

export PATH

『捌』 虛擬機linux怎麼查看交叉編譯環境

1.安裝源碼編譯環境(配置gcc),在ubuntu安裝完成已經有gcc(gcc是由GNU之父Stallman所開發的linux下的編譯器,全稱為GNU Compiler Collection, 目前可以編譯的語言包括:C, C++, Objective-C, Fortran, Java, and Ada.),但是gcc還不能編譯文件,因為缺少一些頭文件.那麼我們就要來配置這些頭文件。在這里我們需要安裝build-essential這個軟體包,安裝了這個包會自動安裝上g++,libc6-dev,linux-libc-dev,libstdc++6-4.1-dev等一些必須的軟體和頭文件的庫。安裝build-essential,你可以在新立得搜索然後安裝或者在終端里輸入:
sudo apt-get install build-essential

2.除了編輯器之外,我們還需要文本編輯器來編寫程序源碼,Ubuntu中其實已自帶編輯器,但是目前較為著名而且流行的vi / vim 編輯器可以通過在Ubuntu的軟體中心下載,或是在終端輸入指令下載,指令如下:
sudo apt-get install vim-full

3.解壓包:arm-linux-gcc-3.4.5-glibc-2.3.6.tar.bz2,(註:不同文件包類型,指令有區別,如bz2 -xf)如下指令:
sudo tar -xf arm-linux-gcc-3.4.5-glibc-2.3.6.tar.bz2 OR sudo tar -xf arm-linux-gcc-3.4.6-glibc-2.3.6.tgz -C /work/

我的Ubuntu使用第二個指令解壓後解壓包放在了work目錄下。

4.修改環境變數,把交叉編譯器的路徑加入到PATH:方法一:修改/etc/bash.bashrc文件(此文件只對當前用戶適用),指令如下:
sudo gedit /etc/bash.bashrc
然後在文件的末尾空白處加入一下代碼:
if [ -d /work/gcc-3.4.6-glibc-2.3.6 ] ; then
PATH=/work/gcc-3.4.6-glibc-2.3.6/arm-linux/bin:"${PATH}"
fi
即完成路徑的添加。

5.使新的環境變數生效,不用重啟電腦。輸入下面指令:
source /etc/bash.bashrc
6.檢查是否將路徑加入到PATH。輸入下面指令:

echo $PATH
若顯示的內容中含有:/usr/local/arm/4.3.2/bin 說明已經將交叉編譯器的路徑加入PATH。至此,交叉編譯環境安裝完成。

7. 測試是否安裝成功,下面的命令會顯示arm-linux-gcc信息和版本。

閱讀全文

與交叉編譯工具在哪兒相關的資料

熱點內容
安卓快手下載怎麼沒有下載到本地 瀏覽:228
怎麼在安卓手機登繪旅人 瀏覽:404
桌面文件全部加密 瀏覽:401
6s怎麼外接u盤需要什麼app 瀏覽:131
linux查看文件許可權命令 瀏覽:685
安卓手游存檔怎麼用 瀏覽:761
linuxyum安裝ftp 瀏覽:690
村委會主任可以推行政命令嗎 瀏覽:102
電腦文件夾封面多張圖片 瀏覽:263
網吧總伺服器叫什麼 瀏覽:922
多個演算法解決同一個問題 瀏覽:455
小車解壓後我的購車發票呢 瀏覽:977
做app開發用什麼雲伺服器 瀏覽:177
linux網卡子介面 瀏覽:985
21歲職高畢業學程序員怎麼學 瀏覽:321
vs如何對單個文件編譯 瀏覽:6
為什麼有的電腦不能安裝python 瀏覽:75
金蝶迷你版加密狗檢測到過期 瀏覽:186
硬體描述語言編譯結果 瀏覽:655
程序員逆天改命 瀏覽:19