2

私は最近、「拡張現実: 実践ガイド」という本を購入しました。Windows、MacOS、および Linux で動作するサンプル コードがあります。

しかし、バイナリを実行できません。この本とUbuntuで実行するバイナリを持っている人はいますか?

また、Ubuntu でサンプルをコンパイルする方法もわかりません。どうすればいいですか?

これが何をするかです:

Linux 用のコンパイル

さわやかに、この章のプログラムを Linux 用にコンパイルするために必要な変更はありませんが、Windows の場合と同様に、最初に GL および GLUT ファイルを見つける必要があります。これは、マシンに適したバージョンの GLUT をダウンロードする必要があることを意味する場合があります。

GL、GLU、および GLUT ライブラリにリンクし、GLUT ヘッダー ファイルとそれに含まれるファイルへのパスを指定する必要があります。/usr/include/GLディレクトリに glut.h ファイルがあるかどうかを確認します。コマンドを使用しfind / -name "glut.h"てマシン全体を検索するか、locate コマンド ( locate glut.h) を使用できます。

パスをカスタマイズする必要があるかもしれませんが、コンパイル コマンドの例を次に示します。

$ gcc -o opengl_template opengl_template.cpp -I /usr/include/GL -I \ /usr/include -lGL -lGLU -lglut

gcc は、Linux または Unix マシンに存在する必要がある C/C++ コンパイラです。コマンドライン引数は、インクルード ファイル-I /usr/include/GLを探すように gcc に指示します。/usr/include/GLこの場合、glut.h とそれに含まれるものが見つかります。gcc でライブラリをリンクするときは、スイッチを使用します。ここで、X はライブラリの名前で、パスのどこかに-lX対応するファイルがあります。この例では、ライブラリ ファイル、、およびlibX.aをリンクしたいので、gcc 引数を使用します。これら 3 つのファイルはデフォルト ディレクトリにあるため、glut.h の場合のように場所を指定する必要はありません。ライブラリ パスを指定する必要がある場合は、パスに -L を追加します。libGL.alibGLU.alibglut.a-lGL -lGLU -lglut/usr/lib/

コンパイルしたプログラムを実行するには、./opengl_templateor と入力します。現在のディレクトリがシェルのパスにある場合は、opengl_template.

Linux で作業する場合、テクスチャ ファイルを最大 256 x 256 ピクセルに維持するか、システムの設定を見つけてこの制限を引き上げる必要がある場合があることを知っておくことが重要です。多くの場合、OpenGL プログラムは Windows では動作しますが、Linux ではテクスチャ サイズが縮小されるまで空白の白いテクスチャが生成されます。

上記の指示は私には意味がありません。コンパイルには gcc を使用する必要がありますか? それとも Eclipse を使用できますか?

Eclipse または gcc を使用している場合、プログラムをコンパイルして実行するにはどうすればよいですか?

4

1 に答える 1

0

必要に応じてEclipseを使用できますが、違いはありません。

Eclipse は単なる IDE、つまり、コンパイラーとの対話方法を知っている美しい GUI です。

コマンド:

gcc -o opengl_template opengl_template.cpp -I /usr/include/GL -I /usr/include -lGL -lGLU -lglut

コマンドラインから動作するはずです。必要に応じて、コンパイル時にまったく同じコマンド ラインを呼び出す Eclipse プロジェクトをセットアップできます。GLヘッダーを含む単一のCPPをコンパイルし、GL、GLU、およびGLUTとリンクしているようです。

opengl_template という名前の出力実行可能ファイルを生成する必要があります。

Ubuntu でコンパイルしたことはありませんが、それほど違いはありません。GL ライブラリを見つける必要があることについては、すべて無視できます。あなたはすでにそれらを持っているはずです。

幸運を!

于 2009-12-08T23:32:35.713 に答える