ページ 1 / 1
ビルドできない
Posted: 2018年12月18日(火) 19:57
by 月水
新C言語ゲームプログラミングで1.1章のダウンロードをしたのですがデバッグなしかどうかにもかかわらずビルドエラーが発生し、最後に成功したビルドを実行してもC¥Users¥ユーザー名¥Desktop¥GameProg¥×64¥Debug¥GameProg.exeが開始できない、存在しないファイルなどと表示されます
C言語を始めたばかりでよくわからず、申し訳ありません。
Re: ビルドできない
Posted: 2018年12月21日(金) 23:08
by あたっしゅ
ビルドエラーが出っぱなしで、一度もビルドに成功していないために、
「最後に成功したビルド」がないから、実行できないのでは ?
>デバッグなしかどうかにもかかわらずビルドエラーが発生し、
ビルドエラーが出るのに、デバッグなしかどうかは、関係ありません。
include ファイルや Lib ファイルのパスの設定は、ちゃんとしてありますか ?
ちゃんとダウンロードしたままのファイルですか ?
うっかり、余分な文字を入力してしまったりしていませんか ?
また、Visual Studio(ですよね)のバーションはいくつですか ?
Re: ビルドできない
Posted: 2018年12月29日(土) 15:51
by dic
https://dixq.net/g/h_01.html は設定されましたか?
現在の動かないソースコードをここの掲示板に張り付けてください。
Re: ビルドできない
Posted: 2019年1月05日(土) 11:42
by Math
http://www2.koyoen.birdview.co.jp/~abcx ... -p-08-.PNG
私の環境では問題なく実行できたので 過去に何度か答えてますが 可能性が高いのは展開(解凍)に失敗していることです。
時間の余裕を持ってダウンロードから展開(解凍)をやり直すとなおるでしょう。
Re: ビルドできない
Posted: 2019年1月07日(月) 20:49
by Math
これを コマンドプロンプトで動かすと軽快にうごきますね。
まず 汎用性があるように C ドライブ直下にDXライブラリーをおきます。
全ファイル
http://www2.koyoen.birdview.co.jp/~abcx ... 7-aaa-.PNG
1.7章を お借り して
https://dixq.net/g/01_07.html
main.cpp
コード:
#include "DxLib.h"
int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int){
ChangeWindowMode(TRUE), DxLib_Init(), SetDrawScreen( DX_SCREEN_BACK ); //ウィンドウモード変更と初期化と裏画面設定
int x = 0;
int Handle; // 画像格納用ハンドル
Handle = LoadGraph( "画像/キャラクタ01.png" ); // 画像のロード
// while(裏画面を表画面に反映, メッセージ処理, 画面クリア)
while( ScreenFlip()==0 && ProcessMessage()==0 && ClearDrawScreen()==0 ){
DrawGraph( x, 100, Handle, TRUE ); //画像の描画
x = x + 2; // xを2増やす
}
DxLib_End(); // DXライブラリ終了処理
return 0;
}
メークファイル g.mak
コード:
TARGETNAME=main
C_FLAGS=/c /TP /EHsc /D "_MBCS" /MT /Ic:\dxlib /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /W3
LINK_FLAGS=/SUBSYSTEM:WINDOWS /LIBPATH:c:\dxlib "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib"
ALL:
cl $(C_FLAGS) $(TARGETNAME).cpp
link /out:$(TARGETNAME).exe $(LINK_FLAGS) $(TARGETNAME).obj
$(TARGETNAME).exe
バッチ b.bat
コンパイル
http://www2.koyoen.birdview.co.jp/~abcx ... 7-ccc-.PNG
実行
http://www2.koyoen.birdview.co.jp/~abcx ... 7-bbb-.PNG
Re: ビルドできない
Posted: 2019年1月07日(月) 21:02
by Math
上記のメークファイルは長い期間使ってますが VS2008,VS2013,VS2015,vs2017とVS2008以降全て
のVisual Studio で同じまま変更なく使えます!
VS2008以前のプロジェクトファイルはメークファイル形式でしたね。
Re: ビルドできない
Posted: 2019年1月07日(月) 21:27
by Math
これは メークファイル を書き換えて コンソール・プログラムにする事ができます。
メークファイル
コード:
TARGETNAME=main
C_FLAGS=/c /TP /EHsc /D "_MBCS" /MT /Ic:\dxlib /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /W3
LINK_FLAGS=/SUBSYSTEM:CONSOLE /LIBPATH:c:\dxlib "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib"
ALL:
cl $(C_FLAGS) $(TARGETNAME).cpp
link /out:$(TARGETNAME).exe $(LINK_FLAGS) $(TARGETNAME).obj
$(TARGETNAME).exe
ソース
コード:
#include "DxLib.h"
int main(){
ChangeWindowMode(TRUE), DxLib_Init(), SetDrawScreen( DX_SCREEN_BACK ); //ウィンドウモード変更と初期化と裏画面設定
int x = 0;
int Handle; // 画像格納用ハンドル
Handle = LoadGraph( "画像/キャラクタ01.png" ); // 画像のロード
// while(裏画面を表画面に反映, メッセージ処理, 画面クリア)
while( ScreenFlip()==0 && ProcessMessage()==0 && ClearDrawScreen()==0 ){
DrawGraph( x, 100, Handle, TRUE ); //画像の描画
x = x + 2; // xを2増やす
}
DxLib_End(); // DXライブラリ終了処理
return 0;
}
http://www2.koyoen.birdview.co.jp/~abcx ... 7-yyy-.PNG
http://www2.koyoen.birdview.co.jp/~abcx ... 7-xxx-.PNG
Re: ビルドできない
Posted: 2019年1月07日(月) 22:03
by Math
*** printf デバッグ *** ができますね。
コード:
#include "DxLib.h"
int main(){
ChangeWindowMode(TRUE), DxLib_Init(), SetDrawScreen( DX_SCREEN_BACK ); //ウィンドウモード変更と初期化と裏画面設定
printf("\n\n起動に成功しました\n\n");
int x = 0;
int Handle; // 画像格納用ハンドル
Handle = LoadGraph( "画像/キャラクタ01.png" ); // 画像のロード
printf("*** printf デバッグ *** \n\n");
printf("画像格納用ハンドルは%d \n\n",Handle );
// while(裏画面を表画面に反映, メッセージ処理, 画面クリア)
while( ScreenFlip()==0 && ProcessMessage()==0 && ClearDrawScreen()==0 ){
DrawGraph( x, 100, Handle, TRUE ); //画像の描画
x = x + 2; // xを2増やす
}
DxLib_End(); // DXライブラリ終了処理
return 0;
}
http://www2.koyoen.birdview.co.jp/~abcx ... 7-zzz-.PNG
Re: ビルドできない
Posted: 2019年1月18日(金) 23:32
by Math
Re: ビルドできない
Posted: 2019年1月23日(水) 08:25
by Math
Re: ビルドできない
Posted: 2019年1月23日(水) 08:41
by Math
過去ログで私が答えたなかでこいうのもありますね
viewtopic.php?f=3&t=20325
同じ原因、解凍不良だよね。解凍は余裕を持って時間をかけてやる事だよね。
初心者のかたは あわてず 落ち着いてやり直すこと。
(全般にそういう事がいえます)
Re: ビルドできない
Posted: 2019年2月07日(木) 22:55
by Math
DXライブラリーが Ver 3.20a にアップデートされていたので試してみました。
DXライブラリー
https://dxlib.xsrv.jp/dxdload.html
コード:
**********************************************************************
** Visual Studio 2017 Developer Command Prompt v15.9.6
** Copyright (c) 2017 Microsoft Corporation
**********************************************************************
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community>cd C:\19\download19\dxlib\DxLib_VC
C:\19\download19\dxlib\DxLib_VC>dir
ドライブ C のボリューム ラベルがありません。
ボリューム シリアル番号は 7813-6100 です
C:\19\download19\dxlib\DxLib_VC のディレクトリ
2019/02/07 13:50 <DIR> .
2019/02/07 13:50 <DIR> ..
2019/02/07 13:49 7,338 DxLib.txt
2019/02/07 13:49 <DIR> help
2019/02/07 13:49 <DIR> Tool
2019/02/07 13:50 <DIR> サンプルプログラム実行用フォルダ
2019/02/07 13:50 <DIR> プロジェクトに追加すべきファイル_VC用
2019/02/07 13:49 122 作者ホームページ.url
2 個のファイル 7,460 バイト
6 個のディレクトリ 180,431,970,304 バイトの空き領域
C:\19\download19\dxlib\DxLib_VC>
https://dixq.net/g/
からダウンロードし直したGameProg::
GameProg
コード:
C:\19\download19\dxlib\DxLib_VC>cd C:\19\Y\02\07\GameProg
C:\19\Y\02\07\GameProg>dir
ドライブ C のボリューム ラベルがありません。
ボリューム シリアル番号は 7813-6100 です
C:\19\Y\02\07\GameProg のディレクトリ
2019/02/07 15:22 <DIR> .
2019/02/07 15:22 <DIR> ..
2019/02/07 14:25 <DIR> DxLib
2019/02/07 14:21 0 dxlib_v3.20a---入れ替え---.txt
2019/02/07 14:11 1,429 GameProg.sln
2019/02/07 14:11 6,902 GameProg.vcxproj
2019/02/07 14:11 1,000 GameProg.vcxproj.filters
2019/02/07 15:09 165 GameProg.vcxproj.user
2019/02/07 15:31 10,748 Log.txt
2019/02/07 15:21 1,241 test.cpp
2019/02/07 15:09 <DIR> x64
2019/02/07 14:20 <DIR> サウンド
2019/02/07 14:20 <DIR> 画像
7 個のファイル 21,485 バイト
6 個のディレクトリ 180,431,585,280 バイトの空き領域
C:\19\Y\02\07\GameProg>
GameProg の DxLib ディレクトリ のバージョンは Ver 3.18e だったので DxLib_VC の プロジェクトに追加すべきファイル_VC用 ディレクトリ の内容と入れ替えてテスト
コード:
#include "DxLib.h"
#include "Math.h"
// プログラムは WinMain から始まります
int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
AllocConsole();
FILE* out = 0; freopen_s(&out, "CON", "w", stdout);
FILE* in = 0; freopen_s(&in, "CON", "r", stdin);
printf("Hello World!\n");
printf("%16.15f\n", 3.141592653589793);
int x, y;
double PI = 3.141592653589793; // 産医師異国に向こう産後厄なく産・
ChangeWindowMode(TRUE); // ウィンドウモードに設定
if (DxLib_Init() == -1) // DXライブラリ初期化処理
{
return -1; // エラーが起きたら直ちに終了
}
for (x = 0; x < 640; x++) DrawPixel(x, 240, GetColor(0, 0, 255)); // 点を打つ
for (y = 0; y < 480; y++) DrawPixel(320, y, GetColor(0, 255, 0)); // 点を打つ
printf("正弦波・・・\n");
for (x = 0; x < 640; x++) DrawPixel(x, (int)220 * sin((float)x*(2.0*PI / 320.0)) + 240, GetColor(255, 255, 128));
printf("余弦波・・・\n");
for (int x = 0; x < 640; x++) DrawPixel(x, (int)220 * cos((float)x*(2.0*PI / 320.0)) + 240, GetColor(255, 128, 255));
WaitKey(); // キー入力待ち
DxLib_End(); // DXライブラリ使用の終了処理
//コンソール解放
fclose(out); fclose(in); FreeConsole();
return 0; // ソフトの終了
}
正常に実行できました。
http://www2.koyoen.birdview.co.jp/~abcx ... ame-a-.PNG