コンパイルについて。

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
若名

コンパイルについて。

#1

投稿記事 by 若名 » 16年前

初めて質問させてもらいます。
コマンドプロンプトでコンパイルする場合
DixLibをincludeさせることはできないでしょうか?
ちなみvisual studioではできています。
よろしくお願いします。

box

Re:コンパイルについて。

#2

投稿記事 by box » 16年前

>DixLibをincludeさせることはできないでしょうか?

トライしたけれどできなかった、ということなのでしょうか?

若名

Re:コンパイルについて。

#3

投稿記事 by 若名 » 16年前

そうです。

test.c(1) : fatal error C1083: include ファイルを開けません。'DxLib.h': No such
file or directory

というエラーが出たので
MicrosoftVisualStudio\VC\include
のフォルダにDxLib.hを入れて再度clを試してみたのですが

c:\program files\microsoft visual studio 9.0\vc\include\DxDirectX.h(927) : error
C2061: 構文エラー : 識別子 'D_IDirectSound'
c:\program files\microsoft visual studio 9.0\vc\include\DxDirectX.h(927) : error
C2059: 構文エラー : ';'
c:\program files\microsoft visual studio 9.0\vc\include\DxDirectX.h(927) : error
C2059: 構文エラー : ':'

など大量にエラーが出てきて
プログラム内のエラーが 100 個を超えました。コンパイルは中断されます。
表示され、コンパイルできません。
もともと無理なのでしょうか?

わかりにくい説明ですみません。

toyo

Re:コンパイルについて。

#4

投稿記事 by toyo » 16年前

Visual C++ 2008を起動してメニューの「ツール」-「Visual studio 2008 Command Prompt」からコマンドプロンプトを開いたらできるはずです。
通常のコマンドプロンプトからではインクルードやライブラリ等の各種設定がされないので無理です。
Makefileを作ればnmakeでできるかもしれません。

Justy

Re:コンパイルについて。

#5

投稿記事 by Justy » 16年前


>test.c(1)

 拡張子を cppにするか、コンパイラオプションに /TPをつけてください。

若名

Re:コンパイルについて。

#6

投稿記事 by 若名 » 16年前

>>toyoさん
それでやっていましたができませんでした。

>>Justyさん
無事コンパイルできました。

回答してくださった皆さんありがとうございました。

若名

Re:コンパイルについて。

#7

投稿記事 by 若名 » 16年前

すみません。
今度は
LINK : fatal error LNK1104: ファイル 'DxLib.lib' を開くことができません。
というエラーがでてきてしまいます。
何か解決法ご存じの方がいらっしゃいましたら
よろしくお願いします。

若名

Re:コンパイルについて。

#8

投稿記事 by 若名 » 16年前

何度もすみません。
解決しました。

アキシアル

龍神録26章にて

#9

投稿記事 by アキシアル » 16年前

こんにちは。そして初めまして、アキシアルと申します。

龍神録をPSPに移植しようとして、プログラミングの館1章から確認しつつ作業していたのですが、
26章にて、「ボスをボムを使用して倒す、又はボスをプレイヤー死亡処理中に倒すとフリーズしてしまう」
というバグが出るようになってしまいました。

printfDxを利用して確認してみると、boss.x、boss.yの値がおかしかったので、boss_shot.cpp内の
calc_phy()にある
boss.x=boss.phy.prex-((boss.phy.v0x*t)-0.5*boss.phy.ax*t*t);//現在いるべきx座標計算
boss.y=boss.phy.prey-((boss.phy.v0y*t)-0.5*boss.phy.ay*t*t);//現在いるべきy座標計算
の部分をコメントアウトしてテストしてみると、ボスが移動しなくなる代わりにフリーズを起こすことは
なくなりました。

恐らくboss.xとboss.yがオーバーフローしているのではないかと思うのですが、

・ボスの移動とフリーズ回避を両立させる手段
・なぜボム使用時と死亡処理中にのみフリーズするのか

がわかりません。

キーコンフィグまわり以外にプログラムを変更していないので、現状ではほぼサンプルプログラムと
同じだと思います。

使用環境はWindows Vista Visual C++ 2008EE PSPSDKとDxライブラリPortableを使用しています。

どうかよろしくお願い致します。

最後に長文失礼致しました。

Justy

Re:龍神録26章にて

#10

投稿記事 by Justy » 16年前


>部分をコメントアウトしてテストしてみると、ボスが移動しなくなる代わりに
>フリーズを起こすことは なくなりました

 この計算式で使われている変数のどれかが、未初期化 or 破壊されたなどの理由で
おかしな値になった結果、boss.x、boss.yの値もおかしくなっているのでしょう。

 なので、この式で使われているすべての変数をデバッガとかも使って見直して見てください。

 あと、DLできるサンプルと diffして自分が書いていないところ、間違って書いているところを
探してみるのもいいかもしれません。

アキシアル

Re:龍神録26章にて

#11

投稿記事 by アキシアル » 16年前

回答ありがとうございました。

diffを取ってみたところ、プログラムの中に FIELD_MAX_X,FIELD_MAX_Yという古い定数
(それぞれFMX,FMYに置き換えなければいけない定数です・・・)を見つけてしまいました・・・。
これが変数を破壊していたみたいで、修正したところフリーズも直りました。

お手数をおかけして申し訳ありませんでした。

そして本当にありがとうございました。

閉鎖

“C言語何でも質問掲示板” へ戻る