Re: g++で失敗する ( No.1 ) |
- 名前:管理人 日時:2024/01/21 15:23
超初心者の方でしたら MinGW版よりも Visual C++版をお使いになられた方が良いかもしれません…
> 「DxLib::DxLib_Init()」等が見つからないと出てきます
そのようなエラーでしたら -Iオプション と -LオプションでDXライブラリのパッケージの中の
『プロジェクトに追加すべきファイル_GCC(MinGW)用』というフォルダの中にある MinGW のバージョンに
合ったフォルダのパスを指定すれば良いのですが、g++ のバージョンに合っていないフォルダを
指定するとやはりエラーになってしまいます
お使いの g++ のバージョンは幾つでしょうか?
|
遅れて申し訳ございません ( No.2 ) |
- 名前:超初心者です 日時:2024/02/23 17:58
返信がすごくすごく遅くなり、申し訳ございません。
gccのバージョンは、「gcc -v」でだすと、
「gcc version 12.2.0 (x86_64-win32-seh-rev2, Built by MinGW-64 project」
と出てきました。
githubのところからダウンロードしました。
よろしくおお願いします。
※vc++は親に普段使っているパソコンではインターネット接続を許可されておらず、入れられません。入れられたら入れているのですが、、。vscodeでどうにかなったりはしませんよね?
|
Re: g++で失敗する ( No.3 ) |
- 名前:管理人 日時:2024/02/24 00:46
> gccのバージョンは、「gcc -v」でだすと、
> 「gcc version 12.2.0 (x86_64-win32-seh-rev2, Built by MinGW-64 project」
> と出てきました。
了解です
それでしたらDXライブラリGnu C++版の中の『プロジェクトに追加すべきファイル_GCC(MinGW)用』フォルダの中にある
12_2_0_x86_64_release_win32_seh_ucrt_rt_v10_rev2
という名前のフォルダの中にあるファイルを使用すれば大丈夫だと思います
g++ のコマンドのオプションに -I と -L で 12_2_0_x86_64_release_win32_seh_ucrt_rt_v10_rev2 の
フォルダへのパスを指定すれば『「DxLib::DxLib_Init()」等が見つからない』というエラーは出なくなると思います
> vscodeでどうにかなったりはしませんよね?
私は vscode について詳しくないのでお答えできませんが、
『vscode DXライブラリ』
で検索すると vscode でDXライブラリを使用する方法について解説されているウェブサイトが
幾つも見つかりますので、よろしければ検索してみてください
|
Re: g++で失敗する ( No.4 ) |
- 名前:超初心者です 日時:2024/02/25 08:15
g++ -o test -I"C:\mingw64\include" -L"C:\mingw64\lib" -DDX_GCC_COMPILE -mwindows -lgcc -lDxLib -lDxUseCLib -lDxDrawFunc -ljpeg -lpng -lzlib -ltiff -ltheora_static -lvorbis_static -lvorbis_static -lvorbisfile_static -logg_static -lbulletdynamics -lbulletcollision -lbulletmath -lopusfile -lopus -lsilk_common -lcelt C:\Users\UserName\Desktop\programming\c++\test\test.cpp
でコンパイルすると、
C:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/12.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:\Users\watat\AppData\Local\Temp\ccguZIVX.o:test.cpp:(.text+0x19): undefined reference to `DxLib::DxLib_Init()'
C:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/12.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:\Users\watat\AppData\Local\Temp\ccguZIVX.o:test.cpp:(.text+0x3f): undefined reference to `DxLib::GetColor(int, int, int)'
C:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/12.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:\Users\watat\AppData\Local\Temp\ccguZIVX.o:test.cpp:(.text+0x51): undefined reference to `DxLib::DrawPixel(int, int, unsigned int)'
C:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/12.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:\Users\watat\AppData\Local\Temp\ccguZIVX.o:test.cpp:(.text+0x56): undefined reference to `DxLib::WaitKey()'
C:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/12.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:\Users\watat\AppData\Local\Temp\ccguZIVX.o:test.cpp:(.text+0x5b): undefined reference to `DxLib::DxLib_End()'
collect2.exe: error: ld returned 1 exit status
と出てきます。
どうすればよいでしょうか
|
Re: g++で失敗する ( No.5 ) |
- 名前:管理人 日時:2024/02/25 13:02
> どうすればよいでしょうか
No.3 でもお伝えした通りです
------------------------------------------------------------
それでしたらDXライブラリGnu C++版の中の『プロジェクトに追加すべきファイル_GCC(MinGW)用』フォルダの中にある
12_2_0_x86_64_release_win32_seh_ucrt_rt_v10_rev2
という名前のフォルダの中にあるファイルを使用すれば大丈夫だと思います
g++ のコマンドのオプションに -I と -L で 12_2_0_x86_64_release_win32_seh_ucrt_rt_v10_rev2 の
フォルダへのパスを指定すれば『「DxLib::DxLib_Init()」等が見つからない』というエラーは出なくなると思います
------------------------------------------------------------
|