2006.6.16


бѥ顧GCC


ǥ쥯ȥ깽

"user" "bin"        桼Хʥץ
       "copy"       󥹥ȡѥե롦ǥ쥯ȥ
       "include"    إåե
       "lib"        饤֥ʥƥॳ롢å饤֥ꡢͥåȥ饤֥
       "sbin"       initshellץ
       "command"    Ƽ拾ޥɥץ
       "test"       ƥѥץ
       makeե롢󥫡ץȡƥ


饤֥ꡦ롦ޥɡƥȥץΥѥ

()Makeե
Make.inץե
"ROOTDIR=""user"ǥ쥯ȥХѥ
"LIBGCC="GCCȤ߹ߴؿ饤֥"libgcc.a"Υѥ
줾ꤹ롣

()ѥ
ޥ"./build.sh"ǥѥ뤬ϤޤꡢƼ¹ԥե뤬"copy"ǥ쥯ȥ
ƥǥ쥯ȥ˥ԡ롣

()󥹥ȡ
ƥȵLinuxΩơ"copy"ǥ쥯ȥγƥǥ쥯ȥ
OS롼ȥǥХEXT2ե륷ƥΥ롼ȥǥ쥯ȥ˥ԡ롣
ա
ѥĶWindows + Cygwinξ硢ѥ뤷¹ԥե˼¹Բ°դʤΤǡ
ԡ˼¹Բ°ꤹɬפ롣

()¹
OSƥȵΩ夲ưȡsbinץǥ쥯ȥˤinitפ¹Ԥ졢
shellΩ夬롣


ƥȴĶѥǥ쥯ȥꡦեΥ󥹥ȡ
ϣӵưɬפʥե롦ǥ쥯ȥ"user/copy/"ǥ쥯ȥˤΤǡ֣ݡʣ˥󥹥ȡפιܤΤȤ
"copy/"ǥ쥯ȥΤ٤ƤΥե롦ǥ쥯ȥ򥳥ԡ롣


桼ץκλ

()ɥեκ
øǺuser/ǥ쥯ȥ֤
ʤƤ륷ƥॳ롦ؿϡޤʬ˥ƥȤƤʤΤǡХäꡢ
ɤưʤäꤹ礬롣

()ѥ (˳ƥ饤֥Υѥ () ɬ)

make 'file=ե̾(ĥȴ)'פȥޥɤϤƥѥ뤹ȡbin/ǥ쥯ȥ
˥ե̾Υץե뤬롣
˥ե̾test.c ʤ顢make 'file=test'פǥѥ뤹ȡbin/testפ롣

()󥹥ȡ
ƥȵLinuxΩơեOS롼ȥǥХEXT2ե륷ƥŬ
ǥ쥯ȥ֤

()¹
shell¹Ԥ롣


꡼ѥåեȡbinutils-2.16.1gcc-3.0.4vim-5.3ˤΥ󥹥ȡˤĤ

()ɤѥåuser/command/ǥ쥯ȥ˰ܤƲह롣

()command/ǥ쥯ȥΡMakefileפǥȥȤƤ볺ѥåmakeԤ褵롣
ˡ#	cd binutils-2.16.1;makeסcd binutils-2.16.1;make

()user/build.sh¹ԤХѥ뤵ơɬפʼ¹ԥե뤬copy/ǥ쥯ȥʲŬڤʥǥ쥯ȥ˥ԡ롣
