From e91641be576ed98cb377a2722b63d73a1b88ace4 Mon Sep 17 00:00:00 2001 From: gggaa2152 <60614405+gggaa2152@users.noreply.github.com> Date: Mon, 6 Apr 2026 03:15:12 +0800 Subject: [PATCH] Update CMakeLists.txt --- CMakeLists.txt | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 010b9ee74..99a2654b2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,32 +1,46 @@ cmake_minimum_required(VERSION 3.10) project(JKMenu) -set(ANDROID_STL c++_static) +# 设置 C++ 标准和 STL set(CMAKE_CXX_STANDARD 17) +set(CMAKE_CXX_STANDARD_REQUIRED ON) +set(ANDROID_STL c++_static) +# 包含目录 include_directories(${CMAKE_CURRENT_SOURCE_DIR}) include_directories(${CMAKE_CURRENT_SOURCE_DIR}/backends) +# ImGui 核心源文件 +# 假设这些文件在项目根目录,如果报错找不到,请确认它们的位置 set(IMGUI_SRCS imgui.cpp imgui_draw.cpp imgui_widgets.cpp imgui_tables.cpp + imgui_demo.cpp backends/imgui_impl_android.cpp backends/imgui_impl_opengl3.cpp - backends/imgui_impl_vulkan.cpp ) -# 注入器 +# 1. 编译注入器 (jk_injector) add_executable(jk_injector injector.cpp) target_link_libraries(jk_injector log) -# 插件库 +# 2. 编译插件库 (libJKMenu.so) +# 确保 main.cpp 存在于根目录 add_library(JKMenu SHARED main.cpp ${IMGUI_SRCS}) + +# 链接库文件 +# 注意:确保 libdobby.a 确实在项目根目录下 target_link_libraries(JKMenu ${CMAKE_CURRENT_SOURCE_DIR}/libdobby.a - android GLESv3 EGL vulkan log + android + GLESv3 + EGL + log ) +# 设置输出名称 set_target_properties(jk_injector PROPERTIES OUTPUT_NAME "jk_injector") -set_target_properties(JKMenu PROPERTIES OUTPUT_NAME "libJKMenu") +set_target_properties(JKMenu PROPERTIES OUTPUT_NAME "JKMenu") +# 上面这行会生成 libJKMenu.so