草庐IT

c++ - cmake找不到静态库

g++(Ubuntu/Linaro4.5.2-8ubuntu4)4.5.2我有一个名为sdpAPI.a的静态库我正在尝试使用cmake将我的cpp文件链接到它。我的CMakeLists.txt看起来像这样?CMAKE_MINIMUM_REQUIRED(VERSION2.8)PROJECT(demo_projectCXX)IF(CMAKE_COMPILER_IS_GNUCXX)SET(CMAKE_C_FLAGS"-Wall-Wextra-Wunreachable-code-O0-D_DEBUG-ggdb-m32")ENDIF(CMAKE_COMPILER_IS_GNUCXX)INCLUD

C++集群聊天服务器 数据模块+业务模块+CMake构建项目 笔记 (上)

跟着施磊老师做C++项目,施磊老师_腾讯课堂(qq.com)本文在此篇博客的基础上继续实现数据模块和业务模块代码:C++集群聊天服务器网络模块+业务模块+CMake构建项目笔记(上)-CSDN博客https://blog.csdn.net/weixin_41987016/article/details/135991635?spm=1001.2014.3001.5501一、mysql项目数据库和表的设计myql项目数据库和表的设计-CSDN博客https://blog.csdn.net/weixin_41987016/article/details/135981407?spm=1001.2014

c++ - 如何处理跨平台 C++ 项目中的依赖关系?

这是我在跨平台项目中以自动化方式处理外部库的方式。(为什么没有跨平台包管理器?)将已编译的二进制文件添加到存储库。(这是行不通的,因为平台和构建配置各不相同,并且可能会出现新的环境。)编写下载脚本以从互联网上获取源代码。我可以考虑从Github或通过HTTP从项目网站克隆库。(下载链接更改时会中断。此外,我不知道如何自动构建所有库。)将所有依赖项的源代码包含到存储库中,或者作为子存储库。(问题仍然是找到一种自动编译它们的方法。而且它需要大量空间。)在跨平台C++项目中处理外部库的工作流程是什么?那里有很多大项目,我想一定出现了一个。如果不是,我可以根据哪些标准来选择合理的方式?

C++ 与 git 和 CMake : How to build submodules with specific parameters?

考虑一个在git存储库中组织的C++项目。假设git存储库有一个子模块,(super)项目依赖于该子模块构建了一个库。如果(super)项目不仅依赖于库,还依赖于使用特定(CMake)参数构建的库,那么如何确保在构建(super)项目时使用这些参数构建子模块? 最佳答案 必须将构建选项(如MYLIB_WITH_SQLITE)添加到库的接口(interface)中,即在老式配置的情况下添加到MYLIB_DEFINITIONS变量中-模块,或者到INTERFACE_COMPILE_DEFINITIONS属性,如果库使用install(E

c++ - 警告 : #warning qopenglfunctions. h 与 GLEW 不兼容,GLEW 定义将未定义 [-Wcpp]

我正在配置一个与glut一起工作的程序来与Qt一起工作。我正在使用Qt5.1.1。并且似乎从Qt4到Qt5已经丢失了一些openGL功能。在我的程序中,我创建了一个QOpenGLContext并尝试使用vbo渲染到QWindow。vbo部分工作正常。程序的其他一些部分依赖于glew。我在运行程序时收到以下警告#warningqopenglfunctions.hisnotcompatiblewithGLEW,GLEWdefineswillbeundefined[-Wcpp]#warningTouseGLEWwithQt,donotincludeorafterglew.h[-Wcpp]屏幕

c++ - 使用 GoogleTest 和 CMake 对 C 库进行单元测试

我似乎无法获得正在构建的库以正确链接到我的GoogleTest单元测试二进制文件。它在构建的链接阶段失败:LinkingCXXexecutable../../target/unit_testscd/Users/ebenoist/development/mylib/build/test&&/usr/local/Cellar/cmake/2.8.12.2/bin/cmake-Ecmake_link_scriptCMakeFiles/unit_tests.dir/link.txt--verbose=0Undefinedsymbolsforarchitecturex86_64:"a_funct

c++ - CMake:外部项目的依赖

我想知道如何管理外部项目的依赖关系。假设我有三个项目,每个项目都在不同的存储库中:核心:导出大量有用内容的库。Lib1:包含一些特定类的库(取决于Core)。可执行:使用来自Core和Lib1的内容。每个项目及其CMakeLists.txt。使用find_package并在CMake上定义路径,我可以毫无问题地构建每个项目并安装它(我按照thistuto为库构建.cmake文件)现在我正在努力使这个过程尽可能简单,我正在引入ExternalProject_Add宏,这样人们只需克隆Executable存储库并借助CMake文件Lib1和Core也被下载、编译和链接。问题是Executa

使用 CMake 和 Ryppl 的 C++ 库生态系统

我有兴趣构建一个跨平台的C++库并以源代码形式分发它。我希望这个库的使用者能够在他们正在使用的任何平台上以及他们针对的任何平台上非常容易地获取它、构建它并在他们的软件中使用它。同时在构建我的库的同时,我也希望能够通过类似的机制使用其他流行的OSS库。我看到了CMake和Ryppl是出于这些意图而创建的,并且在某种程度上它们确实解决了其中的一些问题,尤其是构建问题。但我不太清楚如何才能实现上述目标。可以选择CMake作为构建解决方案吗?如何解决库的获取和分发问题?简单地将源代码托管在某个地方,让人们发现、下载和构建它们?或者有更好的方法吗? 最佳答案

c++ - 使用 CMake 为不同的构建类型创建构建树

我知道如何根据构建类型(发布、调试等)让CMake输出库和容器,但是,为了减少(重新)编译时间,我想让CMake在不同的子文件夹中构建它们。说我有这种树|-CMakeLists.txt|-build/|-src/如果我有调试、发布和relwithdebinfo构建,我希望CMake自动为我创建一棵像这样的树|-CMakeLists.txt|-build/|---Debug/|---Release/|---RelWithDebInfo/|-src/等等。这可能吗,如果可以,我怎样才能实现我的目标?我不想要像“你应该从不同的文件夹运行CMake”这样的答案,因为对于visualstudio

c++ - 带有 Visual Studio 和 cmake 的 CUDA

我正在使用CUDA8.0和VisualStudio2013。到目前为止,我一直在使用CMake构建我的VS-Solutions,并且运行良好。通常使用以下代码片段构建cuda项目:FIND_PACKAGE(CUDAREQUIRED)INCLUDE_DIRECTORIES(${CUDA_INCLUDE_DIRS})link_directories(${CUDA_INCLUDE_DIRS}/../lib/x64)CUDA项目正在运行,编译和运行没有任何问题。但是我在项目属性中缺少CUDAC/C++字段。当我直接在VS中创建一个VS-Solution时,我可以选择NVIDIA/CUDA8.0