修正する:

修正する:

私は現在、C、C ++、一部の自社製Pythonモジュールなど、さまざまな言語のソースコードを暗示するプロジェクトを構築しています。私はAutomake / Autotoolsを使ってソースコードをインストールしています。ここでの問題は、これで.debをビルドするときにいくつかの問題が発生することです。

  • インストールする

Pythonのインストールは、次のようにMakefile.amで実行されます。

$(PYTHON) setup.py install \
    --prefix $(DESTDIR)$(prefix) \
    --record $(DESTDIR)$(sysconfdir)/nina/nina_installed_files.txt \
    --verbose

実行時にうまく機能しますmake install(インストールパス/usr/local/lib/python2.7/dist-packages:)

しかし、package .debコマンドを使用すると、インストールされているdpkg-buildpackageパッケージは/usr/lib/python2.7/site-packagepythonpathにありません。 Pythonパスにいくつかのパスを追加できますが、.bashrc必ずしも必要でない限り変更したくありません。

理想的には、完全なインストールパスパラメータを許可せ/usr/lib/python2.7/dist-packagesずにPythonモジュールをインストールする方法を探したいと思います。python setup.py install

ポリスチレン--root $(DESTDIR): --prefix 以外のパラメータを試しましたが、この方法/usr/local/lib/python2.7/dist-packages/usr/local.deb パッケージングルールに違反します。また、このように自動ツールと一緒に使用することはできません。

答え1

修正する:

ディストリビューションによってはモジュールが入ったりdist-packages出たりしないようですsite-packages

私はこれを見つけましたSOに公開これが役に立ちます。

Debian

python -c "import sys;print(sys.path)"

返品

[(..),'/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', (..)]

パッケージは次の場所にインストールされます。/usr/lib/python2.7/dist-packages

CentOS

..返品

[(..), '/usr/lib64/python2.7/site-packages', '/usr/lib/python2.7/site-packages']

パッケージは2つのディレクトリにインストールされます。

関連情報