故郷を離れて三十数年、関東で暮らす永遠の少年のどーってことない日記
xxSEARCHxx
プロフィール

ST☆FF

Author:ST☆FF
HTTといえばインテルの Hyper-Threading Technology!・・・ではなく、放課後ティータイムのことだと思います。

最近の記事
最近のコメント
最近のトラックバック
月別アーカイブ
カテゴリー
ブロとも申請フォーム
ブログ内検索
RSSフィード
リンク

最近の記事


スポンサーサイト 

--/--/-- --:--/--
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

CATEGORY:スポンサー広告 | CM(-) | TB(-) |

Win7(64bit)で初めてのARToolKit コンパイル編 

2010/09/02 22:47/Thu
いよいよ ARToolKit のコンパイルに挑戦です。
管理者権限で Visual C++ 2008 Express Edition を起動して

C:\Program Files (x86)\ARToolKit\ARToolKit.sln

を開きます。Visual Studio .NET 2003 版のソリューションであるため、自動的に変換ウィザードが開始されるのでサクっと
変換します。そしてソリューション構成で「Release(Intel)」を選択してソリューションのリビルド実行!
するとこんなエラーが出ました。

LINK : fatal error LNK1181: 入力ファイル 'libjpeg.lib' を開けません。

libjpeg.lib というのは OpenVRML で使用しているライブラリらしいのですが、ファイル自体は
C:\Program Files (x86)\ARToolKit\OpenVRML\dependencies\lib
の中にあります。どうやら Visual Studio が見つけられない模様。早速、教えてあげないといけません。

1.「ツール」メニュー→「オプション」とたどり、「プロジェクトおよびソリューション」の中にある「VC++ディレクトリ」を
 表示します。
2.「ディレクトリを表示するプロジェクト」の項目で「インクルードファイル」を選択し、下部のパスが並んでいるところに
 「C:\Program Files (x86)\ARToolKit\OpenVRML\include」
 を追加します。
3.同様に「ディレクトリを表示するプロジェクト」の項目で「ライブラリファイル」を選択し、下部のパスが並んでいるところに
 「C:\Program Files (x86)\ARToolKit\OpenVRML\lib」
 を追加します。

そして再度ソリューションのビルド実行!
すると今度は、なんとまぁ、山のようにエラーが出ました(T_T)

29>antlr.lib(BitSet.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>antlr.lib(String.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>antlr.lib(MismatchedTokenException.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>antlr.lib(BaseAST.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>antlr.lib(TokenBuffer.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>antlr.lib(NoViableAltException.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>antlr.lib(CommonToken.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>antlr.lib(Token.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>antlr.lib(RecognitionException.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>antlr.lib(Parser.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>antlr.lib(LLkParser.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>antlr.lib(ASTRefCount.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>openvrml.lib(bounding_volume.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>openvrml.lib(img.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>openvrml.lib(system.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>openvrml-gl.lib(viewer.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>openvrml.lib(scope.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>openvrml.lib(script.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>openvrml.lib(vrml97node.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>openvrml.lib(doc.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>openvrml.lib(node_type_ptr.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>openvrml.lib(scope_ptr.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>openvrml.lib(node.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>openvrml.lib(field.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>openvrml.lib(browser.obj) : error LNK2019: 未解決の外部シンボル "__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ) が関数 "class std::ctype const & __cdecl std::use_facet >(class std::locale const &)" (??$use_facet@V?$ctype@D@std@@@std@@YAABV?$ctype@D@0@ABVlocale@0@@Z) で参照されました。
29>openvrml.lib(node_class_ptr.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>openvrml.lib(field_value_ptr.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>openvrml.lib(node_ptr.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: void __thiscall std::locale::facet::_Register(void)" (__imp_?_Register@facet@locale@std@@QAEXXZ)" は未解決です。
29>antlr.lib(BitSet.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(String.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(MismatchedTokenException.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(BaseAST.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(TokenBuffer.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(NoViableAltException.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(CommonToken.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(Token.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(RecognitionException.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(Parser.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(LLkParser.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(ASTRefCount.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(bounding_volume.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(img.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(system.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml-gl.lib(viewer.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(scope.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(script.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(vrml97node.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(doc.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(node_type_ptr.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(scope_ptr.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(node.obj) : error LNK2019: 未解決の外部シンボル "__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z) が関数 "protected: __thiscall openvrml::color_node::color_node(class openvrml::node_type const &,class openvrml::scope_ptr const &)" (??0color_node@openvrml@@IAE@ABVnode_type@1@ABVscope_ptr@1@@Z) で参照されました。
29>openvrml.lib(field.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(browser.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(node_class_ptr.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(field_value_ptr.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(node_ptr.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(BitSet.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(String.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(MismatchedTokenException.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(BaseAST.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(TokenBuffer.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(NoViableAltException.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(CommonToken.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(Token.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(RecognitionException.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(Parser.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(LLkParser.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>antlr.lib(ASTRefCount.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(bounding_volume.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(img.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(system.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml-gl.lib(viewer.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(scope.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(script.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(vrml97node.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(doc.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(node_type_ptr.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(scope_ptr.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(node.obj) : error LNK2019: 未解決の外部シンボル "__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z) が関数 "protected: __thiscall openvrml::font_style_node::font_style_node(class openvrml::node_type const &,class openvrml::scope_ptr const &)" (??0font_style_node@openvrml@@IAE@ABVnode_type@1@ABVscope_ptr@1@@Z) で参照されました。
29>openvrml.lib(field.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(browser.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(node_class_ptr.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(field_value_ptr.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(node_ptr.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: static unsigned int __cdecl std::ctype::_Getcat(class std::locale::facet const * *)" (__imp_?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@@Z)" は未解決です。
29>openvrml.lib(browser.obj) : error LNK2019: 未解決の外部シンボル "__declspec(dllimport) public: __thiscall std::basic_string,class std::allocator >::basic_string,class std::allocator >(class std::basic_string,class std::allocator >::const_iterator,class std::basic_string,class std::allocator >::const_iterator)" (__imp_??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@Vconst_iterator@01@0@Z) が関数 "public: class std::basic_string,class std::allocator > __thiscall openvrml::Vrml97Parser::stringValue(void)" (?stringValue@Vrml97Parser@openvrml@@QAE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ) で参照されました。
29>openvrml.lib(browser.obj) : error LNK2019: 未解決の外部シンボル "__declspec(dllimport) public: class std::basic_string,class std::allocator >::const_iterator __thiscall std::basic_string,class std::allocator >::begin(void)const " (__imp_?begin@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBE?AVconst_iterator@12@XZ) が関数 "public: class std::basic_string,class std::allocator > __thiscall openvrml::Vrml97Parser::stringValue(void)" (?stringValue@Vrml97Parser@openvrml@@QAE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ) で参照されました。
29>openvrml.lib(browser.obj) : error LNK2019: 未解決の外部シンボル "__declspec(dllimport) public: class std::basic_string,class std::allocator >::const_iterator __thiscall std::basic_string,class std::allocator >::end(void)const " (__imp_?end@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBE?AVconst_iterator@12@XZ) が関数 "public: class std::basic_string,class std::allocator > __thiscall openvrml::Vrml97Parser::stringValue(void)" (?stringValue@Vrml97Parser@openvrml@@QAE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ) で参照されました。
29>openvrml.lib(doc.obj) : error LNK2001: 外部シンボル ""__declspec(dllimport) public: class std::basic_string,class std::allocator >::const_iterator __thiscall std::basic_string,class std::allocator >::end(void)const " (__imp_?end@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBE?AVconst_iterator@12@XZ)" は未解決です。
29>openvrml.lib(doc.obj) : error LNK2019: 未解決の外部シンボル "__declspec(dllimport) public: class std::basic_string,class std::allocator >::iterator __thiscall std::basic_string,class std::allocator >::begin(void)" (__imp_?begin@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE?AViterator@12@XZ) が関数 "private: bool __thiscall openvrml::doc2::filename(char *,unsigned int)" (?filename@doc2@openvrml@@AAE_NPADI@Z) で参照されました。
29>libjpeg.lib(jerror.obj) : error LNK2001: 外部シンボル "__iob" は未解決です。
29>libpng.lib(pngerror.obj) : error LNK2001: 外部シンボル "__iob" は未解決です。
29>libpng.lib(pngrutil.obj) : error LNK2019: 未解決の外部シンボル __iob が関数 _png_handle_pHYs で参照されました。
29>c:\Program Files\ARToolKit\examples\simpleVRML\..\..\bin\simpleVRML.exe : fatal error LNK1120: 外部参照 8 が未解決です。
29>ビルドログは "file://C:\Program Files (x86)\ARToolKit\examples\simpleVRML\Release\BuildLog.htm" に保存されました。
29>simpleVRML - エラー 93、警告 13

色々とネットを彷徨って調査したところ、OpenVRML を再コンパイルすれば解決するらしいとの噂が・・・。
とりあえず OpenVRML をリビルドしてみます。管理者権限で下記のソリューションファイルを開きリビルドします。
「C:\Program Files (x86)\ARToolKit\OpenVRML\src\openvrml-0.14.3\ide-projects\Windows\VisualC7\OpenVRML\OpenVRML.sln」
ところがここでもエラーの嵐・・・。
引き続き調査した結果、ここを参考に色々試してみました。
まずはコンパイルエラーから潰します。

●Token.hpp(76行目)
inline operator<(RefToken l,RefToken r); //{return true;}

となっていますが、戻り値の型が明記されていないので
int inline operator<(RefToken l,RefToken r); //{return true;}

に修正します。

●AST.hpp(151行目)

inline operator<(RefAST l,RefAST r); // {return true;}

となっている行も同様に
int inline operator<(RefAST l,RefAST r); // {return true;}

に修正します。

●regerror.c(116行目)

regerror(errcode, preg, errbuf, errbuf_size) 
int errcode;
const regex_t *preg;
char *errbuf;
size_t errbuf_size;

となっている部分ですが、この書き方はC言語が誕生したばかりの頃の古い書式で Visual C++ 2008 には理解できません。
近代の一般的な書式である

regerror(int errcode, const regex_t *preg, char *errbuf, size_t errbuf_size)

に修正します。

●img.c(40行目付近)
ヘッダのインクルード指示の直後に以下の4行を追加します。これはJpeg関係のエラー対策です。
#define XMD_H
#ifdef FAR
#undef FAR
#endif

次に「libpng.lib」と「libjpeg.lib」のバージョンが openvrml 本体とマッチしていないようなのでバージョンダウンしてみます。

ここからlibpng-1.2.37-lib.zipをダウンロードして、解凍します。
 出てきた「libpng-1.2.37-lib\lib\libpng.lib」を
「C:\Program Files (x86)\ARToolKit\OpenVRML\dependencies\lib\libpng.lib」として上書きコピーします。
(慎重派の人は元のファイルをリネームして残しておいてください。)

ここからjpeg-6b-4-lib.zipをダウンロードして解凍します。
 出てきた「jpeg-6b-4-lib\lib\jpeg.lib」を
「C:\Program Files (x86)\ARToolKit\OpenVRML\dependencies\lib\libjpeg.lib」と名前を変えて上書きコピーします。
(慎重派の人はここでも元のファイルをリネームして残しておいてください。)

ここで OpenVRML ソリューションで作成する4つのライブラリの作成ルールにおいて ARToolKit 本体と噛み合っていない
部分があるので修正します。
1.antlr プロジェクトのプロパティを開き、構成で「Debug」を選択します。
2.ウィンドウ左のツリー部分で「ライブラリアン」→「全般」→「出力ファイル」を選択します。
3.ウィンドウ右の「出力ファイル」欄を見て、たとえば antlr プロジェクトなら
 $(OutDir)/antlr.lib
 となっているところを「ドット」の直前に"d"の1文字を挿入し、次のようにします。
 $(OutDir)/antlrd.lib
4.後は「適用」ボタンを押下して反映完了です。

同様に openvrml,openvrml-gl,regex についても、デバッグ版の出力ファイル名を下記のように変更します。

 $(OutDir)/openvrml.lib
       ↓
 $(OutDir)/openvrmld.lib

 $(OutDir)/openvrml-gl.lib
       ↓
 $(OutDir)/openvrml-gld.lib

 $(OutDir)/regex.lib
       ↓
 $(OutDir)/regexd.lib

さて、5つ目のプロジェクトである lookat についてですが、詳細は見ていませんが、ライブラリ構築のプロジェクトではなく、
したがって ARToolKit 本体からは使用されません。
それでも「ビルドするとエラーを吐いてみっともない」という向きの為に、修正方法を書いておきます。

①ライブラリパスの追加
1.「ツール」メニュー→「オプション」とたどり、「プロジェクトおよびソリューション」の中にある「VC++ディレクトリ」を
 表示します。
2.「ディレクトリを表示するプロジェクト」の項目で「ライブラリファイル」を選択し、下部のパスが並んでいるところに
 「C:\Program Files (x86)\ARToolKit\OpenVRML\dependencies\lib」
 を追加します。

②依存ファイルの追加
1.lookat プロジェクトのプロパティを開き、構成で「Debug」を選択します。
2.ウィンドウ左のツリー部分で「リンカ」→「入力」を選択します。
3.ウィンドウ右の「追加の依存ファイル」欄に、
 libjpeg.lib
 libpng.lib
 zlib.lib
 を追加します。

ここまでで再び OpenVRML をビルドしてみます。
バッチビルドで 全プロジェクトの Debug版 Release版 すべてをビルドします。すると・・・

2>------ ビルド開始: プロジェクト: lookat, 構成: Release Win32 ------
2>リンクしています...
2>LINK : fatal error LNK1104: ファイル 'libc.lib' を開くことができません。

というエラーが・・・。これはもう追いきれないので、先の参考ページの助言に従いやっつけます(苦笑)。

1.lookatプロジェクトのプロパティを開き、構成で「Release」を選択します。
2.ウィンドウ左のツリー部分で「リンカ」→「入力」を選択します。
3.ウィンドウ右の「特定ライブラリの無視」欄に libc.lib を追加します。
4.「適用」ボタンを押下して反映します。
5.そのまま、構成を「Debug」に切り替えます。
6.同様に「特定ライブラリの無視」欄に libc.lib を追加します。
7.「適用」ボタンを押下して反映します。

そして再びバッチビルド実行!成功です。
「C:\Program Files (x86)\ARToolKit\OpenVRML\src\openvrml-0.14.3\ide-projects\Windows\VisualC7\OpenVRML」
にある

 antlr
 openvrml
 openvrml-gl
 regex

の各フォルダ配下の Release フォルダと Debug フォルダ内にある *.lib ファイルを
「C:\Program Files (x86)\ARToolKit\OpenVRML\dependencies\lib」
へコピーします。

ここまででようやく目的の作業に取り掛かれるようになりました。
おもむろに ARToolKit のソリューションファイルを開いて下記の変更を行います。

1.libARvideo プロジェクトのプロパティを開き、構成で「Debug」を選択します。
2.ウィンドウ左のツリー部分で「リンカ」→「入力」を選択します。
3.ウィンドウ右の「追加の依存ファイル」を変更します。

 DSVLd.lib comsupp.lib
      ↓
 DSVL.lib comsupp.lib

4.「適用」ボタンを押下して反映します。
5.simpleVRML プロジェクトのプロパティを開き、構成で「Debug」を選択します。
6.ウィンドウ左のツリー部分で「リンカ」→「入力」を選択します。
7.ウィンドウ右の「追加の依存ファイル」を変更します。

 openvrml.lib
   ↓
 openvrmld.lib

 openvrml-gl.lib
   ↓
 openvrml-gld.lib

 antlr.lib
   ↓
 antlrd.lib

 regex.lib
   ↓
 regexd.lib

「適用」ボタンを押下して反映完了したら、一気に全てをバッチビルドします。なんとか成功!

【ビルド、出来たョ!】
はちゅねペパクラ

ただ、simpleVRML については jpeg62.dll, libpng12.dll, zlib1.dll の3本を見つけてこないと動作しませんでした。

p.s.なんと「工学ナビ」の中の人が執筆された某書籍付属のディスクではこんな感じの修正が為されている様です。

スポンサーサイト

CATEGORY:趣味 | CM(0) | TB(0) |
xx HOME xx
トラックバックURL
→http://3335.blog106.fc2.com/tb.php/105-914c8046

コメントの投稿














xx HOME xx

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。