ページ 11

VC++のライブラリの相対パス指定について

Posted: 2011年8月21日(日) 12:10
by SINYA
MicrosoftのVisual C++でDXライブラリをやろうと思っているんですが、DXライブラリを相対パスで指定できません。
こちらのサンプルプロジェクトでは、DXライブラリを同じフォルダにおいて、相対パスで指定しているんですが、適当にプロジェクトを作って、プロジェクトのプロパティのC/C++の追加のインクルードディレクトリと、リンカーの追加のライブラリディレクトリで指定すると、絶対パスになってしまいます。
[./DxLib/]と入れてインクルードしてみると、こんどは「ソースファイルが開けません」とエラーが出てしまいます。
相対パスじゃないといけないという訳ではありませんが、友達などにプロジェクトを送って一緒に編集するとしたら、絶対パスの場合、同じ場所にDxLibを置かないといけないので、相対パスのほうがいいと思ったので相対パスにしたんですができません。
原因や、解決策などが分かる方は教えてください。

ちなみにVC++は2010を使っています。

Re: VC++のライブラリの相対パス指定について

Posted: 2011年8月21日(日) 12:55
by softya(ソフト屋)
>適当にプロジェクトを作って、プロジェクトのプロパティのC/C++の追加のインクルードディレクトリと、リンカーの追加のライブラリディレクトリで指定すると、絶対パスになってしまいます。

これは、どういうふうに指定して、どういう事が起こるのでしょうか?
手で打ち込まないと相対パス指定にはならないので、そういう事でしょうか?

>[./DxLib/]と入れてインクルードしてみると、こんどは「ソースファイルが開けません」とエラーが出てしまいます。

ヘッダファイルが開けませんやライブラリファイルがありませんとなるのが普通なので「ソースファイルが開けません」は別件だと思われます。
実際に出ている出力ウィンドウに出ているメッセージをコピペ出来ませんか(個人情報は必要なら消してください)?

見当たらない場合は、下記の方法で有効にしてください。
「Visual Studio 2010 「出力ウィンドウない!?ぎゃー」となったのでメモを残します - aki note」
http://d.hatena.ne.jp/akipponn3/20101218/1292670116

Re: VC++のライブラリの相対パス指定について

Posted: 2011年8月21日(日) 15:58
by SINYA
出力には下のようにでます。
error C1083: include ファイルを開けません。'DxLib.h': No such file or directory
#include "DxLib"
と入力すると、#includeに赤い波線が出て、マウスをのせると「Error:ソースファイルが開けません"DxLib"とでます。

>これは、どういうふうに指定して、どういう事が起こるのでしょうか?
>手で打ち込まないと相対パス指定にはならないので、そういう事でしょうか?
はいそうです。
自分で入力しないと相対パスにならないので、./DxLib/といれてみたのですが、ダメでした。

Re: VC++のライブラリの相対パス指定について

Posted: 2011年8月21日(日) 17:29
by softya(ソフト屋)
あれ?とそう言えばディレクトリとして書くべきなのは

コード:

.\DxLib_VC\プロジェクトに追加すべきファイル_VC用
なのですが、これの間違いではありませんか?

Re: VC++のライブラリの相対パス指定について

Posted: 2011年8月23日(火) 10:51
by SINYA
遅くなってすみません。
softya(ソフト屋) さんが書きました:あれ?とそう言えばディレクトリとして書くべきなのは

コード:

.\DxLib_VC\プロジェクトに追加すべきファイル_VC用
なのですが、これの間違いではありませんか?
プロジェクトに追加すべきファイルのフォルダの中身をDxLibというフォルダにコピペしました。なので
./DxLib/でいいはずなんですが・・・
もしかして僕のVC壊れているのかな?何故か突然InteliSenseも表示されなくなったし・・・

Re: VC++のライブラリの相対パス指定について

Posted: 2011年8月23日(火) 11:01
by softya(ソフト屋)
再度確認します。
・DxLibフォルダはxxx.vcproj(プロジェクトファイル)があるフォルダにあるんですね?
・DxLibフォルダ直下に次のファイルはありますか?

コード:

DxLib.txt
DxLib_d.lib
DxLibW.lib
DxLibW_d.lib
DxUseCLib.lib
DxUseCLib_d.lib
DxUseCLibW.lib
DxUseCLibW_d.lib
libjpeg.lib
libjpeg_d.lib
libpng.lib
libpng_d.lib
libtheora_static.lib
libtheora_static_d.lib
ogg_static.lib
ogg_static_d.lib
vorbis_static.lib
vorbis_static_d.lib
vorbisfile_static.lib
vorbisfile_static_d.lib
ZLIB.LIB
zlib_d.lib
dir.txt
DxDirectX.h
DxDrawFunc.lib
DxLib.h
DxLib.lib

すみません。置くフォルダを間違えていただけでした。

Posted: 2011年8月24日(水) 07:53
by SINYA
すみません。置く場所を勘違いしていました。
VCでライブラリ使うのは初めてだったので分かりませんでした。
てっきりライブラリのディレクトリはxxx.slnの直下に置くものだと思っていました。