PHP 拡張機能を作成してコンパイルしましたが、PHP を実行しようとすると、このエラーが発生します PHP 警告: PHP スタートアップ: ダイナミック ライブラリ '/usr/lib/php5/20100525+lfs/mylib.so' - /usr/ をロードできませんlib/php5/20100525+lfs/mylib.so: 未定義のシンボル: _ZNK4Data10strtolowerEPKc 行 0 data.hの不明
class Data
{
public:
// ...
char *strtolower ( const char * const ) const;
};
データ.cpp
inline char *Data::strtolower(const char *const str) const
{
char c, *b = estrdup(str), *s = b;
while(*s != '\0' && (c = *s))
{
*s++ = (c >= 0x41 && c <= 0x5a) ? c + 0x20 : c;
}
return b;
}
このエラーは何ですか? また、コードがコンパイルされた理由は何ですか? そして、主な問題はそれを修正する方法ですか?