home-dirで非rootとしてプログラムをコンパイルおよびインストールする


5

私は自分のホームディレクトリにSolarisの下でプログラムをコンパイルしようとしています。
Iveは単純にインストールできる単純なインストールの経験があります。

   $> CD src
   $> ./configure --prefix=/home/peter
   $> make
   $> make install

しかし、より複雑なプログラム、特別なライブラリへの依存関係を持つプログラムで、システムがこれらのホームディレクトリをどのように調べられるのでしょうか。そして、どうやってそれらを私のホームディレクトリにまとめることができるでしょうか?

回答:


3

私はアプリケーションをクロスコンパイルするとき、私はそのようなことをしなければなりません。 ./configureでサポートされている場合は、 - helpで確認できます。次のように実行できます。

./configure --extra-ldflags=-L/root/Installs/ffmpeg/forWin/usr/lib --extra-cflags=-I/root/Installs/ffmpeg/forWin/usr/include

ライブラリ用のエントリとインクルード用のエントリが1つありますが、configureまたはmakeの前にそれを追加するという古い方法が常にあります。

LDFLAGS='-L/root/Installs/ffmpeg/forWin/usr/lib' CFLAGS='-I/root/Installs/ffmpeg/forWin/usr/include' ./configure
LDFLAGS='-L/root/Installs/ffmpeg/forWin/usr/lib' CFLAGS='-I/root/Installs/ffmpeg/forWin/usr/include' make

作るために私はそれらが前か後のどちらかに指定されることができると思う、しかしそれについて私を引用しないでください。


0

場合によります。

使用しているソフトウェアを構築している場合 configure、ほとんど configure スクリプトを使用すると、サードパーティのライブラリへのパスを指定できます。行う configure --help そして--with-feature = / path / to / softwareを探します。

他の答えが述べているように、 configure そして他のスクリプトは環境変数を見る傾向があります CFLAGS LDFLAGS そして LIBS。 CFLAGSを-I / include / pathsおよび-L / library / pathsで設定できます。

最悪の場合、Makefileを編集してこれらのパスをリセットする必要があるかもしれません。

ソフトウェアをどこかに住ませたい場合は、 configure スクリプトはinstall dirを指定するために--prefix =引数を持つ傾向があります。あるいは、Makefileを編集する必要があるかもしれません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.