虛擬機UBUNTU12.04 64bit 701N 芯片是7020clg400 XILINX的交叉編譯器安裝 主要就是安裝出現(xiàn)的一些問題,,方法總結: 主要涉及的問題是,ubuntu12.04 64位系統(tǒng),不能再采用sudo apt-get install ia32-libs命令,,這樣我們得到的問題是: 下列軟件包有未滿足的依賴關系: 網(wǎng)上也沒有找到合適的方法,。 解決辦法: $ sudo apt-get install libc6:i386 libgcc1:i386 gcc-4.6-base:i386 libstdc++5:i386 libstdc++6:i386 (第一步庫安裝) 我本意是運行adb的。運行adb時,,發(fā)現(xiàn)缺乏libncurses5庫,,自己動手,豐衣足食,比葫蘆畫瓢,, $sudo apt-get install libncurses5:i386 在64位下,,gcc默認編譯代碼位64位的,但是,,如果你想編譯位的,,可以用gcc -m32選項,來設置,。 不過,,不幸的是,會出現(xiàn)錯誤,,說找不到 /usr/include/features.h文件什么的,。google一下,發(fā)現(xiàn)用這種方法: $sudo apt-get install g++-multilib 運行上面三個兼容庫,,便能解決高版本64位系統(tǒng)的兼容以及依賴問題,。希望大家加油努力嘗試,有什么問題請在下面留言,。 二,、Uboot編譯 由于系統(tǒng)限制,依賴和版本問題,,由此出現(xiàn)一些問題需要解決,,下面全部給出 cd uboot(文件夾) make zynq_zybo_config配置文件 報錯:我的電腦 上的關于交叉編譯工具的環(huán)境變量是 arm-xilinx-linux-gcc make: *** [tools] Error 2 這個是openssl的依賴的問題,運行命令sudo apt-get install libssl-dev 即可解決,。 這次一次性編譯到底了。 由于我用的ubuntu12.04所以會繼續(xù)報錯 根據(jù)uboot編譯打印信息: dtc [options] <input file> 報錯信息后面省略,。,。。,。 也就是DTC版本不對,,大家可以用$dtc -v命令查看自己的版本,我看需要DTC1.4所以我下載對應的安裝,。 32位:https:///ubuntu/xenial/i386/device-tree-compiler/1.4.0+dfsg-2 64位:https:///ubuntu/xenial/amd64/device-tree-compiler/1.4.0+dfsg-2 請大家注意下載,。 下載.dep文件,進行目錄內使用dpkg -i device-tree-compiler_1.4.0+dfsg-2_i386.deb 進行安裝,。 安裝后查看dtc版本為1.4.0,,OK 到此生成出來uboot.img,恭喜大家 三、內核編譯 內核編譯命令: zt@zt-virtual-machine:~/ZYNQ/User_file/V2017.4/linux-xlnx-xlnx_rebase_v4.9_2017.4$make ARCH=arm CROSS_COMPILE=/home/zt/ZYNQ/User_file/CodeSourcery/bin/arm-xilinx-linux-gnueabi- UIMAGE_LOADADDR=0x8000 uImage 報錯:'mkimage' command not found - U-Boot images will not be built make[1]: *** [arch/arm/boot/uImage] 錯誤 1 make: *** [uImage] 錯誤 2 解決:按照以往經(jīng)驗,,我們需要安裝依賴包: sudo apt-get install uboot-mkimage 在我的ubuntu16.04 64bit上無法進行安裝,,因此我們用方法二: 將uboot路徑下的tools文件夾,設置到環(huán)境/etc/bash.bashrc下面: export PATH=/home/paddyzhang/zynq_701n_linux/packages/u-boot-xlnx-xilinx-v2017.4/tools:$PATH 這是我的路徑,,可以根據(jù)你們自己的路徑進行設置,。 這樣我們的內核編譯結束。 四,、我們生成自己需要的設備樹文件,。 命令:./scripts/dtc/dtc -I dts -O dtb -o devicetree.dtb /arch/arm/boot/dts/zynq_zybo.dts 這樣可以生成dtb文件。但是我的虛擬機linux上會報錯: paddyzhang@paddyzhang-virtual-machine:/mnt/hgfs/F/board_file/701N/linux/dts$ dtc -I dts -O dtb -o system02.dtb zynq-zybo.dts FATAL ERROR: Unable to parse input tree 解決辦法:根據(jù)我測試和對比發(fā)現(xiàn)是include文件有點問題需要處理下: 將這個文件自己處理為這樣再生成,。我們也根據(jù)自己的要求和需要來定制設備樹,,來適應我們的工程,我的理解為這樣,。所以設備樹先生成一個,,如果PL工程更改了,我們自己在設備樹添加節(jié)點應該就OK了,。 |
|
來自: wanglh5555 > 《待分類》