玄箱Pro、直します。

超初心者が、玄箱PROでLinuxを勉強する無謀なブログです。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
別窓 | スポンサー広告
∧top | under∨

ビルド練習で四苦八苦(3)~tar編2~

結論から言いますとインストールできました。
ただし最新ソースではなく、GNU tar-1.16です。

先日のtar-1.18導入の際のmakeエラーで「宣言されていない」とか出ていていくらなんでもそりゃ直せない、と思っていたところ、gccとtarのバージョンって関係あるのかな・・と疑問に思いバージョンを落としてみました。
しかしtar-1.17や1.16.1では1.18と同じエラーが出ます。
1.16で試してみると、見事に通りました。

まずはソースを置いたり展開する場所を作ります。前回までは作らずに「~」で作業してたらあとで何が何だかわからなくなりましたので、今回はきとんと作ります(笑)。

/mnt/disk1/devel # mkdir src


続いてソースの取得です。Windowsから共有フォルダ経由で引っ張っても同じです。

/mnt/disk1/devel/src # wget ftp://tron.um.u-tokyo.ac.jp/pub/GNU/tar/tar-1.16.tar.gz


取ってきたtarのソースを展開します。

/mnt/disk1/devel/src # tar xzvf tar-1.16.tar.gz


chrootで開発環境に入ります。

/mnt/disk1/devel/src # cd
~ # chroot /mnt/disk1/devel


ここからはconfigure、make、make installのコンボです。
でもインストールの前に一手間、Busyboxなtarの名前を変更(tar.busyとしました)しておきます。

以前rmでばっさり削除しましたが、名前の変更の方が検証にBusyboxが使いたくなったりした時にすぐに戻せるので何かと便利です。
まぁそれほど変わらない気もしますが・・。

/ # cd ./src
/src # cd ./tar-1.16/
/src/tar-1.16 # ./configure
/src/tar-1.16 # make
/src/tar-1.16 # cd /bin
/bin # mv tar tar.busy
/bin # cd /src/tar-1.16
/src/tar-1.16 # make install


makeを通りさえしたらこの作業は退屈なくらい単調です。

作業が終了したら念のためtarの情報を確認します。

/src/tar-1.16 # tar --version
tar (GNU tar) 1.16
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software. You may redistribute copies of it under the terms of
the GNU General Public License .
There is NO WARRANTY, to the extent permitted by law.


BusyboxではなくGNU tarとなっているのでこの作業は完了です。

ここからは完全に根拠もない推論です。
開発する側の環境を変えずに対象となるソースのバージョンを下げれば導入できた、ということは「ソースとコンパイラのバージョンがあっていない」ということが原因だったのでしょうか。
もしもそうであれば、今後最新ソースで同じような現象があらわれても今回同様少し古いソースをコンパイルすれば通るということになります。


実際は、まだ手探りでやってますので理屈もへったくれもありませんが(笑)。
スポンサーサイト
別窓 | 標準ファームで遊ぶ | コメント:0 | トラックバック:0
∧top | under∨
<<ビルド練習で四苦八苦(4)~binutils編~ | 玄箱Pro、直します。 | 1ヶ月目の日記>>

この記事のコメント

∧top | under∨

コメントの投稿

 

管理者だけに閲覧
 

この記事のトラックバック

トラックバックURL

FC2ブログユーザー専用トラックバックURLはこちら
∧top | under∨
| 玄箱Pro、直します。 |
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。