miniob icon indicating copy to clipboard operation
miniob copied to clipboard

CMakeLists.txt: “-DCMAKE_EXPORT_COMPILE_COMMANDS=1”不应该放在此处.

Open tyn1998 opened this issue 4 years ago • 1 comments

miniob的小伙伴们你们好,我使用vim搭配coc.nvim以及clangd实现c/c++的自动补全,因此对compile_commands.json有需求。

当前的CMakeLists.txt已经涉及compile_commands.json的生成,但是这个FLAG的位置应该摆错了。

https://github.com/oceanbase/miniob/blob/c611d5fe878382116b6a329418b37d6a66daa2e1/CMakeLists.txt#L40

虽然CMAKE_COMMON_FLAGS这个变量感觉上是设置了cmake的FLAGS,但是最后其实是赋值给了CMAKE_CXX_FLAGS,而-DCMAKE_EXPORT_COMPILE_COMMANDS=1这个参数是用在cmake上的,而不是gcc

解决方法是:

1、在CMakeLists.txt开头位置附近加上set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

2、或在运行cmake时加上参数,即cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=1 ..

这样就能生成compile_commands.jsonimage

tyn1998 avatar Oct 16 '21 09:10 tyn1998

能不能提个PR? 等大赛结束,会继续演进miniob

hnwyllmm avatar Oct 19 '21 05:10 hnwyllmm