- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Apacheモジュールのコンパイルの件で質問させていただきます。
)
Apacheモジュールのコンパイルに関する質問
このQ&Aのポイント
- Apacheモジュールのコンパイルで「abc」という関数が定義されていないというエラーが出ています。
- コンパイル時は正常にコンパイルできていたのに、Apacheの再起動時に怒られるのは、パスの参照先が異なるためかもしれません。
- モジュールのsoファイルを正しく読み込むためにはどうすれば良いでしょうか。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Makefileの内容の詳細が記述されていないから、 何とも言えないが、 本当はコンパイル時に、 関数「abc」が入っているファイル(test.h)を C側にinclude出来ていない感触があるな。 そんな気がする。 Makefileでgcc(CC)周りの記述を見て、 該当の関数が所属しているファイルのオブジェクトファイルが 読み込まれているか確認した方がいい気がする。 どんなもんだろ。
その他の回答 (1)
- entree
- ベストアンサー率55% (405/735)
回答No.1
モジュールに abc というシンボルが正しく定義されているかどうかを nm で確認してみてください。 nm mod_test.so > モジュールのコンパイルの時は > 正常にコンパイルできて、 通常はモジュールのコンパイル時に未定義のシンボルがあっても エラーにはなりません。 > モジュールのコンパイルの時は > 正常にコンパイルできて、 > Apacheの再起動時には怒られるといいのは、 > パスの参照先が > Apache起動時とコンパイル時で異なるからという事でしょうか? モジュール mod_test.so 自体は正しく見つけられているように見えます。