我正在处理一个由多个.c文件组成的项目。因此,为了简化我使用cmake构建文件的事情。以下代码位于我的CMakeLists.txt中:
set(SOURCE_FILES
utils.c
importLXCat.c
monte_carlo.c
object.c
vector.c
errors.c
scalar.c
d2_matrix.c
mt19937ar.c
randn.c)
link_libraries(m)
add_library(methes_core ${SOURCE_FILES})
然后,在终端我使用cmake -H. -Bbuild
建立蛋糕。到目前为止,一切都很好。
在下一步中,当我使用cmake --build build -- -j3
完成构建时,我收到错误:gtk/gtk.h: No such file or directory.
我在项目的几个C文件中使用了#include <gtk/gtk.h>
。
如果有人可以帮助我,那就太棒了。
答案 0 :(得分:0)
您应该将程序链接到GTK。
1)使用find_package(GTK REQUIRED)
2)由于GTK似乎不是现代CMake目标,因此请使用:
target_include_directories(methes_core PRIVATE ${GTK_INCLUDE_DIR})
target_link_libraries(methes_core PRIVATE ${GTK_LIBRARIES})
注意:希望将来我们只能target_link_libraries(methes_core PRIVATE gtk::gtk)
执行第2步...