未解決の外部シンボル
未解決の外部シンボル
いまc++を使って弾幕stgを作っているものです。
そこで自分だけで解決できないエラーが発生したため質問をしました。
コードをほとんどいじっていないのに次のようなエラーが発生しています。
出力
1>------ ビルド開始: プロジェクト:THLIK, 構成:Debug Win32 ------
1>Zako_01_1.obj : error LNK2001: 外部シンボル ""int __cdecl DxLib::DrawCircle(int,int,int,int,int)" (?DrawCircle@DxLib@@YAHHHHHH@Z)" は未解決です。
1>Zako_01_2.obj : error LNK2001: 外部シンボル ""int __cdecl DxLib::DrawCircle(int,int,int,int,int)" (?DrawCircle@DxLib@@YAHHHHHH@Z)" は未解決です。
1>Zako_01_3.obj : error LNK2001: 外部シンボル ""int __cdecl DxLib::DrawCircle(int,int,int,int,int)" (?DrawCircle@DxLib@@YAHHHHHH@Z)" は未解決です。
1>Bullet.obj : error LNK2001: 外部シンボル ""int __cdecl DxLib::DrawCircle(int,int,int,int,int)" (?DrawCircle@DxLib@@YAHHHHHH@Z)" は未解決です。
1>etbreak.obj : error LNK2001: 外部シンボル ""int __cdecl DxLib::DrawCircle(int,int,int,int,int)" (?DrawCircle@DxLib@@YAHHHHHH@Z)" は未解決です。
1>PlOption00.obj : error LNK2001: 外部シンボル ""int __cdecl DxLib::DrawCircle(int,int,int,int,int)" (?DrawCircle@DxLib@@YAHHHHHH@Z)" は未解決です。
1>Zako_01_0.obj : error LNK2001: 外部シンボル ""int __cdecl DxLib::DrawCircle(int,int,int,int,int)" (?DrawCircle@DxLib@@YAHHHHHH@Z)" は未解決です。
1>Zako_01_1.obj : error LNK2001: 外部シンボル ""unsigned long __cdecl DxLib::GetColor(int,int,int)" (?GetColor@DxLib@@YAKHHH@Z)" は未解決です。
1>Zako_01_2.obj : error LNK2001: 外部シンボル ""unsigned long __cdecl DxLib::GetColor(int,int,int)" (?GetColor@DxLib@@YAKHHH@Z)" は未解決です。
1>Zako_01_3.obj : error LNK2001: 外部シンボル ""unsigned long __cdecl DxLib::GetColor(int,int,int)" (?GetColor@DxLib@@YAKHHH@Z)" は未解決です。
1>Bullet.obj : error LNK2001: 外部シンボル ""unsigned long __cdecl DxLib::GetColor(int,int,int)" (?GetColor@DxLib@@YAKHHH@Z)" は未解決です。
1>etbreak.obj : error LNK2001: 外部シンボル ""unsigned long __cdecl DxLib::GetColor(int,int,int)" (?GetColor@DxLib@@YAKHHH@Z)" は未解決です。
1>PlOption00.obj : error LNK2001: 外部シンボル ""unsigned long __cdecl DxLib::GetColor(int,int,int)" (?GetColor@DxLib@@YAKHHH@Z)" は未解決です。
1>Zako_01_0.obj : error LNK2001: 外部シンボル ""unsigned long __cdecl DxLib::GetColor(int,int,int)" (?GetColor@DxLib@@YAKHHH@Z)" は未解決です。
1>main.obj : error LNK2019: 未解決の外部シンボル "int __cdecl DxLib::ClearDrawScreen(struct tagRECT *)" (?ClearDrawScreen@DxLib@@YAHPAUtagRECT@@@Z) が関数 "int __cdecl ProcessLoop(void)" (?ProcessLoop@@YAHXZ) で参照されました。
1>E:\project\THLIK\Debug\THLIK.exe : fatal error LNK1120: 3 件の未解決の外部参照
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
開発環境は
win 10 home
vc++2015 community
DxLib Ver 3.16d
です。
よろしくお願いします。
初心者ですがよろしくお願いします。
そこで自分だけで解決できないエラーが発生したため質問をしました。
コードをほとんどいじっていないのに次のようなエラーが発生しています。
出力
1>------ ビルド開始: プロジェクト:THLIK, 構成:Debug Win32 ------
1>Zako_01_1.obj : error LNK2001: 外部シンボル ""int __cdecl DxLib::DrawCircle(int,int,int,int,int)" (?DrawCircle@DxLib@@YAHHHHHH@Z)" は未解決です。
1>Zako_01_2.obj : error LNK2001: 外部シンボル ""int __cdecl DxLib::DrawCircle(int,int,int,int,int)" (?DrawCircle@DxLib@@YAHHHHHH@Z)" は未解決です。
1>Zako_01_3.obj : error LNK2001: 外部シンボル ""int __cdecl DxLib::DrawCircle(int,int,int,int,int)" (?DrawCircle@DxLib@@YAHHHHHH@Z)" は未解決です。
1>Bullet.obj : error LNK2001: 外部シンボル ""int __cdecl DxLib::DrawCircle(int,int,int,int,int)" (?DrawCircle@DxLib@@YAHHHHHH@Z)" は未解決です。
1>etbreak.obj : error LNK2001: 外部シンボル ""int __cdecl DxLib::DrawCircle(int,int,int,int,int)" (?DrawCircle@DxLib@@YAHHHHHH@Z)" は未解決です。
1>PlOption00.obj : error LNK2001: 外部シンボル ""int __cdecl DxLib::DrawCircle(int,int,int,int,int)" (?DrawCircle@DxLib@@YAHHHHHH@Z)" は未解決です。
1>Zako_01_0.obj : error LNK2001: 外部シンボル ""int __cdecl DxLib::DrawCircle(int,int,int,int,int)" (?DrawCircle@DxLib@@YAHHHHHH@Z)" は未解決です。
1>Zako_01_1.obj : error LNK2001: 外部シンボル ""unsigned long __cdecl DxLib::GetColor(int,int,int)" (?GetColor@DxLib@@YAKHHH@Z)" は未解決です。
1>Zako_01_2.obj : error LNK2001: 外部シンボル ""unsigned long __cdecl DxLib::GetColor(int,int,int)" (?GetColor@DxLib@@YAKHHH@Z)" は未解決です。
1>Zako_01_3.obj : error LNK2001: 外部シンボル ""unsigned long __cdecl DxLib::GetColor(int,int,int)" (?GetColor@DxLib@@YAKHHH@Z)" は未解決です。
1>Bullet.obj : error LNK2001: 外部シンボル ""unsigned long __cdecl DxLib::GetColor(int,int,int)" (?GetColor@DxLib@@YAKHHH@Z)" は未解決です。
1>etbreak.obj : error LNK2001: 外部シンボル ""unsigned long __cdecl DxLib::GetColor(int,int,int)" (?GetColor@DxLib@@YAKHHH@Z)" は未解決です。
1>PlOption00.obj : error LNK2001: 外部シンボル ""unsigned long __cdecl DxLib::GetColor(int,int,int)" (?GetColor@DxLib@@YAKHHH@Z)" は未解決です。
1>Zako_01_0.obj : error LNK2001: 外部シンボル ""unsigned long __cdecl DxLib::GetColor(int,int,int)" (?GetColor@DxLib@@YAKHHH@Z)" は未解決です。
1>main.obj : error LNK2019: 未解決の外部シンボル "int __cdecl DxLib::ClearDrawScreen(struct tagRECT *)" (?ClearDrawScreen@DxLib@@YAHPAUtagRECT@@@Z) が関数 "int __cdecl ProcessLoop(void)" (?ProcessLoop@@YAHXZ) で参照されました。
1>E:\project\THLIK\Debug\THLIK.exe : fatal error LNK1120: 3 件の未解決の外部参照
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
開発環境は
win 10 home
vc++2015 community
DxLib Ver 3.16d
です。
よろしくお願いします。
初心者ですがよろしくお願いします。
Re: 未解決の外部シンボル
コードを見ていないので何とも言えませんが、
DxLibの関数のコードが見当たらないって言ってるようですね。
たぶんDxLibがちゃんと読み込めてないからだと思います。
前までしっかり動いていたのであれば、DxLibがインストールされているファイルを削除したり、移動させたのが原因か、設定がしっかりできていないのが原因かもしれません。
ここでも見て設定しなおすともしかしたら上手くいくかもしれません。
DxLibの関数のコードが見当たらないって言ってるようですね。
たぶんDxLibがちゃんと読み込めてないからだと思います。
前までしっかり動いていたのであれば、DxLibがインストールされているファイルを削除したり、移動させたのが原因か、設定がしっかりできていないのが原因かもしれません。
ここでも見て設定しなおすともしかしたら上手くいくかもしれません。
Re: 未解決の外部シンボル
ノウル さん返信ありがとうございます。
dxlibを入れ直しプロパティの設定を見直してみましたが、
同じようなエラーが発生してしまいます。どういうことでしょうか?
dxlibを入れ直しプロパティの設定を見直してみましたが、
同じようなエラーが発生してしまいます。どういうことでしょうか?
Re: 未解決の外部シンボル
よく見たところ少しエラーログが変わっていたのではりなおします
1>DxUseCLib_d.lib(DxUseCLib.obj) : error LNK2019: 未解決の外部シンボル _vsprintf が関数 "int __cdecl DxLib::_VSPRINTF(char *,char const *,char *)" (?_VSPRINTF@DxLib@@YAHPADPBD0@Z) で参照されました。
1>DxUseCLib_d.lib(DxUseCLib.obj) : error LNK2019: 未解決の外部シンボル _vswprintf が関数 "int __cdecl DxLib::_VSWPRINTF(unsigned short *,unsigned short const *,char *)" (?_VSWPRINTF@DxLib@@YAHPAGPBGPAD@Z) で参照されました。
1>LIBCMTD.lib(vswprintf.obj) : error LNK2001: 外部シンボル "_vswprintf" は未解決です。
1>libpng_d.lib(pngrutil.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngwutil.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libjpeg_d.lib(jerror.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngread.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngrtran.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(png.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngwrite.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libjpeg_d.lib(jmemmgr.obj) : error LNK2019: 未解決の外部シンボル _sscanf が関数 _jinit_memory_mgr で参照されました。
1>LIBCMTD.lib(vswprintf.obj) : error LNK2001: 外部シンボル "__vswprintf" は未解決です。
1>E:\project\THLIK\Debug\THLIK.exe : fatal error LNK1120: 5 件の未解決の外部参照
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
1>DxUseCLib_d.lib(DxUseCLib.obj) : error LNK2019: 未解決の外部シンボル _vsprintf が関数 "int __cdecl DxLib::_VSPRINTF(char *,char const *,char *)" (?_VSPRINTF@DxLib@@YAHPADPBD0@Z) で参照されました。
1>DxUseCLib_d.lib(DxUseCLib.obj) : error LNK2019: 未解決の外部シンボル _vswprintf が関数 "int __cdecl DxLib::_VSWPRINTF(unsigned short *,unsigned short const *,char *)" (?_VSWPRINTF@DxLib@@YAHPAGPBGPAD@Z) で参照されました。
1>LIBCMTD.lib(vswprintf.obj) : error LNK2001: 外部シンボル "_vswprintf" は未解決です。
1>libpng_d.lib(pngrutil.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngwutil.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libjpeg_d.lib(jerror.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngread.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngrtran.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(png.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngwrite.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libjpeg_d.lib(jmemmgr.obj) : error LNK2019: 未解決の外部シンボル _sscanf が関数 _jinit_memory_mgr で参照されました。
1>LIBCMTD.lib(vswprintf.obj) : error LNK2001: 外部シンボル "__vswprintf" は未解決です。
1>E:\project\THLIK\Debug\THLIK.exe : fatal error LNK1120: 5 件の未解決の外部参照
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
- MoNoQLoREATOR
- 記事: 284
- 登録日時: 13年前
- 住所: 東京
Re: 未解決の外部シンボル
キャラクタセットに問題があるのかもしれません。
日本語版VisualStudioをお使いの場合:
プロジェクトのプロパティを開き、
左側の 構成プロパティ -> 全般 を選択し、右側の 文字セット という項目を見てください。 Unicode 文字セットを使用する か マルチバイト文字セットを使用する のどちらかを設定できるはずですが、それを逆にしてビルドしてみてください。
英語版VisualStudioをお使いの場合:
プロジェクトのプロパティを開き、
左側の Configuration Properties -> General を選択し、右側の Character Set という項目を見てください。 Use Unicode Character Set か Use Multi-Byte Character Set のどちらかを設定できるはずですが、それを逆にしてビルドしてみてください。
日本語版VisualStudioをお使いの場合:
プロジェクトのプロパティを開き、
左側の 構成プロパティ -> 全般 を選択し、右側の 文字セット という項目を見てください。 Unicode 文字セットを使用する か マルチバイト文字セットを使用する のどちらかを設定できるはずですが、それを逆にしてビルドしてみてください。
英語版VisualStudioをお使いの場合:
プロジェクトのプロパティを開き、
左側の Configuration Properties -> General を選択し、右側の Character Set という項目を見てください。 Use Unicode Character Set か Use Multi-Byte Character Set のどちらかを設定できるはずですが、それを逆にしてビルドしてみてください。
- MoNoQLoREATOR
- 記事: 284
- 登録日時: 13年前
- 住所: 東京
Re: 未解決の外部シンボル
もしくはライブラリディレクトリの設定がふとした拍子に変更されている可能性があります。
日本語版VisualStudioをお使いの場合:
プロジェクトのプロパティを開き、 左側の 構成プロパティ -> VC++ ディレクトリ を選択し、右側の ライブラリ ディレクトリ をダブルクリックすると右の方に下向きの矢印が出るはずなのでそれを押して<編集...>を押してください。左下に 親またはプロジェクトの規定値から継承(I) という項目があるのでそのボックスにチェックが入っていなければ入れてください。それが原因です。
英語版VisualStudioをお使いの場合:
プロジェクトのプロパティを開き、 左側の Configuration Properties -> VC++ Directories を選択し、右側の Library Directories をダブルクリックすると右の方に下向きの矢印が出るはずなのでそれを押して<Edit...>を押してください。左下に Inherit from parent or project defaults という項目があるのでそのボックスにチェックが入っていなければ入れてください。それが原因です。
日本語版VisualStudioをお使いの場合:
プロジェクトのプロパティを開き、 左側の 構成プロパティ -> VC++ ディレクトリ を選択し、右側の ライブラリ ディレクトリ をダブルクリックすると右の方に下向きの矢印が出るはずなのでそれを押して<編集...>を押してください。左下に 親またはプロジェクトの規定値から継承(I) という項目があるのでそのボックスにチェックが入っていなければ入れてください。それが原因です。
英語版VisualStudioをお使いの場合:
プロジェクトのプロパティを開き、 左側の Configuration Properties -> VC++ Directories を選択し、右側の Library Directories をダブルクリックすると右の方に下向きの矢印が出るはずなのでそれを押して<Edit...>を押してください。左下に Inherit from parent or project defaults という項目があるのでそのボックスにチェックが入っていなければ入れてください。それが原因です。
Re: 未解決の外部シンボル
MoNoQLoREATOR さん 返信ありがとうございます。
文字コードを変えてみたり、ライブラリディレクトリの設定を確認してみましたが結果は変わりませんでした。どうすればいいのでしょうか。
文字コードを変えてみたり、ライブラリディレクトリの設定を確認してみましたが結果は変わりませんでした。どうすればいいのでしょうか。
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 14年前
- 住所: 東海地方
- 連絡を取る:
Re: 未解決の外部シンボル
こちらにある手順を、ちゃんと全部やって頂けると解決できるかと思います。
http://dxlib.o.oo7.jp/dxuse.html
DXLIBご本家のサイトですので、あちこち見て頂くと勉強になります。
http://dxlib.o.oo7.jp/
特にリファレンスなどは必需品です。
http://dxlib.o.oo7.jp/dxuse.html
DXLIBご本家のサイトですので、あちこち見て頂くと勉強になります。
http://dxlib.o.oo7.jp/
特にリファレンスなどは必需品です。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: 未解決の外部シンボル
softya(ソフト屋)返信ありがとうございます
http://dxlib.o.oo7.jp/dxuse.htmlを参考に
新しいwin32プロジェクトを作ってみていましたが
やはり次のようなエラーが出ます。
1>------ ビルド開始: プロジェクト:Win32Project1, 構成:Debug Win32 ------
1> main.cpp
1>DxUseCLib_d.lib(DxUseCLib.obj) : error LNK2019: 未解決の外部シンボル _vsprintf が関数 "int __cdecl DxLib::_VSPRINTF(char *,char const *,char *)" (?_VSPRINTF@DxLib@@YAHPADPBD0@Z) で参照されました。
1>DxUseCLib_d.lib(DxUseCLib.obj) : error LNK2019: 未解決の外部シンボル _vswprintf が関数 "int __cdecl DxLib::_VSWPRINTF(unsigned short *,unsigned short const *,char *)" (?_VSWPRINTF@DxLib@@YAHPAGPBGPAD@Z) で参照されました。
1>LIBCMTD.lib(vswprintf.obj) : error LNK2001: 外部シンボル "_vswprintf" は未解決です。
1>libpng_d.lib(pngrutil.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngwutil.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libjpeg_d.lib(jerror.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngread.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngrtran.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(png.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngwrite.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libjpeg_d.lib(jmemmgr.obj) : error LNK2019: 未解決の外部シンボル _sscanf が関数 _jinit_memory_mgr で参照されました。
1>LIBCMTD.lib(vswprintf.obj) : error LNK2001: 外部シンボル "__vswprintf" は未解決です。
1>(省略)\Win32Project1.exe : fatal error LNK1120: 5 件の未解決の外部参照
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
http://dxlib.o.oo7.jp/dxuse.htmlを参考に
新しいwin32プロジェクトを作ってみていましたが
やはり次のようなエラーが出ます。
1>------ ビルド開始: プロジェクト:Win32Project1, 構成:Debug Win32 ------
1> main.cpp
1>DxUseCLib_d.lib(DxUseCLib.obj) : error LNK2019: 未解決の外部シンボル _vsprintf が関数 "int __cdecl DxLib::_VSPRINTF(char *,char const *,char *)" (?_VSPRINTF@DxLib@@YAHPADPBD0@Z) で参照されました。
1>DxUseCLib_d.lib(DxUseCLib.obj) : error LNK2019: 未解決の外部シンボル _vswprintf が関数 "int __cdecl DxLib::_VSWPRINTF(unsigned short *,unsigned short const *,char *)" (?_VSWPRINTF@DxLib@@YAHPAGPBGPAD@Z) で参照されました。
1>LIBCMTD.lib(vswprintf.obj) : error LNK2001: 外部シンボル "_vswprintf" は未解決です。
1>libpng_d.lib(pngrutil.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngwutil.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libjpeg_d.lib(jerror.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngread.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngrtran.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(png.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngwrite.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libjpeg_d.lib(jmemmgr.obj) : error LNK2019: 未解決の外部シンボル _sscanf が関数 _jinit_memory_mgr で参照されました。
1>LIBCMTD.lib(vswprintf.obj) : error LNK2001: 外部シンボル "__vswprintf" は未解決です。
1>(省略)\Win32Project1.exe : fatal error LNK1120: 5 件の未解決の外部参照
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
Re: 未解決の外部シンボル
softya(ソフト屋)返信ありがとうございます
http://dxlib.o.oo7.jp/dxuse.htmlを参考に
新しいwin32プロジェクトを作ってみていましたが
やはり次のようなエラーが出ます。
1>------ ビルド開始: プロジェクト:Win32Project1, 構成:Debug Win32 ------
1> main.cpp
1>DxUseCLib_d.lib(DxUseCLib.obj) : error LNK2019: 未解決の外部シンボル _vsprintf が関数 "int __cdecl DxLib::_VSPRINTF(char *,char const *,char *)" (?_VSPRINTF@DxLib@@YAHPADPBD0@Z) で参照されました。
1>DxUseCLib_d.lib(DxUseCLib.obj) : error LNK2019: 未解決の外部シンボル _vswprintf が関数 "int __cdecl DxLib::_VSWPRINTF(unsigned short *,unsigned short const *,char *)" (?_VSWPRINTF@DxLib@@YAHPAGPBGPAD@Z) で参照されました。
1>LIBCMTD.lib(vswprintf.obj) : error LNK2001: 外部シンボル "_vswprintf" は未解決です。
1>libpng_d.lib(pngrutil.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngwutil.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libjpeg_d.lib(jerror.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngread.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngrtran.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(png.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngwrite.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libjpeg_d.lib(jmemmgr.obj) : error LNK2019: 未解決の外部シンボル _sscanf が関数 _jinit_memory_mgr で参照されました。
1>LIBCMTD.lib(vswprintf.obj) : error LNK2001: 外部シンボル "__vswprintf" は未解決です。
1>(省略)\Win32Project1.exe : fatal error LNK1120: 5 件の未解決の外部参照
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
http://dxlib.o.oo7.jp/dxuse.htmlを参考に
新しいwin32プロジェクトを作ってみていましたが
やはり次のようなエラーが出ます。
1>------ ビルド開始: プロジェクト:Win32Project1, 構成:Debug Win32 ------
1> main.cpp
1>DxUseCLib_d.lib(DxUseCLib.obj) : error LNK2019: 未解決の外部シンボル _vsprintf が関数 "int __cdecl DxLib::_VSPRINTF(char *,char const *,char *)" (?_VSPRINTF@DxLib@@YAHPADPBD0@Z) で参照されました。
1>DxUseCLib_d.lib(DxUseCLib.obj) : error LNK2019: 未解決の外部シンボル _vswprintf が関数 "int __cdecl DxLib::_VSWPRINTF(unsigned short *,unsigned short const *,char *)" (?_VSWPRINTF@DxLib@@YAHPAGPBGPAD@Z) で参照されました。
1>LIBCMTD.lib(vswprintf.obj) : error LNK2001: 外部シンボル "_vswprintf" は未解決です。
1>libpng_d.lib(pngrutil.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngwutil.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libjpeg_d.lib(jerror.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngread.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngrtran.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(png.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libpng_d.lib(pngwrite.obj) : error LNK2001: 外部シンボル "_sprintf" は未解決です。
1>libjpeg_d.lib(jmemmgr.obj) : error LNK2019: 未解決の外部シンボル _sscanf が関数 _jinit_memory_mgr で参照されました。
1>LIBCMTD.lib(vswprintf.obj) : error LNK2001: 外部シンボル "__vswprintf" は未解決です。
1>(省略)\Win32Project1.exe : fatal error LNK1120: 5 件の未解決の外部参照
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 14年前
- 住所: 東海地方
- 連絡を取る:
Re: 未解決の外部シンボル
すべてをちゃんと設定されているなら、その問題は起きないはずなんです。
3.14bで治ったはずですので。もし起きるなら設定に間違いが有るか、ちゃんと3.16bを参照していないかです。
本当に間違っていないか、下記の手順を何度も確認しながら行ってみてください。
http://dxlib.o.oo7.jp/use/dxuse_vscom2015.html
「6.プロジェクトのビルド、実行」まで、少しもアレンジを加えずに行う必要があります。
手順を抜かしたり、ここの特殊なプロジェクトを使ってはいけません。
3.14bで治ったはずですので。もし起きるなら設定に間違いが有るか、ちゃんと3.16bを参照していないかです。
本当に間違っていないか、下記の手順を何度も確認しながら行ってみてください。
http://dxlib.o.oo7.jp/use/dxuse_vscom2015.html
「6.プロジェクトのビルド、実行」まで、少しもアレンジを加えずに行う必要があります。
手順を抜かしたり、ここの特殊なプロジェクトを使ってはいけません。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: 未解決の外部シンボル
softya(ソフト屋)さん返信ありがとうございます。
確認したところ
自分のパソコンにdxlibの展開exeがいくつもあり間違って最新版ではないものを最新版だと思って展開していたようです。
勘違いをしていた上にそれに気づくことができずすみませんでした。
これにて解決とさせていただきます。
解決方法
dxlibを最新版にする。
しっかりと確認する。
確認したところ
自分のパソコンにdxlibの展開exeがいくつもあり間違って最新版ではないものを最新版だと思って展開していたようです。
勘違いをしていた上にそれに気づくことができずすみませんでした。
これにて解決とさせていただきます。
解決方法
dxlibを最新版にする。
しっかりと確認する。