有没有一种简单的方法在使用biicode作为构造工具的c ++项目中使用clion(例如调试)?
事实上,两个系统都使用cmake,但是biicode会生成clion似乎不理解的CMakeLists.txt(位于块中的那个/ cmake中的临时块).
现在我只能使用biicode自生成的CMakeLists.txt进行常规构建,并使用手工制作的CMakeLists.txt在clion中进行编译.然而,重复构造的描述听起来不是一个好主意.
我想一些精心制作的黑暗脚本可以完成(我对cmake来说很新),但我只是在玩,我认为不值得去做或者要求它.
有没有人试图使用clion和biicode?clion是否完全支持cmake了?biicode是否使用完全符合cmake标准的工具无法理解的内部代码?我错过了一些愚蠢的想法吗?
由于我无法从发布版本更改为调试版本类型,我想知道我做错了什么.我正在使用Unix Makefiles.
在docs.biicode.com/c++/building.html中说明如何在CMakeLists.txt中添加SET()将变量添加到cmake.
我是cmake和biicode的新手,我尝试了以下所有方法:
ADD_DEFINITIONS(-DCMAKE_BUILD_TYPE=Debug)
ADD_DEFINITIONS(-DCMAKE_BUILD_TYPE:STRING=Debug)
SET(CMAKE_BUILD_TYPE Debug)
target_compile_options(my_program PUBLIC $<$<CONFIG:Debug>:-Werror>)
Run Code Online (Sandbox Code Playgroud)
但是gdb说"找不到调试符号".
另一种方式,作为状态bii --help cpp,传递给cpp:build参数,这些参数将传递给cmake,但是调用
bii cpp:build -DCMAKE_BUILD_TYPE=Debug
Run Code Online (Sandbox Code Playgroud)
产量
Building: cmake --build . -DCMAKE_BUILD_TYPE=Debug
Unknown argument -DCMAKE_BUILD_TYPE=Debug
Run Code Online (Sandbox Code Playgroud)
但直接打电话
cmake -DCMAKE_BUILD_TYPE=Debug --build .
Run Code Online (Sandbox Code Playgroud)
工作正常,我不知道如何更改命令中的顺序bii cpp:build.
这是一个误解,一个sintax错误,还是一定有其他错误?在Debug和Release之间改变的最佳位置是什么?
比方说,我已上载在一个封装库柯南,它使用OpenGL,并与这些链接GL中CMakeLists.txt。库的用户是否需要再次明确链接到 GL?柯南是否提供了一种方法来跟踪它并将其包含在 中${CONAN_LIBS}?
我在文档中找到的最接近的东西是 method package_info,您似乎可以在其中指定链接器额外选项,但我似乎没有在我的库的conanfile.py. 我尝试了所有:
self.cpp_info.sharedlinkflags = ["-lGL", "GL", "libGL", "libGL.so", "-llibGL.so"]
Run Code Online (Sandbox Code Playgroud)
但是如果在用户代码中我没有放置链接标志,它会引发对 GL 方法的“未定义引用”。
编辑:我在 linux mint 17 中工作。