エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
libdl.soの問題点 - kuenishi's blog
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
libdl.soの問題点 - kuenishi's blog
g++で作ったダイナミックライブラリはdlopen(2)で呼び出すことはできても、dlsym(2)で正常な関数ポイン... g++で作ったダイナミックライブラリはdlopen(2)で呼び出すことはできても、dlsym(2)で正常な関数ポインタを作ることができない。g++で作った関数は妙な名前にマングルされているためである。 これを解決するためには、extern "C"でシンボル名をマングルされないようにしなければならない(ccでコンパイルしたときのシンボル名になる)。これで、適当なオブジェクト型を返すような関数をロードする側が前もって知っておくことができれば、g++で作ったライブラリもダイナミックに呼び出すことができる。 ちょっとgcc触った人なら常識かもしれないけど、これを理解するのに一日かかりましたが何か?