modbus-plugin/CMakeList.txt
2025-02-18 18:35:43 +08:00

52 lines
1.5 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

cmake_minimum_required(VERSION 3.0)
project(modbus_plugin)
# 设置编译选项
set(CMAKE_C_STANDARD 99)
set(CMAKE_C_FLAGS "-Wall -fPIC")
# Arkime 安装目录(根据你的实际情况修改)
set(ARKIME_PREFIX /opt/arkime)
# libmodbus 安装目录(指向你手动编译安装的 Libmodbus 目录)
set(LIBMODBUS_PREFIX /path/to/your/static/libmodbus)
# GLib 安装目录
# 方法1 直接指定glibconfig.h所在的目录的上一级
#set(GLIB_INCLUDE_DIR /usr/lib/glib-2.0/include) # 假设 glibconfig.h 在 /usr/lib/glib-2.0/include 目录下
# 方法2 更精确地指定所有需要的GLib头文件目录确保万无一失
include_directories(
/usr/include/glib-2.0
/usr/lib/x86_64-linux-gnu/glib-2.0/include
)
# Jansson 安装目录 (根据你的实际情况修改, 如果需要)
# 可以在 /usr/include 或 /usr/local/include 中尝试
# 如果找不到 jansson.h , 先安装 libjansson-dev
# sudo apt-get install libjansson-dev
set(JANSSON_INCLUDE_DIR /usr/include)
# 包含头文件
include_directories(
${ARKIME_PREFIX}/include
${LIBMODBUS_PREFIX}/include
#${GLIB_INCLUDE_DIR} # 注释掉使用更精确的include目录
${JANSSON_INCLUDE_DIR}
)
# 源文件
set(SOURCE_FILES
src/modbus_plugin.c
)
# 创建共享库
add_library(modbus_plugin SHARED ${SOURCE_FILES})
# 设置链接选项,强制静态链接 libmodbus
target_link_libraries(modbus_plugin
-L${LIBMODBUS_PREFIX}/lib -lmodbus -lm -lglib-2.0 -ljansson
)
# 设置安装目录和目标
install(TARGETS modbus_plugin DESTINATION /opt/arkime/plugins)