本文主要介绍ubuntu/win下CLion,CMakeLists.txt基本使用。
工作中最开始使用python的时候觉得这个IDE特别好用, 后来使用java的
时候使用的IDEA也非常方便,这两个IDE都是JetBrain开发的。两三年前
开发C++的时候使用的是VS2010感觉VS过于笨重后面的VS2013/2015体验
也不是很好。发现了JetBrain开发的C++编辑器CLion果断试了一下发现
其实很好用(无论是阅读代码,调试)。
CLion优势:
支持一个工程下N个main函数(前面使用VS的时候好像不行,时间长了不记得)这样运行调试的时候特别方便
IDE的风格和Pycharm以及IDEA很像看起来很舒服,而且快捷键非常好用
可以调用git SVN工具直接创建github项目
跨平台(工作中的代码很多只能在linux下编译运行,而公司代码基本是使用makefile, 我们可以把代码下载到win10下添加几个CMakeList.txt就可以很好的阅读,编写代码,完成之后上传代码到linux编译即可)
先上个图看下使用的效果win10下面:
生成.a文件:
下面是ubuntu环境下编写调试C++11 handy网络库源码, 编写简单的CMakeLists.txt即可以生成静态库static lib:
生成可执行文件以及链接静态库:
调试起来也是特别方便(win10下):
ubuntu下面:
下面给出一个简单的示例代码结构如下:
CMakeLists.txt如下:
# main cmakelists.txt
cmake_minimum_required(VERSION 3.6)
project(common_algorithm)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
add_subdirectory(common_sort)
add_subdirectory(data_struct)
set(SOURCE_FILES main.cpp)
add_executable(common_algorithm ${SOURCE_FILES})
# common_sort cmakelists.txt
project(common_sort)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
include_directories(h)
include_directories(src)
file(GLOB SRC sort_test_main.cpp h/*.h src/*.cpp)
add_executable(common_sort ${SRC})
当文件不是可执行文件/lib/so的源文件的时候,文件/文件夹的图标是灰色的而且代码也没有highlight
解决邮件文件或者文件夹mark directory as ->project sources and headers即可:
项目上传至github
pycharm IDEA 都有这个功能
代码的上传push, pull都很方便:
更多使用可以看官网文档
https://www.jetbrains.com/help/clion/2017.1/quick-start-guide.html