ROS配置C++11环境


打开Terminal,


sudo vim /opt/ros/<yourversion>/share/catkin/cmake/toplevel.cmake

比如:

sudo vim /opt/ros/kinetic/share/catkin/cmake/toplevel.cmake


按i插入文本,添加


set(CMAKE_CXX_FLAGS "-std=c++14 ${CMAKE_CXX_FLAGS}")


然后进入末行模式,保存退出。  

附录:


命令



简单说明



:w



保存编辑后的文件内容,但不退出vim编辑器。这个命令的作用是把内存缓冲区中的数据写到启动vim时指定的文件中。



:w!



强制写文件,即强制覆盖原有文件。如果原有文件的访问权限不允许写入文件,例如,原有的文件为只读文件,则可使用这个命令强制写入。但是,这种命令用法仅当用户是文件的属主时才适用,而超级用户则不受此限制。



:wq



保存文件内容后退出vim编辑器。这个命令的作用是把内存缓冲区中的数据写到启动vim时指定的文件中,然后退出vim编辑器。另外一种替代的方法是用ZZ命令。



:wq!



强制保存文件内容后退出vim编辑器。这个命令的作用是把内存缓冲区中的数据强制写到启动vim时指定的文件中,然后退出vim编辑器。



ZZ



使用ZZ命令时,如果文件已经做过编辑处理,则把内存缓冲区中的数据写到启动vim时指定的文件中,然后退出vim编辑器。否则只是退出vim而已。注意,ZZ命令前面无需加冒号“:”,也无需按Enter键。



:q



在未做任何编辑处理而准备退出vim时,可以使用此命令。如果已做过编辑处理,则vim不允许用户使用“:q”命令退出,同时还会输出下列警告信息:

No write since last change (:quit! overrides)



:q!



强制退出vim编辑器,放弃编辑处理的结果。如果确实不需要保存修改后的文件内容,可输入“:q!”命令,强行退出vim编辑器。



:w filename



把编辑处理后的结果写到指定的文件中保存



:w! filename



把编辑处理后的结果强制保存到指定的文件中,如果文件已经存在,则覆盖现有的文件。



:wq! filename



把编辑处理后的结果强制保存到指定的文件中,如果文件已经存在,则覆盖现有文件,并退出vim编辑器。




 

注:vim的末行模式 使用esc退出编辑模式,进入末行模.

在末行模式下,直接输入数字,回跳转到对应行号

wq:保存并退出

q:退出,如果做了修改,提示是否保存,如果没作修改,会直接退出

q!:退出不保存

w:保存不退出

x:功能相当于wq,保存并退出