SFFamily 板


LINE

※ [本文转录自 LinuxDev 看板] 作者: ASTRAY (蛇尾佣兵丛云劾) 看板: LinuxDev 标题: [心得] 跌跌撞撞的E680开发环境建置历程-part2 时间: Wed Jun 25 00:24:17 2008 先大概提一下建置toolchain的大致步骤,虽然这应该很多人知道, 不过我还是提一下让完全没接触过的人有个基本概念。 建置toolchain 最粗略的就是作以下的步骤: 1.设定安装 linux header 2.建置binutil(用Host的compiler) 3.建立bootstrap compiler (好像也有人称为 1st stage compiler) 此时的compiler只支援最基本的C语言 4.用前面的binutil, compiler 建置C library(glibc 或 newlib 或 uLibc) 5.用前面的binutil, compiler, C library建置真正以後要用的cross compiler 此时就可以选择再加上其他程式语言的compiler (嵌入式环境一般也顶多加上C++而已) 而这些步骤要做的事情其实也差不多(除了linux header以外) 1.) 抓source code, 解压缩之 2.) 找patch,打补钉之 3.) 建立build-<套件名称> 目录 4.) cd build-<套件名称> 5.) ./configure 下参数 6.) make 对了稍微提一下我的Host环境, ubuntu linux 8.04 x64 因为有两个失败的地方就是跟ubuntu预设值有关 其实我一开始就是要用完全手动的方式建置toolchain,不过吃足了苦头。 因为linux header, binutil, gcc, glib 不是随便任何版本都可以拿来组合在一起的 中间乱七八糟的try and error我也快记不清楚了 我大概讲一下我认为值得注意的部分 1.不要选用太新甚至最新的版本,因为根本没有人出patch, 除非凑巧这个版本加上这个平台没有问题,否则就是有bug要修 可是我们都不是GCC开发人员也不是骇客,没办法自己修改source code 最好去参考那些现成的toolchain(像我之前提到的 GNUARM, WINARM等等) 它们采用的gcc, binutil, C library版本 至少可以确定已知有什麽版本的组合是有人建置成功的 否则就是要自己花时间去try 像我的经验是binutil 2.17是可以不打任何patch就可以通过编译的 (但我後来有看到有人出 bintuil 2.17 的patch) 2.编译GCC的时候注意Host系统上现在用的GCC版本,尽量不要差太多 一开始编译GCC-3.3 一直失败,原因是ubuntu 8.04预设用的是GCC-4 後来老老实实的去装GCC-3.3,把gcc的符号连结改指向 gcc-3.3 才得以通过编译 3.这跟前一个其是算同一类,注意Host系统上有没有缺相依的套件 像是如果要编译GCC-4, 我记得系统上要有libogmp 要编译glibc别忘了还要抓对应版本的glibc-linuxthreads 还有glibc 2.4开始把一些处理器的支援分离出来,所以glibc-ports的也要抓 (连带也影响configure script参数) 由於纯手动建置还得自己找patch,不然完全没辄。 而且每次要./configure 真的会累死人,所以我後来改用crosstool套件来建置 好累,下一篇我只写使用crosstool的注意事项。 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.165.67.138
1F:推 taiying:我也是try了很多 最後受不了直接用crosstool一次搞定 XD 06/25 06:52
2F:推 mizuki2005:真是受益良多阿! 好文 :) 06/25 22:19
-- 三月的柳絮不飞 你的心如小小的寂寞的城 我达达的马蹄是美丽的错误 我不是归人 我是马~ --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.132.117.169







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:WOW站内搜寻

TOP