背景、PythonでKinectカメラを使用しようとしています。
Ubuntu 12.04でfreenect(手動インストール)を試みると、未定義のlibusb_get_parentに関する苦情が表示されます。
しかし、Ubuntu 14.04ではうまく動作します。
次に、Raspberry PIに移動して手動インストールを試みました。サイコロがありません。 libusb_get_parentと同じ苦情です。
だから私は適切に更新、アップグレード、dist-upgrade、サイコロなしを取得します。私はlibusb-devと様々なものを手に入れようとしました。
dpkg -s libusb-1.0-0-dev
Ubuntu 12.02でも同じことをしました。使うと言う
Source: libusb-1.0
Version: 2:1.0.9~rc3-2ubuntu1
Ubuntu 14.04では、次のように言います。
Source: libusbx
Version: 2:1.0.17-1ubuntu2
最後に、Raspberry PIは次のようになります。
Source: libusbx
Version: 2:1.0.11-1
それで、私はRaspberry PIに最新バージョンのlibusbxをインストールできるのであれば、少なくとももう少し進むべきだと思いました。
ここから最新のlibusbxをダウンロードしました(http://sourceforge.net/projects/libusbx/files/releases/1.0.18/source/)
その後、次のことを行いました。
$ sudo su
$ ./configure && make && make install && sudo ldconfig
私が抽出したディレクトリから。 (構成して作ったようです。)
今、私は新しい1.0.18バージョンがあると思い、dpkg -s libusb-1.0-0-devをもう一度実行しましたが、そうではありませんでした。今でもまだ1.0.11です。
私は簡単なものを見逃していると確信しています。ありがとうございます。
ベストアンサー1
ソースコードからコンパイルしました。これは、Ubuntuのパッケージ管理システムがこれについて知らないことを意味します。パッケージマネージャは、パッケージマネージャを使用してインストールされたパッケージ(たとえば、apt
およびdpkg
)についてのみ知っています。また、パッケージマネージャが最新バージョンをインストールすると、以前のバージョンが削除されます。パッケージマネージャはこの新しいバージョンをインストールしていないため、元のバージョンもインストールされません。したがって、dpkg
古いバージョンがまだ表示されるのはなぜですか?
私があなたの立場であれば、make uninstall
ソースコードを実行してこのファイルを削除しました。次に、Ubuntu 14.04用のパッケージをダウンロードしlibusbx
て手動でインストールしてみましょう。依存関係の欠落について文句を言わないと、コンパイルしないことを避けることができます。
バージョンは以前のバージョンと互換性がある必要があるため、最新バージョンをインストールしても、現在のバージョンにすでに依存しているバージョンが中断されないことを願っていますlibusbx
。
上記の方法がうまくいかない場合は、ソースからパッケージをビルドすることを検討してください。このプロセスでは、deb
通常のパッケージマネージャを使用してインストールできるパッケージが作成されます。これにより、dpkg
コマンドに最新バージョンが表示され、以前のバージョンが削除されます。
このプロセスに対処する良いStack Exchangeの質問があります。ここ。