Ubuntu14.04下使用sublime text3编写C++代码自动差错总结

来源:互联网 发布:网络传播是指 编辑:程序博客网 时间:2024/06/03 10:21

sublime3是一款功能强大的编辑软件,但是在Ubuntu下使用其进行C++软件开发的时候会出现一些问题,需要技巧去解决,

1.首先就是如何在sublime3中编写汉字,推荐下面的文章,但是中间会有一点小错误,需要自己做相应的修改,配置完成后可能会出现一点问题,关机重启基本上就可以了。

http://jingyan.baidu.com/article/f3ad7d0ff8731609c3345b3b.html

2.还存在一根问题就是如见自动检测C++的语法和代码错误以及自动补全功能,其实就是进行C++的代码编写,这里需要安装相应的插件

2.1首先安装package control插件,这个比较简单,网上教程多得是

Package Control是一个用于管理插件的好工具,可以用于安装、删除、禁用相应的插件,常用的插件都能在上面找到。其源码地址在https://github.com/wbond/package_control_channel上,安装非常方便,使用git将该代码先克隆下来即可,然后拷贝到~/.config/sublime-text-3/Packages/目录下并命名为Package Control即可。(也可以直接在github上打包下载,然后解压复制到~/.config/sublime-text-3/Packages/目录下并命名为Package Control)。

cd ~/.config/sublime-text-3/Packages/
git clone https://github.com/wbond/package_control_channel.git Package\ Control

或者打开sublime_text然后按快捷键ctrl+`(Esc下面那个键),在弹出的命令输入窗口输入下面信息回车即可:
重新启动SublimeText 3,然后使用快捷键Ctrl + Shift + p,在弹出的输入框中输入Package Control则可以看到Install Package的选项,选择它后一会儿(看左下角的状态)会弹出插件查询及安装窗口,输入想用的插件,选中回车即可。如果用于C/C++开发建议安装C++ snipptes,ConvertToUTF8,SublimeAStyleFormatter插件,具体代表什么意思baidu一下就清楚了。
2.2下面就是安装SublimeClang插件
SublimeClang是Sublime Text中唯一的C/C++自动补全插件,功能强大,自带语法检查功能,不过最近作者已经停止更新了,目前只能在Sublime Text 2的Package Control中可以找到并自动安装,在SublimeText 3中只能手动通过源码安装,其代码线在https://github.com/quarnster/SublimeClang中。具体安装步骤如下:
安装相关软件
    sudo apt-get install cmake build-essential clang git
    cd ~/.config/sublime-text-3/Packages
    git clone --recursive https://github.com/quarnster/SublimeClang SublimeClang
    cd SublimeClang
    cp /usr/lib/x86_64-linux-gnu/libclang-3.4.so.1 internals/libclang.so      #这一步很重要,如果你的clang库不是3.4版本的话,请将对应版本的库拷贝到internals中
    cd src
    mkdir build
    cd build
    cmake ..
    make
一切成功的话将会在SublimeClang/internals目录中生成libcache.so库文件。重启Sublime Text,然后按快捷键Ctrl + `(Esc下面那个键)打开自带的控制输出,看看有没有错误,如果没有错误就说明一切OK了。接下来就是配置自己的文件了,按下ctrl + shift + p快捷键,在弹出的输入框中输入 sublimeclang settings ,然后选择带User那一行,在打开的文件中输入如下信息:
{
    "show_output_panel": false,
    "dont_prepend_clang_includes": true,
    "inhibit_sublime_completions": false,

    "options":
    [
        "-std=gnu++11",
        "-isystem", "/usr/include",
        "-isystem", "/usr/include/c++/*",
        "-isystem", "/usr/include/c++/4.8",
        "-isystem", "/usr/include/c++/4.8/*",
        "-isystem", "/usr/include/boost",
        "-isystem", "/usr/include/boost/**",
        "-isystem", "/usr/lib/gcc/x86_64-linux-gnu/4.8/include",
        "-isystem", "/usr/lib/gcc/x86_64-linux-gnu/4.8/include/*"
    ]
}
注释:我的gcc版本为4.8,如果你的不是请替换对应的版本,在#include相应的头文件后保存当前文件,在接下来的操作中将更快的提示所包含在头文件的函数或者变量。


原创粉丝点击