⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 00000005.htm

📁 水木社区 embeded 版精华区 下载
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<?xml version="1.0" encoding="gb2312"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"/><title>linux for ppc chapter 5                jacobw </title></head><body><center><h1>BBS 水木清华站∶精华区</h1></center><a name="top"></a>发信人:&nbsp;plato&nbsp;(纯真年代),&nbsp;信区:&nbsp;Embedded&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />标&nbsp;&nbsp;题:&nbsp;linux&nbsp;for&nbsp;ppc&nbsp;chapter&nbsp;5&nbsp;<br />发信站:&nbsp;BBS&nbsp;水木清华站&nbsp;(Wed&nbsp;May&nbsp;30&nbsp;23:11:38&nbsp;2001)&nbsp;<br />&nbsp;<br />Next&nbsp;Previous&nbsp;Contents&nbsp;<br />----------------------------------------------------------------------------&nbsp;<br />----&nbsp;<br />5.&nbsp;Compiler&nbsp;Toolset&nbsp;<br />You'll&nbsp;need&nbsp;the&nbsp;GNU&nbsp;toolchain&nbsp;to&nbsp;compile&nbsp;the&nbsp;kernel,&nbsp;particularly&nbsp;gcc&nbsp;and&nbsp;bi&nbsp;<br />nutils&nbsp;As&nbsp;a&nbsp;general&nbsp;rule&nbsp;for&nbsp;working&nbsp;with&nbsp;GNU&nbsp;software,&nbsp;the&nbsp;latest&nbsp;official&nbsp;&nbsp;<br />release&nbsp;is&nbsp;the&nbsp;best&nbsp;supported,&nbsp;has&nbsp;the&nbsp;most&nbsp;features&nbsp;and&nbsp;is&nbsp;usually&nbsp;the&nbsp;most&nbsp;<br />&nbsp;stable.&nbsp;Also,&nbsp;you&nbsp;must&nbsp;use&nbsp;compatible&nbsp;versions,&nbsp;and&nbsp;there&nbsp;is&nbsp;generally&nbsp;no&nbsp;e&nbsp;<br />asy&nbsp;way&nbsp;to&nbsp;know&nbsp;which&nbsp;binutils&nbsp;version&nbsp;matches&nbsp;which&nbsp;arbitrary&nbsp;gcc&nbsp;version&nbsp;a&nbsp;<br />s&nbsp;their&nbsp;releases&nbsp;aren't&nbsp;synchronised.&nbsp;Hence,&nbsp;the&nbsp;best&nbsp;approach&nbsp;is&nbsp;generally&nbsp;&nbsp;<br />to&nbsp;start&nbsp;by&nbsp;using&nbsp;the&nbsp;latest&nbsp;official&nbsp;release&nbsp;of&nbsp;any&nbsp;given&nbsp;package&nbsp;from&nbsp;your&nbsp;<br />&nbsp;nearest&nbsp;GNU&nbsp;ftp&nbsp;site&nbsp;listed&nbsp;at&nbsp;<a href="http://www.gnu.org/order/ftp.html.">http://www.gnu.org/order/ftp.html.</a>&nbsp;<br />Many&nbsp;people&nbsp;use&nbsp;a&nbsp;particular&nbsp;version&nbsp;simply&nbsp;because&nbsp;they&nbsp;already&nbsp;have&nbsp;the&nbsp;so&nbsp;<br />urce&nbsp;for&nbsp;it&nbsp;lying&nbsp;around,&nbsp;and&nbsp;waste&nbsp;a&nbsp;lot&nbsp;of&nbsp;time&nbsp;tracking&nbsp;down&nbsp;problems&nbsp;whi&nbsp;<br />ch&nbsp;were&nbsp;fixed&nbsp;by&nbsp;others&nbsp;months&nbsp;or&nbsp;even&nbsp;years&nbsp;ago.&nbsp;Grab&nbsp;the&nbsp;latest&nbsp;version&nbsp;at&nbsp;<br />&nbsp;the&nbsp;outset,&nbsp;and&nbsp;you'll&nbsp;save&nbsp;an&nbsp;enormous&nbsp;amount&nbsp;of&nbsp;wasted&nbsp;effort.&nbsp;<br />If&nbsp;you&nbsp;need&nbsp;newer&nbsp;features&nbsp;which&nbsp;aren't&nbsp;in&nbsp;an&nbsp;official&nbsp;release&nbsp;yet,&nbsp;you&nbsp;may&nbsp;&nbsp;<br />need&nbsp;to&nbsp;move&nbsp;forward&nbsp;to&nbsp;the&nbsp;latest&nbsp;development&nbsp;snapshot&nbsp;from&nbsp;<a href="http://sources.">http://sources.</a>&nbsp;<br />redhat.com/.&nbsp;<br />5.1&nbsp;Building&nbsp;the&nbsp;toolchain&nbsp;<br />Instructions&nbsp;<br />A&nbsp;set&nbsp;of&nbsp;complete&nbsp;instructions&nbsp;for&nbsp;building&nbsp;a&nbsp;Cross&nbsp;Development&nbsp;system&nbsp;for&nbsp;L&nbsp;<br />inux/PPC&nbsp;is&nbsp;available&nbsp;at:&nbsp;<a href="http://members.home.net/mmporter/linux/cross/">http://members.home.net/mmporter/linux/cross/</a>&nbsp;<br />Build&nbsp;Scripts&nbsp;<br />For&nbsp;pre-packaged&nbsp;scripts&nbsp;to&nbsp;build&nbsp;a&nbsp;PPC&nbsp;Cross&nbsp;Development&nbsp;Kit&nbsp;for&nbsp;MPC8xx,&nbsp;se&nbsp;<br />e:&nbsp;<a href="ftp://ftp.denx.de/pub/LinuxPPC/usr/src/CD-README">ftp://ftp.denx.de/pub/LinuxPPC/usr/src/CD-README</a>&nbsp;and&nbsp;<a href="ftp://ftp.denx.de/pu">ftp://ftp.denx.de/pu</a>&nbsp;<br />b/LinuxPPC/usr/src/CDK.tar.gz&nbsp;<br />SPARC/Solaris&nbsp;Hosted&nbsp;<br />For&nbsp;a&nbsp;guide&nbsp;to&nbsp;building&nbsp;the&nbsp;PowerPC/Linux&nbsp;cross&nbsp;compiler&nbsp;for&nbsp;a&nbsp;SPARC/Solaris&nbsp;<br />&nbsp;host&nbsp;(if&nbsp;you&nbsp;can't&nbsp;use&nbsp;a&nbsp;Linux&nbsp;development&nbsp;host),&nbsp;see:&nbsp;<a href="http://www.borg.umn.">http://www.borg.umn.</a>&nbsp;<br />edu/~grant/Linux/cross.html&nbsp;<br />Getting&nbsp;Help&nbsp;<br />If&nbsp;you&nbsp;want&nbsp;to&nbsp;build&nbsp;a&nbsp;more&nbsp;exotic&nbsp;or&nbsp;unusual&nbsp;cross&nbsp;development&nbsp;environment,&nbsp;<br />&nbsp;or&nbsp;need&nbsp;more&nbsp;help&nbsp;building&nbsp;the&nbsp;cross&nbsp;development&nbsp;tools,&nbsp;check&nbsp;out&nbsp;the&nbsp;cross&nbsp;<br />gcc&nbsp;FAQ&nbsp;and&nbsp;mailing&nbsp;list&nbsp;at:&nbsp;<a href="http://www.objsw.com/CrossGCC/">http://www.objsw.com/CrossGCC/</a>&nbsp;<br />5.2&nbsp;gcc&nbsp;<br />Check&nbsp;that&nbsp;you&nbsp;have&nbsp;the&nbsp;latest&nbsp;gcc&nbsp;(2.95.2).&nbsp;Don't&nbsp;waste&nbsp;your&nbsp;time&nbsp;with&nbsp;any&nbsp;&nbsp;<br />of&nbsp;the&nbsp;egcs&nbsp;releases&nbsp;as&nbsp;they've&nbsp;now&nbsp;been&nbsp;superceeded&nbsp;by&nbsp;gcc.&nbsp;<br />If&nbsp;you're&nbsp;using&nbsp;gcc-2.95.2&nbsp;with&nbsp;binutils-2.9.1.0.25,&nbsp;you'll&nbsp;need&nbsp;a&nbsp;minor&nbsp;cha&nbsp;<br />nge&nbsp;to&nbsp;the&nbsp;gcc&nbsp;specs&nbsp;file&nbsp;regarding&nbsp;the&nbsp;linker&nbsp;emulation.&nbsp;You're&nbsp;better&nbsp;off&nbsp;&nbsp;<br />just&nbsp;using&nbsp;binutils-2.10&nbsp;though.&nbsp;<br />5.3&nbsp;binutils&nbsp;<br />There&nbsp;are&nbsp;currently&nbsp;two&nbsp;branches&nbsp;of&nbsp;binutils&nbsp;development&nbsp;to&nbsp;choose&nbsp;from.&nbsp;Eac&nbsp;<br />h&nbsp;have&nbsp;pro's&nbsp;and&nbsp;con's,&nbsp;and&nbsp;in&nbsp;many&nbsp;cases&nbsp;either&nbsp;one&nbsp;will&nbsp;work&nbsp;for&nbsp;you.&nbsp;They&nbsp;<br />&nbsp;are&nbsp;typically&nbsp;referred&nbsp;to&nbsp;as&nbsp;the&nbsp;official&nbsp;&quot;GNU&nbsp;binutils&quot;&nbsp;and&nbsp;the&nbsp;&quot;Linux&nbsp;bin&nbsp;<br />utils&quot;,&nbsp;although&nbsp;both&nbsp;are&nbsp;GPL'd&nbsp;GNU&nbsp;software,&nbsp;and&nbsp;both&nbsp;versions&nbsp;configure,&nbsp;b&nbsp;<br />uild&nbsp;and&nbsp;work&nbsp;fine&nbsp;on&nbsp;Linux.&nbsp;I&nbsp;suggest&nbsp;you&nbsp;use&nbsp;the&nbsp;official&nbsp;GNU&nbsp;version,&nbsp;unl&nbsp;<br />ess&nbsp;you&nbsp;encounter&nbsp;a&nbsp;problem&nbsp;which&nbsp;requires&nbsp;the&nbsp;&quot;Linux&nbsp;binutils&quot;&nbsp;version.&nbsp;<br />Official&nbsp;GNU&nbsp;binutils&nbsp;<br />This&nbsp;tends&nbsp;to&nbsp;be&nbsp;the&nbsp;most&nbsp;stable&nbsp;version.&nbsp;The&nbsp;last&nbsp;release&nbsp;was&nbsp;2.10,&nbsp;which&nbsp;i&nbsp;<br />s&nbsp;your&nbsp;best&nbsp;bet.&nbsp;It&nbsp;works&nbsp;well&nbsp;with&nbsp;gcc-2.95.2,&nbsp;whereas&nbsp;the&nbsp;2.9.1&nbsp;needed&nbsp;a&nbsp;t&nbsp;<br />weak.&nbsp;If&nbsp;you&nbsp;must&nbsp;use&nbsp;the&nbsp;bleeding&nbsp;edge,&nbsp;the&nbsp;development&nbsp;snapshots&nbsp;on&nbsp;source&nbsp;<br />s.redhat.com&nbsp;are&nbsp;quite&nbsp;stable.&nbsp;<br />The&nbsp;most&nbsp;recent&nbsp;snapshot&nbsp;is&nbsp;available&nbsp;at&nbsp;<a href="ftp://sources.redhat.com/pub/binuti">ftp://sources.redhat.com/pub/binuti</a>&nbsp;<br />ls/snapshots/binutils.tar.bz2&nbsp;<br />H.&nbsp;J.&nbsp;Lu's&nbsp;&quot;Linux&nbsp;binutils&quot;&nbsp;<br />At&nbsp;any&nbsp;given&nbsp;point&nbsp;in&nbsp;time,&nbsp;this&nbsp;version&nbsp;is&nbsp;based&nbsp;on&nbsp;recent&nbsp;official&nbsp;GNU&nbsp;dev&nbsp;<br />elopment&nbsp;snapshot,&nbsp;but&nbsp;with&nbsp;more&nbsp;experimental&nbsp;features&nbsp;and&nbsp;hastily&nbsp;implement&nbsp;<br />ed&nbsp;bugfixes.&nbsp;It&nbsp;is&nbsp;shipped&nbsp;with&nbsp;many&nbsp;Linux&nbsp;distributions.&nbsp;However,&nbsp;the&nbsp;chang&nbsp;<br />es&nbsp;in&nbsp;this&nbsp;version&nbsp;aren't&nbsp;as&nbsp;thoroughly&nbsp;reviewed&nbsp;and&nbsp;tested&nbsp;as&nbsp;those&nbsp;in&nbsp;the&nbsp;&nbsp;<br />official&nbsp;version,&nbsp;and&nbsp;the&nbsp;less&nbsp;well&nbsp;implemented&nbsp;features&nbsp;probably&nbsp;won't&nbsp;make&nbsp;<br />&nbsp;it&nbsp;back&nbsp;into&nbsp;the&nbsp;official&nbsp;GNU&nbsp;version,&nbsp;so&nbsp;it's&nbsp;a&nbsp;good&nbsp;idea&nbsp;not&nbsp;to&nbsp;rely&nbsp;on&nbsp;t&nbsp;<br />hem.&nbsp;<br />Version&nbsp;numbering&nbsp;is&nbsp;somewhat&nbsp;confusing.&nbsp;The&nbsp;Linux&nbsp;binutils&nbsp;2.9.5.x&nbsp;versions&nbsp;<br />&nbsp;are&nbsp;based&nbsp;on&nbsp;snapshots&nbsp;of&nbsp;the&nbsp;official&nbsp;development&nbsp;post&nbsp;2.9.1.&nbsp;In&nbsp;particula&nbsp;<br />r,&nbsp;any&nbsp;given&nbsp;version&nbsp;of&nbsp;Linux&nbsp;binutils&nbsp;numbered&nbsp;2.9.5.x&nbsp;is&nbsp;not&nbsp;necessarily&nbsp;a&nbsp;<br />&nbsp;later&nbsp;version&nbsp;than&nbsp;an&nbsp;official&nbsp;GNU&nbsp;development&nbsp;snapshot&nbsp;numbered&nbsp;2.9.1.x.&nbsp;<br />Beware&nbsp;that&nbsp;Linux&nbsp;binutils-2.9.5.0.27&nbsp;thru&nbsp;29&nbsp;will&nbsp;give&nbsp;you&nbsp;multiple&nbsp;definit&nbsp;<br />ions&nbsp;of&nbsp;_dl_start&nbsp;when&nbsp;building&nbsp;glibc-2.1.2.&nbsp;Try&nbsp;the&nbsp;official&nbsp;binutils-2.10&nbsp;&nbsp;<br />instead,&nbsp;or&nbsp;Linux&nbsp;binutils-2.9.5.0.22.&nbsp;<br />5.4&nbsp;Precompiled/Prepackaged&nbsp;Kits&nbsp;<br />

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -