如何在CMAKE(JUCI )中使用PKG-Config

How to use pkg-config in CMake (juCi++)

本文关键字:PKG-Config JUCI CMAKE      更新时间:2023-10-16

我很高兴地在C 上编程,并用G 编译了一段时间。不久前,我决定获得IDE,然后我来了Juci 。

这个IDE绝对出色,但它使用CMake(或Meson)来构建项目。这不是问题,直到我不得不使用pkg-config包含一个库(如果您想知道的话,GTK 3.0)。使用G 编译时可以很容易地完成此操作,但是,由于我对Cmake是全新的,我不知道如何在新的IDE中做到这一点。

有人可以解释吗?

如果您的IDE处理CMake和Meson,则应该能够检测您的项目文件。我会说去梅森,这是未来,cmake语法有一些奇怪的东西,梅森没有。

梅森:

梅森文档

他是一个基本的meson.build,希望在main.c中找到您的应用程序代码,并产生一个名为gtk3-test的二进制文件。

project('gtk3-test', 'c')
cc = meson.get_compiler('c')
deps = dependency ('gtk+-3.0')
sources = ['main.c']
executable('gtk3-test', sources, dependencies: deps)

cmake

cmake文档

对于cmake,只需查看我的答案,即如何更轻松地将gtk库与Windows中的CMake链接?(在Linux下也起作用)。它适用于GTK 2,但是将其调整为GTK 3很容易,所以这是CMakeLists.txt使用:

project (gtk3-test)
cmake_minimum_required (VERSION 2.4)
find_package (PkgConfig REQUIRED)
pkg_check_modules (GTK3 REQUIRED gtk+-3.0)
include_directories (${GTK3_INCLUDE_DIRS})
link_directories (${GTK3_LIBRARY_DIRS})
add_executable (gtk3-test main.c)
add_definitions (${GTK3_CFLAGS_OTHER})
target_link_libraries (gtk3-test ${GTK3_LIBRARIES})