症状 anchor.png Edit

コンパイル中(リンク時に)

1
Error 42: Symbol Undefined _AddFontResourceExA@12

のようなエラーが生じ、正常に実行ファイルが生成されない。

Page Top

原因 anchor.png Edit

コンパイラがスタティックリンクライブラリを読み込んでいないために生じる

Page Top

対応 anchor.png Edit

コンパイラにスタティックリンクライブラリを使用する旨を伝える
具体的には、

Everything is expanded.Everything is shortened.
1
 
pragma(lib, "gdi32");

等のようにする。
詳細はスタティックリンクライブラリを使うを参考にするとよい。

Page Top

注意 anchor.png Edit

何のライブラリを読み込めばいいかは、必要としている関数名から推測する。 たとえば、

1
Error 42: Symbol Undefined _AddFontResourceExA@12

これであれば、AddFontResourceExAという関数をググればよい
上記関数の場合、MSDNのページが検索にヒットし、

インポートライブラリ:gdi32.lib を使用

との情報を得ることが可能である。

また、スタティックリンクライブラリ自体に問題がある可能性もある。
特にD言語によって書かれたスタティックリンクライブラリにおいて発生しやすい。
たとえば、D言語の仕様変更等により、ライブラリを再コンパイルしなければならないことがある。


Front page   Edit Freeze Diff Backup Upload Copy Rename ReloadPrint View   New Page Page list Search Recent changes   Help   RSS of recent changes (RSS 1.0) RSS of recent changes (RSS 2.0) RSS of recent changes (RSS Atom) Powered by xpWiki
Counter: 2486, today: 1, yesterday: 0
Princeps date: 2009-08-24 (Mon) 01:27:36
Last-modified: 2009-08-24 (Mon) 01:27:36 (JST) (4121d) by SHOO
メインメニュー

ログイン

ユーザー名:


パスワード:





パスワード紛失  |新規登録

Menu