root権限なしでLinuxシステムにZshをインストールしようとしています。ソースtarballをダウンロードし、以下を実行しました。
./configure --prefix=<my_installation_path>
しかし、私は次のような結果を得ます:
構成:エラー:「システムに端末処理ライブラリが見つかりませんでした。これはcursesまたはncursesというライブラリです。システムソフトウェアパッケージに「curses-devel」または「ncurses-devel」というライブラリをインストールする必要があります。
ncursesをインストールします。
私はこのシステムのルートではないので、ncurses
手動でダウンロードしてインストールしましたが(github.comも使用./configure --prefix=<my_installation_path>
)うまくいくようです。
その後、次のパスを更新しました。
INSTALLATION_PATH='/path/to/installation'
export PATH=$INSTALLATION_PATH/bin/:$PATH
export LD_LIBRARY_PATH=$INSTALLATION_PATH/lib:$LD_LIBRARY_PATH
export CFLAGS=-I$INSTALLATION_PATH/include
そして、Zshを再インストールしようとしましたが、同じncurses
エラーが発生しました。私が知っている限り、上記のパス変数は正しい場所を指しており、これをシェルで確認できます。 Zshが認識されないのはなぜですか?ncurses?
ベストアンサー1
少なくとも1つが欠けているようです。これを渡しているのでCFLAGS=-I/path/to/installation/include
、コンパイルスクリプトはヘッダファイルを見つけることができますが、コンパイルスクリプトに()へのリンク先のライブラリを見つけるようにする必要がありますlibncurses.a
。インストール手順CPPFLAGS
にはCFLAGS
。
export CPPFLAGS="-I$INSTALLATION_PATH/include" LDFLAGS="-L$INSTALLATION_PATH/lib"
完全なエラーメッセージを読んで、./configure
より多くの情報を含むログを確認してください(実行されたコマンドとその出力に関する詳細な履歴がありますconfig.log
)。configure