トップページ > 過去ログ > 記事閲覧
ビルドできません
名前:池田 日時: 2007/11/15 02:34

始めまして。自作ゲームを作ろうと思い、プログラムに挑戦しようと思っています。 DXライブラリのダウンロードして解説の通りにセッティングしていざビルドをしたのですが、 エラーが出てしまいます。過去スレを見ても同じような事がないので、スレを立てました。 プログラム'\Documents and Settings\USER\デスクトップ\test\Debug\test.exe'を開始できません というエラーメッセージが出ていて、下のほうに 1>C:\Documents and Settings\USER\デスクトップ\test\Debug\test.exe : fatal error LNK1120: 外部参照 9 が未解決です。 という事が書いてあります。 何がいけないのでしょうか?教えてください。 お願いします。

Page: 1 |

Re: ビルドできません ( No.1 )
名前:Will 日時:2007/11/15 15:07

ソースを見ないとなんともいえませんが、 #include "DxLib.h" が抜けていませんか?
Re: ビルドできません ( No.2 )
名前:池田 日時:2007/11/15 19:41

ソースはここのサンプルプログラムをコピペしてあるので、抜けているという事はないと思います。 #include "DxLib.h" // プログラムは WinMain から始まります int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { if( DxLib_Init() == -1 ) // DXライブラリ初期化処理 { return -1 ; // エラーが起きたら直ちに終了 } DrawPixel( 320 , 240 , 0xffff ) ; // 点を打つ WaitKey() ; // キー入力待ち DxLib_End() ; // DXライブラリ使用の終了処理 return 0 ; // ソフトの終了 } ヘッダーファイルにDxLib.hを追加もしたのですが、ビルドしません。。
Re: ビルドできません ( No.3 )
名前:池田 日時:2007/11/15 19:52

あと、PlatformSDKやDirectXSDKというものは一切インストールしてないのですが、そのせいでしょうか? ここのサイトにあるDXライブラリだけしか使わないと思っていたので一切触れていません。 ファイルがたくさんになってごちゃごちゃになると思ったもので・・。 あと上記2つのファイルもライブラリらしいのですが、ここで配布されてるDXライブラリとの違いがわかりません。
Re: ビルドできません ( No.4 )
名前: 日時:2007/11/16 10:50

DXライブラリのバージョンとかの情報が あるといいかも。 >上記2つのファイルもライブラリ 上記2つとはPlatformSDKやDirectXSDKのことでしょうか? PlatformSDK これあは少し古くて最新版ではWindowsSDK なと言われます。昔のVC6.0などではwindows.hを includeすれば、WINAPIが普通に使えますが、 それ以降の.Net2003以降の環境ではこれが無いと WINAPIを使うことが出来ません。 DXライブラリはその辺を意識させない為に、 全てライブラリの中でその処理を行っている ので不要です。 #自分が.NET以降の環境でWINAPIを使う場合は必要 DirectXSDK これはDirectX関係のライブラリ郡です。 DXライブラリはDirectXSDKの機能をもっと判り易く 扱いやすくDirectXに蓋をしたライブラリで、 DirectXのライブラリ郡の主要な機能をある程度 持っています。DirectXSDKは内部で DXライブラリが使用していますが、コンパイル時に DLLにリンクされた時点でこれらは不要となります DirectXはもっと低レベル(デバイスとか細かな操作の出来るというような意味)でプログラミング できますが、DXライブラリを使用するより、 遥かに複雑になってしまいます。 #ただし、実行するにはDrectXのランタイムDLLが #必要です
Re: ビルドできません ( No.5 )
名前:管理人 日時:2007/11/18 10:47

池田さん始めまして、DXライブラリの管理人です。 1>C:\Documents and Settings\USER\デスクトップ\test\Debug\test.exe : fatal error LNK1120: 外部参照 9 が未解決です。 の上に書かれているだろうエラー出力も全てこちらに貼り付けて頂けないでしょうか? なんのオブジェクトの実体が無いのか分かればある程度原因が分かると思いますので。
Re: ビルドできません ( No.6 )
名前:優柔不断 日時:2007/11/23 14:52

Visual C++2005ExpressEditionの場合、WindowsSDKもインストールする必要があります。
自分もビルドできません ( No.7 )
名前:あさ 日時:2007/12/01 03:49

自分もDrowPixelをコピペしてビルドできないという問題だったので、ここに書かせていただきました。 自分の場合は、Platform SDKもインストールしたのですが、ビルドエラーが発生しましたと出てしまいます。下にはこう書いてありました。 'DxLib.h': No such file or directory VisualC++ Express Edition2005を使っています。 ほぼ、DXライブラリの使い方のページに書いてある通りにしたのですが、 「4.プロジェクトへDXライブラリファイルを追加」 のところだけ少し違ったので、そこが問題なのかもしれないです。 ここ↓を読んだのですが、  @ 生成する時に指定したフォルダにDXライブラリのファイル    『DxLib.lib DxUseCLib.lib DxLib.h DxDirectX.h』      及び以下のファイル    『zlib.lib libpng.lib libjpeg.lib ogg_static.lib    vorbis_static.lib vorbisfile_static.lib 』      をコピーします。ファイルはDXライブラリを解凍したフォルダの中の     『プロジェクトに追加すべきファイル_VC用』という長いフォルダ名のフォルダに     すべて入っています。    A 次に VisualC++ 2005 Express Edition のメニューから[プロジェクト]→      [既存項目の追加]を選び、「DxLib.h」を追加します。 『DxLib.lib DxUseCLib.lib DxLib.h DxDirectX.h』       と 『zlib.lib libpng.lib libjpeg.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib 』 というファイルをコピーしようとしたのですが、DxLib.lib及びZLIB.LIBというファイルの ところで「このファイルは開けません」と出て、それ以降に進めずコピーの仕方が分かりませんでした。 なので「プロジェクトに追加すべきファイル」自体を 生成したファイルに貼り付けて、 [既存項目の追加]から「DxLib.h」を追加しました。 どうしたらいいのでしょうか? 長くなりすいません。よろしくお願いします。
Re: ビルドできません ( No.8 )
名前:管理人 日時:2007/12/03 01:59

 DxLib.lib や ZLIB.LIB を VisualC++ Express Edition 2005 の ソフト上で開こうとしてしまってはいないでしょうか? 『DxLib.lib DxUseCLib.lib DxLib.h DxDirectX.h』 及び 『zlib.lib libpng.lib libjpeg.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib 』   をコピーする先は VisualC++ Express Edition 2005 のウインドウ内に 表示されている「フォルダの様なもの」ではなく、エクスプローラ上から 見ることの出来るフォルダの方となります。  プロジェクトを作成した時にプロジェクトのフォルダを作成するパスを 指定すると思いますので、そのパス上に新規に作成されたプロジェクト フォルダに上記ファイルをコピーしてみて下さい。
Re: ビルドできません ( No.9 )
名前:あさ 日時:2007/12/04 19:04

指定したパスのフォルダ上に上記のファイルをコピーしたいのですが、 DxLib.lib及びZLIB.LIBを開こうとすると「このファイルは開けません」と出てしまいます。 どうやってファイルをコピーしたらいいのでしょうか? なんだか何度もすいません。
Re: ビルドできません ( No.10 )
名前:キーチック 日時:2007/12/04 01:24

Windowsで普通にファイルを選択し,右クリックしてコピー → 目的のフォルダで右クリックして貼りつけ で,ダメですか
Re: ビルドできません ( No.11 )
名前:あさ 日時:2007/12/04 22:38

WindowsでDxLib.libとZLIB.LIBを指定ファイルに 貼り付けてやってみたのですが、 ビルドすると 'DxLib.h': No such file or directory と出てしまいます。 本当になんででしょうか・・
Re: ビルドできません ( No.12 )
名前:お父さん 日時:2007/12/05 16:16

あささん、はじめまして 管理人様の回答にあります「新規に作成されたプロジェクトフォルダ」には、DxLib.hはあるでしょうか? あるいは、 A 次に VisualC++ 2005 Express Edition のメニューから[プロジェクト]→[既存項目の追加]を選び、 「DxLib.h」を追加します。 をお忘れではないでしょうか?
Re: ビルドできません ( No.13 )
名前:あさ 日時:2007/12/05 18:17

>>お父さん [プロジェクト]→[既存項目の追加]はしていたのですが、 それに加えて「新規に作成されたプロジェクトフォルダ」に「プロジェクトに追加すべきファイル_VC用」の中のファイルを全部 一つ一つ貼り付けたところ、ビルドができました。 これでビルドができるようになりうれしいです。 回答してくださった方々本当にありがとうございました。
Re: ビルドできません ( No.14 )
名前: 日時:2007/12/05 18:59

少し混乱するかもしれませんが。。。 >fatal error LNK1120: 外部参照 9 が未解決です>'DxLib.h': No such file or directory そもそも、このようなエラーが出るのは、 コンパイル時、又はリンク時にVCの環境構築や、 LIBファイル、ヘッダファイルの位置が プロジェクトファイルをルートとする時に パスが通っていないからです。 VCがヘッダファイルとLIBファイルを 探す順位としては、 1.プロジェクトファイルのあるフォルダ  ↓ 2.VCのユーザ設定で指定されているフォルダ  ↓ 3.プロジェクト設定で指定されているフォルダ  ↓ 4.環境変数に登録されているシステムフォルダ等 という順番で探します。 DxLib.libやZLIB.LIBのようなLIBファイル や DxLib.hのようなヘッダファイルを上記のうちの いずれかのフォルダにコピーすればよいのです。 ここで紹介されているのは1番分かり易く混乱しない No1のプロジェクトファイルのあるフォルダです。 そして、LIBファイルは #pragma comment(lib, "ZLIB.lib")などでソースに 書くか、VC2003以降なら、プロジェクトの プロパティからリンカ→追加の依存ファイルに LIBファイルの名前を追加します。 ヘッダファイルはパスが通っていれば、 プロジェクトに追加しなくても#include"xxx.h"の ような感じで使えたはず。。。 #VC6ではOKだったというか、 #外部参照に勝手に追加される。 また、パスが通っていなくても、いんくるーどする 時や#pragmaを使う時は相対パスや絶対パスを使う ことも出来ます。 #include "./includeするファイル/Dxlib.h" とか。

Page: 1 |