「arm none linux gnueabi」的推薦目錄:
- 關於arm none linux gnueabi 在 コバにゃんチャンネル Youtube 的最讚貼文
- 關於arm none linux gnueabi 在 大象中醫 Youtube 的精選貼文
- 關於arm none linux gnueabi 在 大象中醫 Youtube 的最佳解答
- 關於arm none linux gnueabi 在 [問題] 請問有關arm-none-linux-gnueabi編譯器的問題 - 批踢踢 ... 的評價
- 關於arm none linux gnueabi 在 Ubuntu: arm-none-linux-gnueabi-gcc: permission denied error 的評價
arm none linux gnueabi 在 大象中醫 Youtube 的精選貼文
arm none linux gnueabi 在 大象中醫 Youtube 的最佳解答
arm none linux gnueabi 在 Ubuntu: arm-none-linux-gnueabi-gcc: permission denied error 的美食出口停車場
Ubuntu: arm-none-linux-gnueabi-gcc: permission denied errorHelpful? Please support me on Patreon ... ... <看更多>
arm none linux gnueabi 在 [問題] 請問有關arm-none-linux-gnueabi編譯器的問題 - 批踢踢 ... 的美食出口停車場
文章有點長,還要請各位包含^^
小弟本來運作良好的平台環境如下:
CPU是ARM9系列(FA526)
Kernel 2.6.21
arm-linux-gcc (GCC) 3.4.4
busybox-1.13.4(static link)
Kernel Menuconfig中
[]Initial RAM filesystem and RAM disk 有開啟
由於有另外一個平台(不同CPU)採用的編譯器版本是arm-none-linux-gnueabi-gcc
於是乎小弟興起了想將我這個平台用這個編譯器編譯的想法
上網google了一下發現要用此編譯器編譯kernel config中需要開啟
Kernel Features --->
[ ] Use the ARM EABI to compile the kernel
以及
Floating point emulation --->
[ ] NWFPE math emulation
當我將之開啟,一開始不知為何在編譯過程中最後linking的會發生__aeabi_llsl之類
的函式未定義的問題,後來在 /kernel_source/arch/arm/lib/
裡面找到問題點:
即是在這個資料夾裡面有好幾個檔名一樣的.C 及.S, C檔只有函式宣告以及extern
而.S檔是函式真正的定義...所以我將所有的C檔殺掉之後讓make可以吃到真正的
函式之後可以成功建出zImage(不曉得這樣做是對的嗎?)
當我開心的燒錄並且開機之後進到要開始執行/init時(init_post())就沒有反應了,
我trace了一下發覺最後kernel是停在kernel_execve()
[kernel_source/arch/arm/kernel/sys_arm.c]
裡面的一段組合語言(似乎是在做跳轉到userspace的動作?)
我的/init是一個script 主要內容如下:
######################################################
#!/bin/busybox ash
/bin/busybox mount -t sysfs /dev/sys /sys
/bin/busybox mount -t proc /proc
/bin/busybox mount -t devpts /dev/pts
# Populate /dev according to /sys
/bin/busybox mdev -s
/bin/busybox --install -s
/linuxrc
exec /sbin/init "$@" </dev/console >/dev/console 2>&1
######################################################
執行檔busybox我用arm-none-linux-gnueabi-gcc重build過,也試過
將另外一個平台上可以執行的busybox放到我的板子上結果也是不行
另外也試過自己用寫一個簡單的hello world用該編譯器編譯並命名為
busybox放到板子上結果也是不行的...
不曉得是因為kernel開了EABI的關係嗎?板上如果有大大有相關的經驗可以告訴我
大概是哪邊出了問題,小弟感激不盡 ^^
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 219.87.142.254
... <看更多>