Skip to content

Commit 1c516db

Browse files
linesightclaude
andcommitted
Add GTK3 includes/libs to main module target on Linux
The Cython-generated cefpython_py310.cpp includes gtk/gtk.h; the main module target was missing GTK3 include dirs. Also replace the GTK2 library names (gtk-x11-2.0, gdk-x11-2.0) with pkg-config GTK3_LIBRARIES. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 56aa89b commit 1c516db

1 file changed

Lines changed: 9 additions & 1 deletion

File tree

CMakeLists.txt

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,11 @@ add_subdirectory("${SRC_DIR}/subprocess"
158158
add_subdirectory("${SRC_DIR}/cpp_utils"
159159
"${CMAKE_CURRENT_BINARY_DIR}/cpp_utils")
160160

161+
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
162+
find_package(PkgConfig REQUIRED)
163+
pkg_check_modules(GTK3 REQUIRED gtk+-3.0)
164+
endif()
165+
161166
# ---- Python extension -------------------------------------------------------
162167
Python_add_library(${MODULE_NAME} MODULE "${CEFPYTHON_CPP}")
163168
add_dependencies(${MODULE_NAME} cefpython_headers)
@@ -225,11 +230,14 @@ else()
225230
BROWSER_PROCESS
226231
CEFPYTHON_API_H_FILE="cefpython_api_fixed.h"
227232
)
233+
target_include_directories(${MODULE_NAME} PRIVATE
234+
${GTK3_INCLUDE_DIRS}
235+
)
228236
target_link_options(${MODULE_NAME} PRIVATE
229237
-flto -Wl,--gc-sections
230238
)
231239
target_link_libraries(${MODULE_NAME} PRIVATE
232-
X11 gobject-2.0 glib-2.0 gtk-x11-2.0 gdk-x11-2.0
240+
X11 ${GTK3_LIBRARIES}
233241
cefpython_app client_handler cpp_utils
234242
"${CEF_ROOT}/lib/libcef_dll_wrapper.a"
235243
)

0 commit comments

Comments
 (0)