はじめまして、8,9年前からプログラミングを始めましたがまだまともなプログラムは書けてません(画像表示、回転、移動)
以前に龍神録プログラミングの館10章までは書いてました
しばらく余裕がなくプログラミングができなくて間ができてしまいました
さらにこの一年で生活環境が変わり、ネット契約も変わりました
そこで壊れて新しくしたPCでプログラミングをしたいと思ってVisual Stdio2017をインストールしようと調べたらとてもデータ量が多いので、
生活環境の変化時にネット契約が変わり家庭で使えるデータ量がひっ迫してしまいます、どうしても小学校からの夢であるゲームプログラミングがとてもあきらめきれず何とかできないかと調べてみるとeclipseというIDEが容量は何とか大丈夫でインストールしました、肝心のDXライブラリを設定するところで困りビルドができませんでした以下に詳細を書きます。
箇条書きになってしまいますが読んでもらえると助かります
MinGW ver 6.3.0をインストール後のbeseとgcc-c++もダウンロード
eclipse ver Oxygen.1a (4.7.1a)をインストール
DxLib_GCCをCドライブ直下に解凍
eclipseで新規c++ empty projectを作成
Project Propertiesの中の[Path and symbols][Includesタブ]addボタンで[C:\DxLib_GCC\プロジェクトに追加すべきファイル_GCC(MinGW)用\5_3_0_i686]を登録時に[add all configrations],[add all languages]にチェックを入れる
[Path and symbols][libraries pathsタブ]addボタンで[C:\DxLib_GCC\プロジェクトに追加すべきファイル_GCC(MinGW)用\5_3_0_i686]を登録時に[add all configrations],[add all languages]にチェックを入れる
C/C++ Build [Setting][Tool Settingタブ]の[MinGW C++ Linker][Libraries]を開いて[Libraries(-l)]のリストに-lDxLib、-lDxUseCLib、-lDxDrawFunc、-ljpegなどを-lwを抜きで入力(-lを付けたら-lがおかしいとエラーが出ます)
同[Tool Settings]の[Library Search Path (-L)]のリストにも[C:\DxLib_GCC\プロジェクトに追加すべきファイル_GCC(MinGW)用\5_3_0_i686]を登録しました
ここまでやったらDxLib.hは認識しましたが int WINAPIからsyntax error(構文エラー)と出てビルドできませんでした
C++でDXライブラリを使ってプログラミングをするにはeclipseしかありません(もし無料であれば教えてください)
プログラミングを再開したいのでどうかご協力お願いします
eclipseでDXライブラリを使う
Re: eclipseでDXライブラリを使う
再起動したら構文エラーが消えてコンパイルすると参照が未定義と出て前回とは違うエラーが出ました
i686が32ビットだとわかったのでDXライブラリ内の最新の5_3_0に変えてみました
古いバージョン用にしても同じエラーでした(改めて設定しなおした、現在と以下のログは5.3.0を指定してます)
以下が出力されたログです(3分の一で他DxGraphicsWin.cppやDxFontWin.cppなどが出ています)
i686が32ビットだとわかったのでDXライブラリ内の最新の5_3_0に変えてみました
古いバージョン用にしても同じエラーでした(改めて設定しなおした、現在と以下のログは5.3.0を指定してます)
以下が出力されたログです(3分の一で他DxGraphicsWin.cppやDxFontWin.cppなどが出ています)
Info: Internal Builder is used for build
g++ "-LC:\\DxLib_GCC\\プロジェクトに追加すべきファイル_GCC(MinGW)用\\5_3_0_i686" -o "DxLib template.exe" main.o -lDxLib -lDxUseCLib -lDxDrawFunc -ljpeg -lpng -lzlib -ltiff -ltheora_static -lvorbis_static -lvorbisfile_static -logg_static -lbulletdynamics -lbulletcollision -lbulletmath -lopusfile -lopus -lsilk_common -lcelt
C:\DxLib_GCC\プロジェクトに追加すべきファイル_GCC(MinGW)用\5_3_0_i686/libDxLib.a(DxBaseImage.o):DxBaseImage.cpp:(.text+0x16f0): undefined reference to `DeleteObject@4'
C:\DxLib_GCC\プロジェクトに追加すべきファイル_GCC(MinGW)用\5_3_0_i686/libDxLib.a(DxBaseImage.o):DxBaseImage.cpp:(.text+0x1708): undefined reference to `DeleteDC@4'
C:\DxLib_GCC\プロジェクトに追加すべきファイル_GCC(MinGW)用\5_3_0_i686/libDxLib.a(DxBaseImage.o):DxBaseImage.cpp:(.text+0x2467): undefined reference to `CreateCompatibleDC@4'
C:\DxLib_GCC\プロジェクトに追加すべきファイル_GCC(MinGW)用\5_3_0_i686/libDxLib.a(DxBaseImage.o):DxBaseImage.cpp:(.text+0x250d): undefined reference to `CreateDIBSection@24'
C:\DxLib_GCC\プロジェクトに追加すべきファイル_GCC(MinGW)用\5_3_0_i686/libDxLib.a(DxBaseImage.o):DxBaseImage.cpp:(.text+0x253d): undefined reference to `GetObjectA@12'
C:\DxLib_GCC\プロジェクトに追加すべきファイル_GCC(MinGW)用\5_3_0_i686/libDxLib.a(DxBaseImage.o):DxBaseImage.cpp:(.text+0x2581): undefined reference to `SelectObject@8'
C:\DxLib_GCC\プロジェクトに追加すべきファイル_GCC(MinGW)用\5_3_0_i686/libDxLib.a(DxBaseImage.o):DxBaseImage.cpp:(.text+0x25eb): undefined reference to `SetDIBitsToDevice@48'
C:\DxLib_GCC\プロジェクトに追加すべきファイル_GCC(MinGW)用\5_3_0_i686/libDxLib.a(DxBaseImage.o):DxBaseImage.cpp:(.text+0x25fe): undefined reference to `SelectObject@8'
C:\DxLib_GCC\プロジェクトに追加すべきファイル_GCC(MinGW)用\5_3_0_i686/libDxLib.a(DxBaseImage.o):DxBaseImage.cpp:(.text+0x2608): undefined reference to `DeleteDC@4'
C:\DxLib_GCC\プロジェクトに追加すべきファイル_GCC(MinGW)用\5_3_0_i686/libDxLib.a(DxBaseImage.o):DxBaseImage.cpp:(.text+0x2672): undefined reference to `DeleteObject@4'
C:\DxLib_GCC\プロジェクトに追加すべきファイル_GCC(MinGW)用\5_3_0_i686/libDxLib.a(DxBaseImage.o):DxBaseImage.cpp:(.text+0x6b9d): undefined reference to `CreateCompatibleDC@4'
C:\DxLib_GCC\プロジェクトに追加すべきファイル_GCC(MinGW)用\5_3_0_i686/libDxLib.a(DxBaseImage.o):DxBaseImage.cpp:(.text+0x6d56): undefined reference to `CreateDIBSection@24'
C:\DxLib_GCC\プロジェクトに追加すべきファイル_GCC(MinGW)用\5_3_0_i686/libDxLib.a(DxBaseImage.o):DxBaseImage.cpp:(.text+0x6d83): undefined reference to `GetObjectA@12'
Re: eclipseでDXライブラリを使う
Windowsの基本的なライブラリがリンクされていないようなので、コンパイルオプションに-mwindowsを加えると改善するかもしれません。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: eclipseでDXライブラリを使う
みけCATさん、オプションの-mwindowsをpropertiesのC++build(だったかな)のSetting,miscellaneousに書くとビルド出来ました!
これでプログラミングを再開できます!
ありがとうございました!
これでプログラミングを再開できます!
ありがとうございました!