Index

undefined reference to `libiconv'

環境

バージョン:5.x
発生状況:make実行時

原因

標準外のiconvをインストールした場合に発生する問題。
PHPはビルド時にglibcを使うかlibiconvを使うかの判定処理が2系統あり、一方が/usr/local/includeのiconv.hをサーチしてiconv使用有無の判定する処理になっている。
標準外のiconvをインストールしている場合はconfigureオプションでwith-iconv-dir=DIRを指定しても/usr/local/include/iconv.hがサーチされ、コンパイルエラーとなる

対策1.

/usr/local/include/iconv.hをリネームするなどの対策を行い参照されないようにする。

対策2.

configureの以下の行を変更する

【対象】 GDLIB_CFLAGS = 
【追加】 -DHAVE_LIBICONV
【対象】 EXTRA_LIBS =
【追加】 -liconv

ライブラリのリンクを確認し、コンパイルを行う。

ln -s /usr/local/lib/libiconv.so.2.4.0 /usr/lib/libiconv.so.2
make
make test

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS