这是Makefile中的CFLAGS。
我的问题是如何组合。
在CXX_FLAGS中。我已经搜索了很多,但还是找不到答案。请帮忙。
CFLAGS = -I/usr/include/libglade-2.0 -I/usr/include/gsl `pkg-config --cflags --libs gtk+-2.0` -lglade-2.0 -lglut -I/usr/local/include/dc1394 -ldc1394
我希望使用CMAKE而不是Makefile。这是我编写的CMakeLists.txt文件的一部分。
find_package(PkgConfig REQUIRED)
pkg_check_modules(GTK REQUIRED "gtk+-2.0")
# Add the path to its header files to the compiler command line
include_directories(${GTK_INCLUDE_DIRS})
link_directories(${GTK_LIBRARY_DIRS})
# Add any compiler flags it requires
# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${GTK_CFLAGS}")
# Add the makefile target for your executable and link in the GTK library
target_link_libraries(${CMAKE_PROJECT_NAME} ${GTK_LIBRARIES})
# gtk and glade
find_package(GTK2 2.10 REQUIRED gtk glade)
if(GTK2_FOUND)
include_directories(${GTK2_INCLUDE_DIRS})
target_link_libraries(${CMAKE_PROJECT_NAME} ${GTK2_LIBRARIES})
endif()
我的问题是如何组合。
`pkg-config --cflags --libs gtk+-2.0`
在CXX_FLAGS中。我已经搜索了很多,但还是找不到答案。请帮忙。
GTK_CFLAGS
应该包括 "other" 选项,我相信。这与命令行选项--cflags
、--cflags-only-I
(仅包含目录)和--cflags-only-other
(仅包含非包含标志)相匹配。因此,add_definitions(${GTK_CFLAGS})
应该足够了。 - AndiDog