5

私は OpenGL を勉強していて、普段は大学の研究室で勉強しています。

私の問題は、大学のコンピューターにプログラムを学習するために必要なライブラリがインストールされておらず、これらのコンピューターにはユーザー権限しかないため、管理者権限が必要なものをインストールできないことです。

通常、私は Linux 環境で開発を行っていますが、ラボのコンピューターはすべて Windows XP または Windows 7 を実行していました。g++ を使用してプログラム、freeglut および opengl ライブラリをコンパイルします。また、OpenGL 拡張機能を使用して、たとえば頂点配列オブジェクトや、新しいバージョンの OpenGL のその他の機能を使用できるようにします。

それが、必要なものすべてをペンドライブに入れ、何もインストールせずに、行くすべてのコンピューターでこれを実行する方法であるかどうかを考えています。たぶん、すべてのライブラリをcygwinとメモ帳++ポータブルでペンドライブに置き、ペンドライブでcygwinを使用してプログラムをコンパイルするようなものです。

しかし、どうすればこれを達成できますか?コードにどのような変更を加える必要がありますか?

編集:

私の問題を解決するために、次のことを行いました。

PC に MSYS を使用して MinGW をインストールしました。

MinGW フォルダー内に次のコードを含む startMinGW という名前のバッチ ファイル (.bat) を作成します。

@echo off
mode con:cols=130 lines=50
path=%path%;%CD%\bin
path=%path%;%CD%\lib
path=%path%;%CD%\msys\1.0\bin
title MinGW Compiler
echo Ready!
cmd.exe /K

バッチ ファイルを実行して、以下をコンパイルします。

freeglut 2.8.0 を MinGW でコンパイルし、freeglut のルート フォルダに移動して次のコマンドを実行します。

sh configure
make

glew 1.9.0 を MinGW でコンパイルし、freeglut のルート フォルダーに移動して次のコマンドを実行します。

make

freeglut と glew のインクルード フォルダにローカライズされた .h ファイルを、MinGW のインクルード フォルダにコピーしました。

freeglut と glew の lib フォルダにローカライズされた .a、.dll、.la、.lai (.la と .lai ファイルをコピーする必要があるかどうかはわかりません) ファイルを MinGW の lib フォルダにコピーしました。

フォルダー C:\MinGW をペンドライブにコピーしました。

OpenGL プログラムをコンパイルするには、ペンドライブから startMinGW を実行して実行するだけです。

g++ file.cpp -lopeng32 -lglu32 -lglut -lglew
4

2 に答える 2

1

glut (または freeglut) lib はクロスプラットフォームです。Windows でコンパイルしないのはなぜですか? ビルド ジェネレーター (CMake など) を使用して、各プラットフォームでメイクファイルを簡単に作成すれば完了です。

于 2013-01-01T20:18:13.107 に答える
0

Qt OpenGL APIは、おそらくあなたのケースに最適です。

于 2013-01-02T08:26:09.883 に答える