0

numpy、などを手動でビルドしました-ルート権限なしscipymatplotlib(新鮮なが必要でしmatplotlibた)。標準の場所にインストールされているすべてのライブラリ:

~/.local/lib/python2.7

関連するものをインストールしようとしているときはsynaptic、システム全体のすべてのライブラリをインストールすることをお勧めします。synapticローカルにインストールされたライブラリを使用するように指示できる方法はありますか?

リンクしようとし~/.local/lib/python2.7/site-packagesました/usr/lib/python2.7- 助けにはなりません。

編集

Python パッケージのクローンを作成し、setup.py の名前を ubuntu パッケージの名前に変更してからビルドすると、次のようになります。

python setup.py bdist --format=rpm

そしてそれをエイリアンでdebに変換します:

sudo alien -k my.rpm

次にdebをインストールします。

sudo dpkg -i my.deb

その後、synapticそれをパッケージとして認識します (setup.py で名前を微調整したことを思い出してください)。

しかし、ローカルにインストールされた Python ライブラリをシナプスに認識させる方法が見つかりません。

4

1 に答える 1

1

システム レベルでパッケージを管理するパッケージ マネージャーは、システム レベルは逆に、ユーザー ディレクトリにインストールされているものについて何かを知ることができますか?

パッケージ マネージャーは、パッケージ (rpm、deb など) やパッケージ リポジトリに格納されているメタ情報に基づいて依存関係を解決します。

目標を達成するには、2 つのオプションのいずれかを使用できます。

まず、ソースからシステム固有のパッケージをビルドし、パッケージ マネージャーを介してインストールします。これについては、 Creating Built Distributionsドキュメントを参照してください。次のようになります。

$ python setup.py bdist --format=rpm
$ rpm -i dist/$PACKAGE.rpm

これにより、パッケージ マネージャーは、いくつかの依存関係が既に提供されているという事実を認識できます。

このアプローチは、機能する場合と機能しない場合があります。

もう 1 つの推奨されるオプションは、 pipなどの python パッケージ マネージャーを使用し、すべてのパッケージを仮想環境にインストールすることです。この方法にはいくつかの利点があります。

  1. さまざまなバージョンのパッケージがインストールされた、いくつかの個別のパッケージ セットを持つことができます。
  2. オプションで、システム全体にインストールされたパッケージから仮想環境を分離できます。
于 2012-08-20T12:53:55.790 に答える