Linux

db79d2e4 anonymous 2009-09-18 19:25
Linux、UNIXに関するあれこれ。
1a026ee0 anonymous 2009-09-18 20:06
[[書き込みテスト]]の続き。

Linux from FreeBSDが何とかやれそうだ。簡単かと思いきやCygwin以上に手こずったのは意外。
いきなりglibcはクロスコンパイルできないのでまずはuClibcをクロスコンパイルする必要があるみたい。
古いglibcでもいいのかもしれないけれど探すの面倒だし。
busyboxはuClibcでクロスコンパイルするとmountコマンドが正しく動かないっぽい。glibcでクロスコンパイルしたものは正常。
busyboxはクロスコンパイルでもパッチを当てる必要がある。パッチ内容はportsのbusyboxを参照すればいけた。

とりあえずここまで。現在は再試中。glibcのコンパイルがうまく行かないなー。
(syntax errorとか。ううむ)。
30bcbf4b anonymous 2009-09-20 13:27
>>1a026ee0
再試というか追試というか、飽きて途中で投げた。
i386-hogehoge-linuxのi386がより後のCPUをターゲットとしたbinutils&gccなら問題なくglibをクロスコンパイルできるみたい(i486-pc-linuxとかi586-glibc-linuxとか)。

ファイルサイズ最小Linux開発環境(圧縮時1Mバイト以内) とか
ファイル数最小Linux開発環境(バイナリ7ファイル(busybox込みシンボリックリンク除く)) とかできた。
ファイル数最小は[[書き込みテスト/e9413834]]のやつだけどlibgcc.aの事前準備がいらなくなった、と思う。
その状態でbinutilsとgccの再コンパイルまでしかやってないからなにか勘違いがあるかも。別の場所にlibgcc.aがあってそっちを読んだとか。

先週までの成果
・ファイル数最小Linux開発環境(busybox, ar, as, ld, cc1, gcc, make, collect2, libgcc.a)

・ファイル数最小Linux開発環境(busybox, ar, as, ld, cc1, gcc, make)
になった。
・でもファイルサイズは圧縮時でも2Mバイト以上……。とほほ。

cc1がずば抜けて大きいんだよな。あとasとldもそれなりに。collect2とlibgcc.aはファイルサイズとしては大して大きくないから、これ2つ抜いてもファイルサイズ減少にはあまり貢献しないな。
1Mバイト少々なら新月ネットワークに流せるのに。そりゃ分割すりゃいいんだけなんだけどもね。

Top of this page. | <<last <<new 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107

limit: 15360KB

(Linux/10703/12.0MB)

Powered by shinGETsu.