如何在 Ubuntu 上的 C++ 应用程序中正确 link Graphviz

How to properly link Graphviz in a c++ application on Ubuntu

我在编译取自官方网站 https://graphviz.gitlab.io/_pages/dot.demo/demo.c .The problem is undefined reference to Graphviz functions. I know there is a related question asked here Qt Creator cannot resolve gvContext on Ubuntu 的简单示例代码时遇到问题,但没有帮助。

我已将 libgvc libcgraph libcdt 添加到我的 CMakeLists.txt 中,但这没有帮助。我已确保这些软件包存在于我的机器上。

这是我的 CMakeLists.txt

cmake_minimum_required(VERSION 3.13)
project(name)

set(CMAKE_CXX_STANDARD 14)

add_executable(name main.cpp)

INCLUDE(FindPkgConfig)
PKG_SEARCH_MODULE(gvc REQUIRED libgvc libcgraph libcdt)
LINK_DIRECTORIES(${gvc_LIBRARY_DIRS})
INCLUDE_DIRECTORIES(${gvc_INCLUDE_DIRS})
TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${gvc_LIBRARIES})

如果有人 link 浏览过图书馆或知道如何 link 正确,请告诉我。

您是否安装了 libgraphviz-dev 软件包?其中包含您 CMakeLists.txt 需要的 libgvc pkg-config 文件。