انجمن‌های فارسی اوبونتو

کمک و پشتیبانی => برنامه‌سازی => نویسنده: Omilun در 13 فروردین 1392، 06:50 ب‌ظ

عنوان: چگونه از طریق c++ میشود دستورات openGL را کامپایل کرد؟[حل شد]
ارسال شده توسط: Omilun در 13 فروردین 1392، 06:50 ب‌ظ
سلام دوستای گلم.

من کدهام رو قبلا دیباگ کردم تو win اما در ubuntu نمیدونم چجوری باید اجام داد.
دشب هم یادم دادید c++ چجوری کامپایل میشه.

ممنون میشم کمک کنید.

Omilun
عنوان: پاسخ : چگونه از طریق c++ میشود دستورات openGL را کامپایل کرد؟
ارسال شده توسط: majidkamali1370 در 14 فروردین 1392، 01:46 ب‌ظ
سلام.
اگه GL و GLU رو نصب نکردی رو اوبونتو، با دستور زیر نصبش کن
sudo apt-get install mesa-common-devاگه توی کد از glut استفاده میکنی اول نصبش کن.
sudo apt-get install freeglut3-devبعد واسه کامپایل بنویس
g++ myProgram.cpp -lglut -lGLU -lGL -o Outputکه یک فایل به نام Output درست میکنه.
برای اجرا
./Output
عنوان: پاسخ : چگونه از طریق c++ میشود دستورات openGL را کامپایل کرد؟
ارسال شده توسط: دانیال بهزادی در 21 فروردین 1392، 12:12 ب‌ظ
اگه از اکلیپس استفاده کنی هم فقط کافیه یه بار بهش کتاب‌خانه‌های glut GLU و GL رو بدی و خودش همه‌ی کارها رو می‌کنه
عنوان: پاسخ : چگونه از طریق c++ میشود دستورات openGL را کامپایل کرد؟
ارسال شده توسط: Omilun در 21 فروردین 1392، 11:17 ب‌ظ
اگه از اکلیپس استفاده کنی هم فقط کافیه یه بار بهش کتاب‌خانه‌های glut GLU و GL رو بدی و خودش همه‌ی کارها رو می‌کنه
سلام اکلیپس چجوری نصب میشه؟
عنوان: پاسخ : چگونه از طریق c++ میشود دستورات openGL را کامپایل کرد؟
ارسال شده توسط: دانیال بهزادی در 22 فروردین 1392، 12:22 ق‌ظ
$ sudo apt-get install eclipse-cdt
عنوان: پاسخ : چگونه از طریق c++ میشود دستورات openGL را کامپایل کرد؟
ارسال شده توسط: Omilun در 22 فروردین 1392، 12:44 ق‌ظ
$ sudo apt-get install eclipse-cdt
این کد کار نکرد.
اما یه کی دیگرو زدم شد.

apt-get install eclipse-platform
 
عنوان: پاسخ : چگونه از طریق c++ میشود دستورات openGL را کامپایل کرد؟
ارسال شده توسط: Omilun در 22 فروردین 1392، 12:46 ق‌ظ
سلام.
اگه GL و GLU رو نصب نکردی رو اوبونتو، با دستور زیر نصبش کن
sudo apt-get install mesa-common-devاگه توی کد از glut استفاده میکنی اول نصبش کن.
sudo apt-get install freeglut3-devبعد واسه کامپایل بنویس
g++ myProgram.cpp -lglut -lGLU -lGL -o Outputکه یک فایل به نام Output درست میکنه.
برای اجرا
./Output

دوسته عزیزم با این روشها که فرمودین نشد. چیکار کنم؟
عنوان: پاسخ : چگونه از طریق c++ میشود دستورات openGL را کامپایل کرد؟
ارسال شده توسط: دانیال بهزادی در 22 فروردین 1392، 12:50 ق‌ظ
نشد . کار نکرد دقیقاً بدترین تعریفیه که می‌تونی از نتیجه‌ی کار ارائه بدی. دقیقاً بگو چی می‌گه وقتی کدهای بالا رو می‌زنی. چه اونی که من گفتم، چه اون‌هایی که مجید جان گفتن
عنوان: پاسخ : چگونه از طریق c++ میشود دستورات openGL را کامپایل کرد؟
ارسال شده توسط: Omilun در 22 فروردین 1392، 01:44 ق‌ظ
نشد . کار نکرد دقیقاً بدترین تعریفیه که می‌تونی از نتیجه‌ی کار ارائه بدی. دقیقاً بگو چی می‌گه وقتی کدهای بالا رو می‌زنی. چه اونی که من گفتم، چه اون‌هایی که مجید جان گفتن
تمام کدهای opengl رو خطا میگیره.
کد شما کار نکرد. از synapic نصب کردم
عنوان: پاسخ : چگونه از طریق c++ میشود دستورات openGL را کامپایل کرد؟
ارسال شده توسط: دانیال بهزادی در 22 فروردین 1392، 02:21 ق‌ظ
نمونه‌ی کدت رو می‌ذاری بررسی کنیم؟
عنوان: پاسخ : چگونه از طریق c++ میشود دستورات openGL را کامپایل کرد؟
ارسال شده توسط: majidkamali1370 در 22 فروردین 1392، 10:39 ق‌ظ
من همیشه دقیقا با همین کدها OpenGL کامپایل میکنم.
لطفا پیغام خطاها رو بزار.
عنوان: پاسخ : چگونه از طریق c++ میشود دستورات openGL را کامپایل کرد؟
ارسال شده توسط: Omilun در 22 فروردین 1392، 01:04 ب‌ظ
من همیشه دقیقا با همین کدها OpenGL کامپایل میکنم.
لطفا پیغام خطاها رو بزار.

root@bt:~/Desktop# g++ test.cpp -lglut -lGLU -lGL -o Output
test.cpp:1:23: error: GLUT/GLUT.h: No such file or directory
test.cpp: In function ‘int main(int, char**)’:
test.cpp:7: error: ‘argc’ was not declared in this scope
test.cpp:7: error: ‘argev’ was not declared in this scope
test.cpp:7: error: ‘glutInit’ was not declared in this scope
test.cpp:8: error: ‘GLUT_depth’ was not declared in this scope
test.cpp:8: error: ‘GLUT_DOUBLE’ was not declared in this scope
test.cpp:8: error: ‘GLUT_RGBA’ was not declared in this scope
test.cpp:8: error: ‘glutIntDisplaymode’ was not declared in this scope
test.cpp:9: error: ‘glutInitWindowPosition’ was not declared in this scope
test.cpp:10: error: ‘glutInitWindowSize’ was not declared in this scope
test.cpp:11: error: ‘glutCreateWindow’ was not declared in this scope
test.cpp:13: error: ‘glutDisplayFunc’ was not declared in this scope
test.cpp:15: error: ‘glutMainLoop’ was not declared in this scope
عنوان: پاسخ : چگونه از طریق c++ میشود دستورات openGL را کامپایل کرد؟
ارسال شده توسط: majidkamali1370 در 22 فروردین 1392، 06:09 ب‌ظ
توی کد باید این رو include کنی
#include <GL/glut.h>
عنوان: پاسخ : چگونه از طریق c++ میشود دستورات openGL را کامپایل کرد؟
ارسال شده توسط: Omilun در 22 فروردین 1392، 06:25 ب‌ظ
توی کد باید این رو include کنی
#include <GL/glut.h>
استفاده کردم . خطاهای مربوط به opengl رفت . اما یه تعدادی ماندن.

root@bt:~/Desktop# g++ test.cpp -lglut -lGLU -lGL -o Output
test.cpp: In function ‘int main(int, char**)’:
test.cpp:8: error: ‘argc’ was not declared in this scope
test.cpp:8: error: ‘argev’ was not declared in this scope
test.cpp:9: error: ‘glutInitDisplaymode’ was not declared in this scope

این هم کدهایی که استفاده کردم:

#include <GL/glut.h>

void render(void);

int main (int arge, char** argv){

glutInit(&argc, argev);
glutInitDisplaymode(GLUT_DEPTH | GLUT_DOUBLE | GLUT_RGBA);
glutInitWindowPosition(100, 100);
glutInitWindowSize(640, 480);
glutCreateWindow("Simpele GLUT Application");

glutDisplayFunc(render);

glutMainLoop();


}

void render(void){

}
عنوان: پاسخ : چگونه از طریق c++ میشود دستورات openGL را کامپایل کرد؟
ارسال شده توسط: 不眠症 در 22 فروردین 1392، 08:27 ب‌ظ
برای دریافت eclipse از خود سایتش هم  میتونی اقدام کنی. اینطوری آخرین نسخه هم دانلود میکنی
http://www.eclipse.org/downloads/

به نظرم شما داری از g++ برای کامپایل استفاده میکنی یا از gcc استفاده کن یا اون آرگومانهای داخل main رو بردار(برای g++)
عنوان: پاسخ : چگونه از طریق c++ میشود دستورات openGL را کامپایل کرد؟
ارسال شده توسط: majidkamali1370 در 22 فروردین 1392، 08:39 ب‌ظ
argc رو توی اول main نوشتی arge
و argv رو نوشتی argev
اون تابع هم اینجوریه glutInitDisplayMode
M بزرگ ;)
عنوان: پاسخ : چگونه از طریق c++ میشود دستورات openGL را کامپایل کرد؟[حل شد]
ارسال شده توسط: Omilun در 23 فروردین 1392، 09:31 ب‌ظ
ممنون بچه ها حل شد