[Armadillo:05823] Re: クロス開発用ライブラリ作成で失敗する

Takenoshita Koyo email@hidden
2010年 9月 15日 (水) 15:55:49 JST


竹之下です。

>> libusb-1.0-0-armel-cross_1.0.8-2_all.deb はどこから持ってきたもので 
>> しょうか?
> libusb-1.0-0-armel-cross_1.0.8-2_all.deb は、debianのページからパッケー 
> ジを検索して取得しました。
> 以下のページです。
> http://packages.debian.org/sid/libusb-1.0-0
これは、"sid" 用のパッケージですね。

Debian にはいくつかバージョンがあります。
ATDE3 は、Debian GNU/Linux 5.0 (コードネーム "lenny")
ですので、lenny 用のパッケージをインストールしなければなりません。

Debian のディストリビューションには、
安定版(stable)、テスト版(testing)、不安定版(unstable)
という呼び方もあります。

現在の安定版は、lenny です。
テスト版は、squeeze です。
sid というのは、不安定版の名前です。
「不安定版のパッケージは、ほとんどテストされてなく、そしてシステムの
  安定性に影響するほどの問題があるかもしれません。」
とされていますので、sid のパッケージを使用することはオススメできません。

参照: http://www.debian.org/distrib/packages

> libc6の最新版、libc6_2.11.2-5_armel.deb をインストールしようとしたのです 
> が、
この方法も、あまりオススメできません。
これも、sid から持ってきたパッケージだと思いますが、lenny の環境(ATDE3)に sid
のパッケージは基本的にインストールできません。

解決策は、
1. lenny で使えるパッケージ (libusb-0.1-4)を使う
2. libusb-1.0 をソースから自力でビルドする
3. 開発環境を squeeze で構築する
になります。

高橋 哲司 さんは書きました:
> お世話になります。
> 高橋@FDKです。
> 
>> libusb-1.0-0-armel-cross_1.0.8-2_all.deb はどこから持ってきたもので 
>> しょうか?
> libusb-1.0-0-armel-cross_1.0.8-2_all.deb は、debianのページからパッケー 
> ジを検索して取得しました。
> 以下のページです。
> http://packages.debian.org/sid/libusb-1.0-0
> ここで libusb-1.0-0_1.0.8-2_armel.deb をダウンロードして、dpkg-cross 
> コマンドで作成しました。
> 
> 
>> libc6-armel のバージョンは、2.7 ですが、libusb-1.0-0-armel-cross_1.0.8 
>> -2_all.deb は
>> 2.8 以上の libc6 を求めていますね。
> libc6の最新版、libc6_2.11.2-5_armel.deb をインストールしようとしたのです 
> が、
> 依存関係を追っていくと、
> dpkg-crossコマンドを使った際に、下のようなメッセージがでて armel-cross 
> ファイルの作成が出来なかったため、インストールを断念しました。
> 
> libgcc1-armel-cross_4.4.4-13_all.deb
> gcc-4.4-base-armel-cross (= 4.4.4-13)
> $dpkg-cross --build --arch armel gcc-4.4-base_4.4.4-14_armel.deb
> dpkg-cross: package gcc-4.4-base doesn't provide any useful files. 
> Skipping.
> $dpkg-cross --build --arch armel gcc-4.4-base_4.4.4-14_armel.deb
> dpkg-cross: package gcc-4.4-base doesn't provide any useful files. 
> Skipping.
> $dpkg-cross --build --arch armel gcc-4.4_4.4.4-14_armel.deb
> Building gcc-4.4-armel-cross_4.4.4-14_all.deb
> $dpkg-cross --build --arch armel gcc-4.4-base_4.4.4-14_armel.deb
> dpkg-cross: package gcc-4.4-base doesn't provide any useful files. 
> Skipping.
> 
> よろしく御願いします。
> 
> ----- Original Message ----- From: "Takenoshita Koyo" 
> <email@hidden>
> To: "Armadillo series general discussion list" 
> <email@hidden>
> Sent: Wednesday, September 15, 2010 2:38 PM
> Subject: [Armadillo:05821] Re: クロス開発用ライブラリ作成で失敗する
> 
> 
>> 竹之下です。 
>>
>>> $ sudo apt-cross --arch armel --suite lenny --install 
>>> libusb-1.0-0_1.0.8-2_armel.deb
>> apt-cross で指定するのは、パッケージ名だけでよいです。
>> (.deb まで指定しなくてよい)
>>
>> 以下でインストールできると思います。
>> apt-cross --arch armel --suite stable --mirror 
>> http://ftp.jp.debian.org/debian --install libusb-0.1-4
>>
>> sudo は必要ありません。
>> mirror は指定しなくてもよいです。
>> libusb-dev もインストールした方がよいかもしれません。
>>
>> しかし、libusb-1.0-0 を指定しても
>> $ apt-cross --arch armel --suite stable --mirror 
>> http://ftp.jp.debian.org/debian --install libusb-1.0-0
>> apt-cross is unable to locate package: 'libusb-1.0-0' - skipping
>> 0 to be upgraded, 0 to be newly installed.
>> となります。。なぜ?
>>
>> apt-cross は挙動が怪しいので、dpkg-cross を使って手動でインストールし 
>> た方が確実です。
>>
>>> $ sudo dpkg -i libusb-1.0-0-armel-cross_1.0.8-2_all.deb
>>>  libusb-1.0-0-armel-cross は以下に依存 (depends) します:
>>> libc6-armel-cross (>= 2.8) ...しかし:
>>>   パッケージ libc6-armel-cross はまだ設定されていません。
>> armel 用の libc6 がインストールされていない?
>>
>> libc6-armel がインストールされていることを確認するには、
>> dpkg -l コマンドを使います。
>>
>> $ dpkg -l | grep libc6-armel
>> ii  libc6-armel-cross                       2.7-18lenny1 GNU C 
>> Library: Shared libraries (for cross-compiling)
>>
>> libc6-armel のバージョンは、2.7 ですが、libusb-1.0-0-armel-cross_1.0.8 
>> -2_all.deb は
>> 2.8 以上の libc6 を求めていますね。
>> libusb-1.0-0-armel-cross_1.0.8-2_all.deb はどこから持ってきたもので 
>> しょうか?
>>
>> 高橋 哲司 さんは書きました:
>>> お世話になります。
>>> 高橋@FDK と申します。
>>> Armadillo、Linux共に、使い始めたところです。
>>>
>>>
>>> Armadillo-440 ATDE3の環境で開発を行っております。
>>> (atde3-20100309.zip、atmark-dist-20100603.tar.gz、linux-2.6.26-
>>> at10.tar.gz)
>>>
>>> ライブラリ:libusb-1.0-0_1.0.8-2を使用して開発を行っているのですが、クロ
>>> ス開発用ライブラリパッケージの作成で失敗してしまいます。
>>> dpkg-cross もしくは、apt-cross のコマンドを使用すると、以下のようなエ
>>> ラーメッセージが出力されます。
>>>
>>>
>>> $ sudo apt-cross --arch armel --suite lenny --install
>>> libusb-1.0-0_1.0.8-2_armel.deb
>>> ファイル
>>> /home/atmark/.apt-cross/lenny/lists/security.debian.org_dists_lenny_main_source_Sources 
>>>
>>> をオープンできませんでした - open (2 そのようなファイルやディレクトリは
>>> ありません)
>>> apt-cross is unable to locate package: 'libusb-1.0-0_1.0.8-2_armel.deb'
>>> - skipping
>>> 0 to be upgraded, 0 to be newly installed.
>>>
>>>
>>> $ dpkg-cross --build --arch armel libusb-1.0-0_1.0.8-2_armel.deb
>>> Building libusb-1.0-0-armel-cross_1.0.8-2_all.deb
>>> $ sudo dpkg -i libusb-1.0-0-armel-cross_1.0.8-2_all.deb
>>> (データベースを読み込んでいます ... 現在 90641 個のファイルとディレクト
>>> リがインストールされています。)
>>> libusb-1.0-0-armel-cross 2:1.0.8-2 を
>>> (libusb-1.0-0-armel-cross_1.0.8-2_all.deb で) 置換するための準備をしてい
>>> ます ...
>>> libusb-1.0-0-armel-cross を展開し、置換しています...
>>> dpkg: 依存関係の問題により libusb-1.0-0-armel-cross の設定ができません:
>>>  libusb-1.0-0-armel-cross は以下に依存 (depends) します:
>>> libc6-armel-cross (>= 2.8) ...しかし:
>>>   パッケージ libc6-armel-cross はまだ設定されていません。
>>>  libusb-1.0-0-armel-cross は以下に依存 (depends) します:
>>> libc6-armel-dcv1 ...しかし:
>>>   パッケージ libc6-armel-dcv1 はまだインストールされていません。
>>>   パッケージ libc6-armel-cross は libc6-armel-dcv1 を提供していますが、
>>> まだ設定されていません。
>>> dpkg: libusb-1.0-0-armel-cross の処理中にエラーが発生しました 
>>> (--install):
>>>  依存関係の問題 - 設定を見送ります
>>> 以下のパッケージの処理中にエラーが発生しました:
>>>  libusb-1.0-0-armel-cross
>>>
>>>
>>> 対策方法をご教授頂ければ幸いです。
>>> よろしく御願いいたします。
>>>
>>>
> 
> _______________________________________________
> armadillo mailing list
> email@hidden
> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
> 


-- 
Koyo Takenoshita




armadillo メーリングリストの案内