[i.MX6UL]飛凌嵌入式 iMX6UL 開發板Linux編譯
開發環境是開發人員在開發過程當中,所需的軟硬件平臺。開發環境并不是一個固定的樣式,本文中將詳細講解一個嵌入式Linux開發環境搭建的方法。如果您已經對嵌入式開發非常了解的話,可以按照自己的需求來搭建環境。如果和本文環境不一樣而產生報錯,您可以從國內一些Linux論壇和網站搜索相關的信息來解決。本文介紹的環境經過飛凌嵌入式公司的測試,如果對嵌入式開發不是非常熟悉的朋友,希望您按照飛凌嵌入式提供的方法來搭建環境。各位朋友可以放心按照本文說明的方法來搭建開發環境。
1.1 版本說明
? 操作系統: Ubuntu12.04 64 位版
? 交叉工具鏈:arm-fsl-linux-gnueabi-gcc-4.6.2
? Bootloader 版本:u-boot-2015.04
? 內核版本:linux-3.14.38
1.2 編譯環境說明
? Linux PC:在PC上直接安裝ubuntu12.04作為編譯的主機,這樣做的好處是編譯速度快、穩定。
? Vmware8.0+ubuntu12.04:在 XP下安裝虛擬機,并在虛擬機下進行編譯。這種方式的好處是1 臺電腦就可以搭建開發環境,編譯、燒寫都在同一臺電腦完成,缺點是編譯速度太慢,各種網絡服務不穩定。
1.3 編譯環境搭建
1.3.1:Ubuntu的安裝與設置
Ubuntu Linux 介紹:
Ubuntu是一個以桌面應用為主的Linux操作系統。Ubuntu擁有很多優點,相對于其他版本的Linux,Ubuntu也有著自己的優勢。首先,安裝系統非常簡單,只需要非常少的設置即可,完全可以和Windows桌面系統想媲美;其次,圖形界面很人性化,模仿了在xp下常用的快捷鍵;還有,安裝和升級程序時,可以通過網絡,由系統自行安裝依賴的文件包,從此不必再為Linux系統的依賴關系大傷腦筋。綜合考慮大家的使用習慣和學習的需要,我們選用Ubuntu Linux,并在產品光盤中提供了Ubuntu12.04光盤鏡像‘ubuntu-12.04-i386.iso’以便于用戶刻盤和虛擬系統安裝。
Linux桌面系統版本眾多,目前本手冊所有Linux實驗和源碼在ubuntu-12.04版本測試可以通過。使用其他版本Linux桌面系統,可能會出現gcc編譯器和庫文件相關的問題。碰到類似問題,可以在Linux系統發行商的官方論壇上咨詢和查詢。如果對Linux不熟悉的用戶,強烈建議使用飛凌介紹的方法。
另外,為了滿足各位用戶的需求,在本手冊的附錄中,特對VMware虛擬機使用方法進行了詳細的講解。虛擬機相關操作詳見《附錄五:虛擬機VMware-8.0的安裝與設置》
Ubuntu官網: 129Hhttp://www.ubuntu.org.cn
可下載各個版本的Ubuntu。當然,官網能找到各種關于Ubuntu的信息。
Ubuntu官方論壇: 130Hhttp://forum.ubuntu.org.cn/
可以找到大量的實用的Ubuntu資源,中文論壇。Ubuntu也有官方的英文論壇。
1.3.2 安裝Ubuntu
步驟 1 :首先準備一張Ubuntu12.04的安裝光盤。將光盤插入光驅,在PC的bios中把PC啟動方式設置為光驅啟動,啟動PC。
步驟 2 :啟動PC后,安裝盤會提示選擇安裝語言種類。使用PC鍵盤的方向鍵選擇在安裝過程中顯示的語言,在這里我們選擇English>>點擊“Install Ubuntu”按鈕。
步驟 3 :選擇“Erase disk and install Ubuntu”>>點擊“Continue”按鈕
(注意:非虛擬系統會格式化您的硬盤!請謹慎操作。)
步驟 4 :硬盤空間以及掛載點的分配。這里選擇默認。也可根據個人需要來進行設置.單擊“Install Now”
步驟 5 :選擇鍵盤布局,默認即可 ,單擊“Continue”.
步驟 6 :選擇所在地,上海, Continue:
步驟 7 :輸入系統用戶名和密碼,這里輸入的用戶名:forlinx, 密碼:123456僅作為事例.點擊“Continue”按鈕,系統會完成安裝。
注意:這里的用戶名屬于普通用戶,不具備root用戶權限。
1.3.3 Linux終端
在Linux 系統中終端是一個很實用的與操作系統交互的窗口,您可以使用終端來編譯應用程序,啟動各種系統服務,在Linux系統中占據著非常重要的位置。
如圖進行操作,即可將終端設置為快捷鍵。
以后每次單擊啟動面板上的圖標即可運行終端窗口:
1.3.4 Ubuntu12.04 root用戶登錄設置
ubuntu12.04默認是不允許root登錄的,在登錄窗口只能看到普通用戶和訪客登錄。以普通身份登陸Ubuntu后我們需要做一些修改。
步驟
1
:普通用戶登錄后,修改系統配置文件需要切換到超級用戶模式,在終端窗口里面輸入命令后回車:
#sudo -s
步驟 2 :然后輸入安裝Ubuntu12.04時設置的系統密碼,即可進入 root用戶權限模式。
步驟 3 :在終端窗口中執行
#gedit /etc/lightdm/lightdm.conf
步驟 4 :在文本全部內容刪除并粘貼以下七行內容:
[SeatDefaults]
allow-guest=false
autologin-user=root
autologin-user-timeout=0
autologin-session=lightdm-autologin
user-session=ubuntu
greeter-session=unity-greeter
步驟
5
:然后我們啟動root帳號:
# sudo passwd root
步驟
6
:根據提示輸入root帳號密碼。(注意:Linux中輸入密碼無符號顯示)
步驟
7
:重啟ubuntu,不需要手動輸入root用戶名密碼,系統會自動進入root用戶。
1.3.5 設置Ubuntu網絡參數
因為每個PC的網絡環境不一定一樣,所以需要您根據自己的實際情況來設置Ubuntu的網絡,如果設置不成功,可以去Ubuntu的官方論壇上咨詢。本文PC Linux網絡的設置方法,僅供參考。
截圖是設置虛擬機 dhcp自動獲得ip的步驟
選擇nat方式
上述方法設置后,不用在虛擬機設置ip地址了。
步驟 1 :啟動Ubuntu,root用戶登陸系統,單擊桌面最右上端的按鈕,彈出如下選項:
步驟 2 :選擇 System Settings,雙擊 Network進入網絡設置項:
步驟 3 :單擊Options按鈕
步驟 4 :選擇 IPV4設置,輸入您的IP地址、子網掩碼、網關、DNS,點擊Save...,網絡設置成功。
步驟 5 :測試一下,筆者的宿主機IP為192.168.0.30,用虛擬機來ping宿主機:
如圖證明網絡設置成功。
1.3.6 安裝交叉編譯器
步驟 1 :將文件gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12.tar.gz拷貝到Ubuntu主目錄下
1 i.MX6UL 用戶光盤/iMX6UL 用戶光盤(A)\linux\tool\gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12.tar.gz
步驟 2 :在Ubuntu中新建一個終端,輸入下面的命令安裝交叉編譯器:
#cd (進入主目錄)
#mkdir -p /opt/freescale/usr/local (創建目錄,若目錄已存在會提示錯誤,跳過即可)
#tar jxvf gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12.tar.gz -C /opt/freescale/usr/local (編譯器解壓到/opt/freescale/usr/local )
步驟 3 :查看gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12是否解壓成功。
#ls -l /opt/freescale/usr/local
如可以看到gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12文件夾即解壓成功。
步驟 4 :添加環境變量到 Profile,執行命令打開編輯 Profile后,重啟電腦。
#gedit /etc/profile
最后一行添加以下內容
export ARCH=arm
export CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/arm-none-linux-gnueabi-
export PATH=/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin:$PATH
保存并退出。在終端輸入命令,使Ubuntu重啟。
#reboot
步驟
5
: 在終端里面執行以下命令,驗證交叉編譯器安裝是否成功
#arm-fsl-linux-gnueabi-gcc -v
下圖為安裝成功提示
回車,就可以使用該編譯器來編譯 Uboot 代碼和內核代碼了。
注意: 以上操作均是以 root 用戶登錄系統操作為例; 所修改的文件僅對當前用戶有效, 如果通過終端切換用戶,以上修改的文件對新用戶無效。
1.3.7 安裝依賴包
Linux系統的編譯需要安裝一些工具包,可執行本公司提供的腳本進行自動安裝。本節操作前必須確保您的計算機或虛擬機能正常連接互聯網,如您在安裝中出現網絡斷開連接請再按照以下步驟進行安裝。
? 安裝 linux 依賴包 需要在ubuntu12.04 32bit 版本安裝 必須連接互聯網。
步驟 1 :將文件setup_env.sh拷貝到Ubuntu主目錄下
1 i.MX6用戶光盤/i.MX6用戶光盤(A)\linux\tool\setup_env.sh
步驟 2 :給setup_env.sh添加可執行權限
#chmod u+x setup_env.sh
步驟 3 :執行腳本
#./setup_env.sh
步驟 4 :安裝過程中出現如下提示需作出對應操作
此提示按下回車
此提示輸入“Y”后按下回車
1.4 編譯
搭建好開發環境后,接下來進行U-boot和Linux內核在PC Linux的編譯。本文一切操作基于飛凌嵌入式i.MX6UL開發板,關于iMX6UL的資料請聯系飛凌嵌入式在線客服人員
1.4.1 編譯u-boot
uboot源碼 暫不開源,請使用飛凌提供的u-boot.imx,文件所在路徑
? i.MX6UL用戶資料/Linux\image\uboot.imx
如您自行移植u-boot可參考以下方法進行編譯:
步驟 1 :解壓縮uboot源碼,命令如下。