No renderer 'odt' found for mode 'odt'
os:freebsd:portupgrade:php_error
目次
PHPのエラー
portupgradeなどでアップデートを行った際に、以下のようなエラーが出るケースがあります。
Unable to load dynamic library
Unable to load dynamic library '/usr/local/lib/php/20090626/pcre.so' Unable to load dynamic library '/usr/local/lib/php/20090626/spl.so'
これは、pcreなどがPHPcoreに統合されたために、参照が必要なくなったにもかかわらず、参照しているために出ます。
対処としては、時間がかかりますが、PHP本体と依存パッケージの再ビルドが一番でしょう。
# portupgrade -rf php5
'PHP_FE_END' undeclared here
/usr/ports/security/php5-mcrypt/work/php-5.3.10/ext/mcrypt/mcrypt.c:283: error: 'PHP_FE_END' undeclared here (not in a function)
該当箇所の「PHP_FE_END」を「{NULL, NULL, NULL}」に書き換えるとコンパイルが無事にできます。
error: 'ZEND_MOD_END' undeclared here
この場合も同様に「ZEND_MOD_END」を「{NULL, NULL, NULL}」に書き換えるとコンパイルが無事にできます。
error: pcre.h: No such file or directory
phpMyAdminが依存している、security/php5-filterのインストール中に出ました。
cp /usr/local/include/pcre.h /usr/local/include/php/ext/pcre/
他に直す方法があるのかもしれませんが、こんな感じで逃げました。
Call to undefined function hash_mac()
先日、こんなエラーが出ました。
5.1.2からhash_mac関数は標準になってるはずなのになぜ?
pkg_replace -N php5-hash
結局、Portsから php5-hash をインストールして解消しました。1)
1)
なんか、釈然としない
os/freebsd/portupgrade/php_error.txt · 最終更新: 2017/04/14 05:21 by 127.0.0.1