• ベストアンサー

Visual C++ 2005 Express Editon でのビルドエラー

OpenGLのプログラム環境を自分のPCで整えたいと思い、OpenGL,Windowsなどで検索したホームページなどを参考にして色々やってみたのですが、うまくいきませんでした。OSはXPです。 まずコマンドラインコンパイラとVisual C++ 2005 Express Editionの両方で試してみたのですが、コンパイルまたはビルドの際に fatal error C1083: include ファイルを開けません。'GL/gl.h': No such file or directory というエラーが出てしまいます。 glut.h glut32.dll glut32.libはソースと同じフォルダにあります。 学校では.NET 2003を使用しているのですが、問題なく動いています. glut.hでGL/gl.hを呼び出しているようなのですが・・・ 根本的に設定が違うのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • kalze
  • ベストアンサー率47% (522/1092)
回答No.2

学校が.Net 2003で、自宅は2005Expressですよね? とりあえず確認ですが、自宅の方にはPlatformSDKは入れましたか? また、入れた後に各種設定は行いましたか? Expressはそれだけを入れた状態だと、基本的に.Netアプリすか作れません。 Windowsアプリを作るためのヘッダやライブラリなどがないためです。 別途PlatformSDKをインストールし、設定する必要があります。 もしまだ行っていないようであれば参考URLをみてやってみてください。 PlatformSDKをインストールすれば、GL/gl.hなどもインストールされますので、それを参照するようにVCを設定してあげてください。

参考URL:
http://www.microsoft.com/japan/msdn/vstudio/express/visualc/usingpsdk/

その他の回答 (1)

  • chie65536
  • ベストアンサー率41% (2512/6032)
回答No.1

#includeプリプロセッサ命令をちゃんと理解していますか? エラーメッセージの意味と対処方法をちゃんと理解していますか? 「fatal error C1083: include ファイルを開けません。'GL/gl.h': No such file or directory」 の意味は 「GLフォルダのgl.hってファイルが無いぞ」 って意味で、対処法は 「GLフォルダにgl.hと言うインクルードファイルを置いておく」 です。 >glut.h glut32.dll glut32.libはソースと同じフォルダにあります。 >glut.hでGL/gl.hを呼び出しているようなのですが 「GLフォルダ」は「ソースと同じフォルダ」ではないので、コンパイル出来なくて当然です。 それ以前に >OpenGLのプログラム環境を自分のPCで整えたい が出来ていません。 glut.h glut32.dll glut32.libは「OpenGLの開発環境のごく一部」であって、全部ではありません。 しかも、glut.hとglut32.libの置き場所を間違っています。 コンパイルしているソースには #include <glut.h> と言う行がある筈です。 #includeプリプロセッサ命令に<>で括って指定すると「デフォルトまたはコンパイラに指定したインクルードパス(フォルダ)にあるファイルをインクルードする」と言う意味になり、このフォルダは『ソースのあるフォルダではありません』←ここ重要 glut.hは、デフォルトのインクルードパスに、つまり、stdio.hやstdlib.hがあるのと同じフォルダになければなりません。 glut.libは、同じように、デフォルトのライブラリパスに、つまり、win32spl.libなど、他のlibファイルがあるのと同じフォルダになければなりません。 因みに、ソースと同一のフォルダにあるインクルードファイルを指定する時は #include "my_file.h" と"で括ります。 また、glut.hの中に #include <GL/gl.h> と言う行があるので、これは「デフォルトのインクルードパスの下にあるGLと言うフォルダの中にあるgl.hをインクルードする」と言う事なので「デフォルトのインクルードパスの下にGLと言うフォルダを作り、その中にOpenGL用のインクルードファイルを置いておく」必要があります。 質問者さんは「デフォルトのインクルードパスの下にGLと言うフォルダを作り、その中にOpenGL用のインクルードファイルを置いておく」と言う作業をしていないので『OpenGLのプログラム環境が整っていない』事になります。 「OpenGLのプログラム環境が整っていない」状態で何度コンパイルした所で、コンパイルが成功する筈はありません。 言ってみれば、stdio.hやstdlib.hが存在しない環境で無理矢理コンパイルを強行しようとしているような物で、この状態ではコンパイルのやり方をどう変えたって絶対にコンパイルは成功しません。

関連するQ&A

  • cygwinでopenGL

    cygwinでopenGLが出来ません>< まず、私がやった設定を書いてみます。 学校で使用している教科書に指定されているように、 実行用DLLファイル[opengl32.dll][glu32.dll][glut32.dll]の3つを\WINDOWS\system32に入れました。(glut32.dll以外は元々ありました) ヘッダファイル[gl.h][glu.h][glut.h]の3つを\cygwin\usr\include\w32api\GLに入れました。(glut.h以外は元々あり、[glext.h]というのもありました) 開発ライブラリとして[opengl32.lib][glu32.lib][glut32.lib]を入れるように書いてあり、入れる場所はおそらく\cygwin\lib\w32apiだと思うんですけど、[libopengl32.a][libglu32.a][libglut32.a]なるものが既に存在しました。これは同じ物とみなしてよろしいのでしょうか? 次に、[gcc ●●.c -DWIN32 -lglut32 -lglu32 -lopengl32]とコンパイルしてみた所、エラーが大量に出ました。コンパイル方法が間違っているのでしょうか? 以前にJAVAを学習するときに、環境変数を変えたんですけれど、それが影響しているのでしょうか? 質問多くて、しかもややこしくてすみません。

  • visual studio .NET→ Visual C++ 2005 Express Edition(pshpack2.h)

    visual studio .NETで問題なくコンパイルできたプログラムを 他のマシンのVisual C++ 2005 Express Editionで コンパイルするとビルドエラー fatal error C1083: include ファイルを開けません。'pshpack2.h': No such file or directory のメッセージです。 解決法を教えてください。

  • visual C++ ビルド

    visual C++ ビルド 次のソースをビルドしたら、こんなエラーがでてきました。 どこがだめなんでしょうか。 //画面への出力を行うプログラム #include <instream> using namespace std; int main() { cout << "初めてのC++プログラム。\n"; cout << "画面に出力しています。\n"; } ビルド結果 1>------ ビルド開始: プロジェクト: hello, 構成: Debug Win32 ------ 1>コンパイルしています... 1>list1-1.cpp 1>c:\documents and settings\藤本剛史\my documents\visual studio 2008\projects\hello\list1-1.cpp(3) : fatal error C1083: include ファイルを開けません。'instream': No such file or directory 1>ビルドログは "file://c:\Documents and Settings\藤本剛史\My Documents\Visual Studio 2008\Projects\hello\Debug\BuildLog.htm" に保存されました。 1>hello - エラー 1、警告 0 ========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========

  • Windows8+OpenGLで未処理の例外エラー

    Windows8 Pro のマシンで OpenGL を使うため、glut をインストールし、 簡単なサンプルをコンパイルして実行したところ、 「ユーザーコールバック中に未処理の例外エラーが発生しました」 というエラーを吐いて止まってしまいました。 統合環境は Visual C++2010 Express を利用しています。 サンプルプログラムは、以下の通りです。 #include <GL/glut.h> void display(void) { glClearColor(1.0, 1.0, 1.0, 1.0); glClear(GL_COLOR_BUFFER_BIT); glFlush(); } int main(int argc, char *argv[]) { glutInit(&argc, argv); glutInitDisplayMode(GLUT_RGBA); glutInitWindowSize(640,480); glutCreateWindow(”window”); glutDisplayFunc(display); glutMainLoop(); return 0; } glut は様々なサイトで紹介されている方法通りに、 公式ページにて必要なファイル (32bit版) をダウンロードし、 glut.h を C:\Program Files (x86)\Microsoft Visual Stdio 10.0\VC\include\GL\ に、 glut32.lib を C:\Progma Files (x86)\Microsoft Visual Stdio 10.0\VC\lib\ に glut32.dll を C:\Windows\SysWOW64\ にコピーしました。 glut の代わりに freeglut も試してみたのですが、同様のエラーで止まってしまいました。 使用しているマシンは Surface Pro で ディスプレイアダプターは、 Intel(R) HD Graphics 4000 です。 ネットでいろいろ調べて Windows8 にインストールしている事例もちらほら見かけたので、 Windows8 でも動くとは思うんですが、どうにもうまくいきません。 dll が Windows8 に対応していないのか、Surface だから駄目なのか、検討がつきません。 原因をご存知の方がいましたら、どうか詳しく教えていただけないでしょうか? よろしくお願いします。

  • ビルドエラー(C1083)について

    c++初心者です。 先日学校の課題用に配布された画像処理プログラム(C++)を実行しようとしたのですが、 ビルドエラーが出てしまい、色々調べてみたのですが解決法がわかりません。 エラーの内容は、 fatal error C1083: include ファイルを開けません。'cv.h': No such file or directory というものです。 使用しているのは Microsoft visual c++ 2008 express edition OpenCV です。 また、インクルードファイルには ・C:\Program Files\OpenCV\cv\include C:\Program Files\OpenCV\cvaux\include C:\Program Files\OpenCV\cxcore\include C:\Program Files\OpenCV\ml\include C:\Program Files\OpenCV\otherlibs\highgui ライブラリファイルには ・C:\Program Files\OpenCV\lib を追加し、pathにも ;C:\Program Files\OpenCV\bin\ が追加してあります。 プログラム上の問題ではなく申し訳ないのですが、よろしくお願いします。 OSはvistaです。

  • C++ ビルドエラー C1083

    エディター&コンパイラー : Visual studio 2008 express OS : vista business これまでfortran90しか触ったことがありません(といっても1年弱) C++で書かれたサンプルファイルを動かしたいのですが、どうにもコンパイルできません。 エラーメッセージとして .../\sdf\ISDF_data.h(12) : fatal error C1083: Cannot open include file: 'Vector/Vector.h': No such file or directory など拡張子「.h」ファイルの認識がうまく行っていない?ようで、 フォルダを跨いだファイル指定の認識がされません。 フォルダを跨いだファイルのエラーが数十個検出されてしまいます。 VS2008上では、Visual C++ / general / empty project を作成し、 そこにサンプルを、ファイル構造はそのままに、加えました。 したがって、ファイルはフォルダの中にあります。 問題のサインプルファイルは… http://cpc.cs.qub.ac.uk/summaries/ADRK 「Download」→「Yes」→e-mailはブランクでDLできると思います。 内容は、連立方程式をグループ化して簡素化して計算する方法を提案した論文のプログラムです。 どなたか教えていただければ、本当に助かります。 よろしくお願いいたします。

  • OpenGLのGLUT機能の導入につて

    今回 VisualStudio 2008 C++ を使って OpenGL を使ったアプリケーション開発に挑戦中ですが、 GLUT 機能が必要になり 、サイト"Nate Robins - OpenGL" からダウンロードして、 Windows 7 の適切なシステムフォルダーに格納コピーしようと考えております。 ところが、 GLUT を格納コピーすべきフォルダーパスが判らず困っています。 使っているWindows 7 のそれらしいフォルダーパスを調べたうえで、 お尋ねしたい質問項目を下記いたしましたので、どうかご教示ください。 ***.lib ファイルの格納フォルダー opengl32.lib : C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib\x64 glu32.lib : C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib\x64 opengl32.lib : C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib glu32.lib : C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib glut32.lib : 質問3:上記のどちらに格納すればよいのでしょうか?          両方共にコピーすべきでしょうか? ***.h ファイルの格納フォルダー gl.h : C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\gl glu.h : C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\gl glut.h : 質問2:上記に格納して構いませんか? ***.dll ファイルの格納フォルダー opengl32.dll : C:\Windows\System32 glu32.dll : C:\Windows\System32 glu32.dll.mui : C:\Windows\System32\ja-jp opengl32.dll : C:\Windows\SysWOW64 glu32.dll : C:\Windows\SysWOW64 glu32.dll.mui : C:\Windows\SysWOW64\ja-jp glut.dll : 質問3:上記のどちらに格納すればよいのか?              両方共にコピーすべきでしょうか?         質問4:glu32.dll.mui はなくて構わないのでしょうか? 以上

  • visual c++ 2010 使ってます。

    include "fbiad.h"と#include <GL/glut.h>のファイルが開けないのですが、どうすればよいか教えていただけないでしょうか。 調べると、ディレクトリを設定すればよいとなっているのですが、その場合どのように設定すればよいのでしょうか。

  • VC++ 2010 Expressのエラー

    visual C++ 2010 Expressでビルドエラーが解消できません。 VC++初心者です。非常に困っているので、お答えいただきたいです。 ARtoolkitとkinectを使用するために、windows8(64bit)でvisual C++ 2010 Expressを使用し、ビルドをしようとすると fatal error C1083: include ファイルを開けません。'windows.h': No such file or directory このようなエラーが表示されます。同様にexcpt.h、sdkddkver.h、stdio.h、stdlib.h、crtdefs.hもincludeできないとエラーが表示されます。 これらのファイルは全てC:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include の中に存在したため、このディレクトリをインクルードディレクトリとライブラリディレクトリに追加すると、includeファイルを開けないエラーは解消するのですが、 fatal error C1189: #error : ERROR: Use of C runtime library internal header file. というエラーが表示され、検索してみたものの原因がわからずにいます。 また既にvisual C++2008でARtoolkitを動かせる状態にしてあることも影響はあるのでしょうか? 大変わかりずらい質問で恐縮ですがお答えいただきたいです。

  • fatal error C1083: include ファイルを開けません というエラーが出ます

    初心者です。ソースは以下の通りです。 #include "stdafx.h" #include <cv.h> #include <highgui.h> #pragma comment(lib,"cv.lib") #pragma comment(lib,"cxcore.lib") #pragma comment(lib,"highgui.lib") int _tmain(int argc, _TCHAR* argv[]) { Ip1Image* img; //画像変数宣言 cvNamedWindow("画像表示"); // 表示ウィンドウの作成 img = cvLoadImage("Image.jpg"); //画像ファイルの読み込み if(img == NULL){ //ファイルが読み込めない場合 printf("ファイルが読み込めません。\n"); cvWaitKey(0); //キー入力待機 return -1; } cvShowImage("画像表示", img); //表示ウィンドウに画像を表示 cvWaitKey(0); //キー入力待機 cvDestroyWindow("画像表示"); //表示ウィンドウの破棄 cvReleaseImage(&img); //画像領域の解放 return 0; } 以上のソースをビルドすると、以下のようなエラーが出てしまって、うまくコンパイルすることができません。 1>------ ビルド開始: プロジェクト: ImageDisplay, 構成: Debug Win32 ------ 1>コンパイルしています... 1>ImageDisplay.cpp 1>c:\users\g031f096\documents\visual studio 2008\projects\imagedisplay\imagedisplay\imagedisplay.cpp(5) : fatal error C1083: include ファイルを開けません。'cv.h': No such file or directory 1>ビルドログは "file://c:\Users\g031f096\Documents\Visual Studio 2008\Projects\ImageDisplay\ImageDisplay\Debug\BuildLog.htm" に保存されました。 1>ImageDisplay - エラー 1、警告 0 ========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ========== どのようにすれば通るのでしょうか?よろしくお願いします。開発環境は Visual C++ 2008 Express Editionです。