vc++ 2005を使っています
初学者です
サンプルをいじっていますので、ソースが古いのか、ライブラリの設定がおかしいのかわからない状態です
エラーの内容は
LINK : warning LNK4098: defaultlib 'LIBCMT' は他のライブラリの使用と競合しています。/NODEFAULTLIB:library を使用してください。
teki.obj : error LNK2019: 未解決の外部シンボル __CrtDbgReportW が関数 "public: __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z) で参照されました。
libcpmtd.lib(stdthrow.obj) : error LNK2001: 外部シンボル "__CrtDbgReportW" は未解決です。
animdraw.obj : error LNK2001: 外部シンボル "__CrtDbgReportW" は未解決です。
baku.obj : error LNK2001: 外部シンボル "__CrtDbgReportW" は未解決です。
jiki.obj : error LNK2001: 外部シンボル "__CrtDbgReportW" は未解決です。
main.obj : error LNK2001: 外部シンボル "__CrtDbgReportW" は未解決です。
libcpmtd.lib(xdebug.obj) : error LNK2019: 未解決の外部シンボル __malloc_dbg が関数 "void * __cdecl operator new(unsigned int,struct std::_DebugHeapTag_t const &,char *,int)" (??2@YAPAXIABU_DebugHeapTag_t@std@@PADH@Z) で参照されました。
libcpmtd.lib(xdebug.obj) : error LNK2019: 未解決の外部シンボル __free_dbg が関数 "void __cdecl operator delete(void *,struct std::_DebugHeapTag_t const &,char *,int)" (??3@YAXPAXABU_DebugHeapTag_t@std@@PADH@Z) で参照されました。
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _jtransform_execute_transformation が関数 _main で参照されました。
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _jcopy_markers_execute が関数 _main で参照されました。
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _jtransform_adjust_parameters が関数 _main で参照されました。
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _jtransform_request_workspace が関数 _main で参照されました。
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _jcopy_markers_setup が関数 _main で参照されました。
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _write_stdout が関数 _main で参照されました。
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _read_stdin が関数 _main で参照されました。
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _read_scan_script が関数 _parse_switches で参照されました。
libjpeg.lib(jpegtran.obj) : error LNK2019: 未解決の外部シンボル _keymatch が関数 _parse_switches で参照されました。
です
どうかご教授よろしくお願いします
Release版とDebug版とが混じっているように見受けられます。
win32 アプリケーションでプロジェクトから作り直しましたら、エラーが減りましたが
いまだに同じようなエラーが残っています
LINK : warning LNK4098: defaultlib 'LIBCMT' は他のライブラリの使用と競合しています。/NODEFAULTLIB:library を使用してください。
teki.obj : error LNK2019: 未解決の外部シンボル __CrtDbgReportW が関数 "public: __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z) で参照されました。
libcpmtd.lib(stdthrow.obj) : error LNK2001: 外部シンボル "__CrtDbgReportW" は未解決です。
animdraw.obj : error LNK2001: 外部シンボル "__CrtDbgReportW" は未解決です。
baku.obj : error LNK2001: 外部シンボル "__CrtDbgReportW" は未解決です。
jiki.obj : error LNK2001: 外部シンボル "__CrtDbgReportW" は未解決です。
main.obj : error LNK2001: 外部シンボル "__CrtDbgReportW" は未解決です。
libcpmtd.lib(xdebug.obj) : error LNK2019: 未解決の外部シンボル __malloc_dbg が関数 "void * __cdecl operator new(unsigned int,struct std::_DebugHeapTag_t const &,char *,int)" (??2@YAPAXIABU_DebugHeapTag_t@std@@PADH@Z) で参照されました。
libcpmtd.lib(xdebug.obj) : error LNK2019: 未解決の外部シンボル __free_dbg が関数 "void __cdecl operator delete(void *,struct std::_DebugHeapTag_t const &,char *,int)" (??3@YAXPAXABU_DebugHeapTag_t@std@@PADH@Z) で参照されました。
επιστημηさん
返答ありがとうございます
プロジェクト→プロパティから
構成マネージャをみましたが、構成はデバックになっていました
確認方法が間違っていたのであればすみません
> 構成マネージャをみましたが、構成はデバックになっていました
にもかかわらず、Release版のライブラリをリンクしてますね。
> LINK : warning LNK4098: defaultlib 'LIBCMT' は他のライブラリの使用> と競合しています。/NODEFAULTLIB:library を使用してください。
LIBCMTはRelease版です。
調べたのですが、わからないので解決策をご教授いただけませんか?
http://support.microsoft.com/kb/148652/ja#appliesto
ここの説明を読んでも、VC++での、どこを指しているのか理解できていないのでわかりません
もしくは、調べる項目が間違っているかもしれません
すみませんが、よろしくお願いします
どういう状況なんでしょうね。
状況がわからないので推測です。
LIBCMTとリンクするように指示がある〜.libと
LIBCMTと内容がかぶっているがべつの(デバッグ用)と
リンクするようになっているexeということかな?
構成をReleaseにすればexeを作れるってこと?
リリース版にしてみましたが、リンクまでいかない内にエラーがおきるようです
詳しい内容は、と言うよりも、詳しい状況が理解できていないのが現状です
簡単なメニュー画面を表示するまでは、DXライブラリを使用して出来たのですが
画像を利用し、メニューを充実させようとしたところ
このようなエラーが出ました
また、
書籍の完成させてあるゲームサンプルであるソースをコンパイルしたところ
同じようなエラーが起きている状況です
LIBCMTと他のライブラリとの競合が原因だろうと推測して
調べまわっていましたが、糸口がみつからず質問しました
/NODEFAULTLIB:libraryは試していないの?
VC2005でのやり方を書いてみた。
http://blog90.fc2.com/w/wclrp/file/20070728144623.png
プロジェクト選んで
右クリックでメニュー出して
プロパティを選んで
リンカの入力の特定のライブラリの無視に指定します。
wclrp ( 'o')さん
リンク先の表示が許可されていないとでます
すみませんが、許可をお願いします
表示できたから問題ないかと思ったけど
リファラチェックしているのかな
http://wclrp.blog90.fc2.com/blog-entry-31.html
wclrp ( 'o')さん
回答ありがとうございます
結果を言いますと、エラーがごまんとでました
またLIBCMTD.libでも試しましたが、だめでした
LINK : warning LNK4199: /DELAYLOAD:OleAcc.dll は無視されます。OleAcc.dll にインポートがありません。
というウォーニングが増えただけでした
ですが、参考になりました
ありがとうございます
ライブラリの検索をかけて、コンパイルしてみたところ
このようなライブラリを使用しているようです
C:\Program Files\Microsoft Visual Studio 8\VC\lib\DelayImp.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\lib\libcpmtd.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\lib\uuid.lib を検索中:
DxLib.lib を検索中:
DxUseCLib.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\lib\kernel32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\comctl32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\user32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\gdi32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\advapi32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\ole32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\shell32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\winmm.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\wsock32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\imm32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\msacm32.lib を検索中:
libpng.lib を検索中:
zlib.lib を検索中:
libjpeg.lib を検索中:
ogg_static.lib を検索中:
vorbis_static.lib を検索中:
vorbisfile_static.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\lib\LIBCMT.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\lib\OLDNAMES.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\lib\DelayImp.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\lib\libcpmtd.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\lib\uuid.lib を検索中:
DxLib.lib を検索中:
DxUseCLib.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\lib\kernel32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\comctl32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\user32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\gdi32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\advapi32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\ole32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\shell32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\winmm.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\wsock32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\imm32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\msacm32.lib を検索中:
libpng.lib を検索中:
zlib.lib を検索中:
libjpeg.lib を検索中:
ogg_static.lib を検索中:
vorbis_static.lib を検索中:
vorbisfile_static.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\lib\LIBCMT.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\lib\OLDNAMES.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\lib\DelayImp.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\lib\libcpmtd.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\lib\uuid.lib を検索中:
DxLib.lib を検索中:
DxUseCLib.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\lib\kernel32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\comctl32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\user32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\gdi32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\advapi32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\ole32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\shell32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\winmm.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\wsock32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\imm32.lib を検索中:
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib\msacm32.lib を検索中:
libpng.lib を検索中:
zlib.lib を検索中:
libjpeg.lib を検索中:
ogg_static.lib を検索中:
vorbis_static.lib を検索中:
vorbisfile_static.lib を検索中:
ツイート | ![]() |