專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

在sublime上編譯運行opengl程序

作者:huqin   來源:本站原創(chuàng)   點擊數(shù):  更新時間:2013年11月18日   【字體:
 一.本人的環(huán)境:
            ubuntu13.04;
          sublime text3;

 .正文:
       閑來無事,本著sublime無所不能的想法,就想在sublime上編譯運行opengl程序, google了好久也沒找到完美的解決辦法,自己的build-system老是不對,(可以正常編譯,不能編譯一定是編譯命令錯了
 -lGL -lGLU -lglut 三個關聯(lián)庫都有才能編譯成功)編譯后按ctrl+shift+b不能運行,看不到茶壺啊=_=,只能用終端cd到文件目錄下運行之,麻煩!本著試一試的想法,瞎改一通,終于解決了:
1.先安裝opengl,這個網上教程很多,不再贅述 ,依次運行以下命令即可
          sudo apt-get install build-essential 
          sudo apt-get install libgl1-mesa-dev
          sudo apt-get install libglu1-mesa-dev 
          sudo apt-get install freeglut3-dev 
2. 配置sublime:
    1.打開sublime,依次點Tools->Build System->New Build System...;
    2.寫入以下代碼;
{
    "shell_cmd""g++ \"${file}\" -o \"${file_path}/${file_base_name}\" \"-lGL\" \"-lGLU\" \"-lglut\"",
    "file_regex""^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
    "working_dir""${file_path}",
    "selector""source.c, source.c++",
    "variants":
    [
        {
            "name""Run",
            "shell_cmd""./\"${file_base_name}\""
        }
    ]
}
 
 
    3.ctrl+s保存之,自己起個名字,我的是opengl.sublime-build;
    4.現(xiàn)在你可以寫個測試hello world測試哈了(這hello world真長=_=);
#include <GL/glut.h>
 
void init();
void display();
 
int main(int argc, char* argv[])
{
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
    glutInitWindowPosition(0, 0);
    glutInitWindowSize(300, 300);
    
    glutCreateWindow("OpenGL 3D View");
    
    init();
    glutDisplayFunc(display);
    
    glutMainLoop();
    return 0;
}
 
void init()
{
    glClearColor(0.0, 0.0, 0.0, 0.0);
    glMatrixMode(GL_PROJECTION);
    glOrtho(-5, 5, -5, 5, 5, 15);
    glMatrixMode(GL_MODELVIEW);
    gluLookAt(0, 0, 10, 0, 0, 0, 0, 1, 0);
}
 
void display()
{
    glClear(GL_COLOR_BUFFER_BIT);
        
    glColor3f(1.0, 0, 0);
    glutWireTeapot(3);
    
    glFlush();
}
     5.ctrl+b編譯,ctrl+shift+b運行,即可看到茶壺>o<:


    6.在終端中先后運行
        g++ gl.cpp -o gl 
 -lGL -lGLU -lglut
        ./gl
        可達到同樣效果
關閉窗口

相關文章