感谢支持
我们一直在努力

Vim中配置OpenGL

一.首先从Linux环境下开始入手配置,所使用的系统是Ubuntu

1.首先安装build-essential软件包,sudo apt-get install build-essential

linux操作系统上面开发程序,光有了gcc 是不行的,它还需要一个build-essential软件包,作用是提供编译程序必须软件包的列表信息。

也就是说编译程序有了这个软件包,它才知道 头文件在哪才知道库函数在哪,还会下载依赖的软件包,最后才组成一个开发环境。

2.安装 OpenGL Library,sudo apt-get install libgl1-mesa-dev

3.安装OpenGL Utilities,sudo apt-get install libglu1-mesa-dev

OpenGL Utilities 是一组建构于 OpenGL Library 之上的工具组,提供许多很方便的函式,使 OpenGL 更强大且更容易使用。

4.安装OpenGL Utility Toolkit,sudo apt-get install freeglut3-de

OpenGL Utility Toolkit 是建立在 OpenGL Utilities 上面的工具箱,除了强化了 OpenGL Utilities 的不足之外,也增加了 OpenGL 对于视窗介面支援。

到此OpenGL的编译环境就搭建好了。

5.接下来要过渡到在Vim中运行OpenGL,需要知道在terminal中怎么运行OpenGL的程序(例如opengl_test.cpp)

gcc -o opengl_test1 opengl_test1.cpp -lGL -lGLU -lglut(后面的-lGL -lGLU -lglut是编译过程添加的OpenGL相关库)

-l<library>告诉gcc去连结指定 Library -o<file> 指定执行档的输出名字。

6.Vim的配置

“———————–c,c++ IDE Setting Start—————————
“C,C++ 按F5编译运行
map <F5> :call CompileRunGcc()<CR>
func! CompileRunGcc()
    exec “w”
    if &filetype == ‘c’
        exec “!g++ % -o %< -lGL -lGLU -lglut”
        exec “! ./%<“
    elseif &filetype == ‘cpp’
        exec “!g++ % -o %< -lGL -lGLU -lglut”
        exec “! ./%<“
    elseif &filetype == ‘java’
        exec “!javac %”
        exec “!java %<“
    elseif &filetype == ‘sh’
        :!./%
    endif
endfunc
“C,C++的调试
map <F8> :call Rungdb()<CR>
func! Rungdb()
    exec “w”
    exec “!g++ % -g -o %<“
    exec “!gdb ./%<“
endfunc
“C的编译和运行
“map <F5> :call CompileRunGcc()<CR>
“func! CompileRunGcc()
“exec “w”
“exec “!gcc% -o %<“
“exec “! ./%<“
“endfunc
“C++的编译和运行
“map <F6> :call CompileRunGpp()<CR>
“————————c,c++ IDE Setting Start————————–

 

推荐阅读:

Vim学习指南 http://www.linuxidc.com/Linux/2013-08/89096.htm

快速学会 Vi编辑器 http://www.linuxidc.com/Linux/2013-08/88586.htm

强大的Vim 编辑器 http://www.linuxidc.com/Linux/2013-07/87544.htm

在CentOS 6.2上搭建Vim开发环境 http://www.linuxidc.com/Linux/2013-07/87363.htm

Vim 7.4a 发布,全新更快的正则表达式引擎 http://www.linuxidc.com/Linux/2013-07/87035.htm

CentOS 5.4 安装高亮Vim编辑工具 http://www.linuxidc.com/Linux/2013-06/86508.htm

Vim技巧分享:C语言设置 http://www.linuxidc.com/Linux/2012-12/77124.htm

Ubuntu中设置Vim的行号 http://www.linuxidc.com/Linux/2012-12/75485.htm

Vim编辑器使用基础教程 http://www.linuxidc.com/Linux/2013-05/84031.htm

二.在windows下配置Vim运行OpenGL

由于windows系统默认状态下是不包含任何的编译器,都需要用户自己配置,visual studio,VC之类的都是用户自己装上去的。所以希望在windows下也能像linux下直接在ternimal中运行OpenGL程序。在此推荐MinGW,MinGW(Minimalist GNU for Windows),又称mingw32,是将GCC编译器和GNU Binutils移植到Win32平台下的产物,包括一系列头文件(Win32API)、库和可执行文件。

GCC支持的语言大多在MinGW也受支持,其中涵盖C、C++、Objective-C、Fortran及Ada。

对于C语言之外的语言,MinGW使用标准的GNU运行库,如C++使用GNU libstdc++。

但是MinGW使用Windows中的C运行库。因此用MinGW开发的程序不需要额外的第三方DLL支持就可以直接在Windows下运行,而且也不一定必须遵从GPL许可证。这同时造成了MinGW开发的程序只能使用Win32API和跨平台的第三方库,而缺少POSIX支持[1],大多数GNU软件无法在不修改源代码的情况下用MinGW编译。

1.安装MinGW

http://www.mingw.org/wiki/InstallationHOWTOforMinGW

参考这个网址,大概意思就是下载必要的MinGW文件和一些自己需要扩展的(比如g++之类的),然后借助7zip解压缩到一个文件夹中(MinGW)中,然后将该文件夹的路径配置到系统环境变量Path中。

2.将OpenGL相关文件分配给MinGW和系统

lib(glut32.lib,glut.lib)—–>你的MinGW安装目录lib下

glut.h—->MinGW安装目录\include\GL\

dll(glut.dll,glut32.dll)—–>C:\windows\system32\(系统sysem32路径)

需要注意的一点:64bit的windows系统需要将相关的dll也分配到C:\Windows\SysWOW64

3.Vimrc配置

在Ubuntu中vimrc配置中稍微改进下

“———————–c,c++ IDE Setting Start—————————
“C,C++ 按F5编译运行
map <F5> :call CompileRunGcc()<CR>
func! CompileRunGcc()
    exec “w”
    if &filetype == ‘c’
        exec “!g++ % -o %<.exe”
        exec “!%<.exe”
    elseif &filetype == ‘cpp’
        exec “!g++ % -o %<.exe -D_STDCALL_SUPPORTED -DGLUT_DISABLE_ATEXIT_HACK -lopengl32 -lglu32 -lglut32”
        exec “!%<.exe”
  “! ./
    elseif &filetype == ‘java’
        exec “!javac %”
        exec “!java %<“
    elseif &filetype == ‘sh’
        :!./%
    endif
endfunc
“C,C++的调试
map <F8> :call Rungdb()<CR>
func! Rungdb()
    exec “w”
    exec “!g++ % -g -o %<“
    exec “!gdb ./%<“
endfunc
func CompileOpenGLRun()
    exec “!gcc % -g -o %<.exe -D_STDCALL_SUPPORTED -DGLUT_DISABLE_ATEXIT_HACK -lopengl32 -lglu32 -lglut32”
endfunc
“————————c,c++ IDE Setting Start————————–

赞(0) 打赏
转载请注明出处:服务器评测 » Vim中配置OpenGL
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏