From f9fd3cc12ace573e502f0a8c708eae130af66935 Mon Sep 17 00:00:00 2001 From: Mrtutu Date: Tue, 10 Jun 2025 17:16:06 +0800 Subject: [PATCH] fix ssl so --- msmonitor/README.md | 2 +- msmonitor/dynolog_npu/CMakeLists.txt | 1 + .../dynolog_npu/dynolog/src/rpc/CMakeLists.txt | 17 ++++++++++++++++- 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/msmonitor/README.md b/msmonitor/README.md index 57c0ba5b1..cc8221e8d 100644 --- a/msmonitor/README.md +++ b/msmonitor/README.md @@ -71,7 +71,7 @@ sudo apt-get install -y openssl # centos sudo yum install -y openssl ``` -dyno CLI与dynolog daemon之间的RPC通信使用TLS证书密钥加密,在启动dyno和dynlog二进制时需要指定证书密钥存放的路径,路径下需要满足如下结构和名称。 +dyno CLI与dynolog daemon之间的RPC通信使用TLS证书密钥加密,在启动dyno和dynolog二进制时需要指定证书密钥存放的路径,路径下需要满足如下结构和名称。 **用户应使用与自己需求相符的密钥生成和存储机制,并保证密钥安全性与机密性。** 服务端证书目录结构: ```bash diff --git a/msmonitor/dynolog_npu/CMakeLists.txt b/msmonitor/dynolog_npu/CMakeLists.txt index d0da4c68f..4ea2f0a67 100644 --- a/msmonitor/dynolog_npu/CMakeLists.txt +++ b/msmonitor/dynolog_npu/CMakeLists.txt @@ -78,6 +78,7 @@ target_link_libraries(dynolog_lib PUBLIC pfs) add_subdirectory(third_party/fmt) target_link_libraries(dynolog_lib PUBLIC fmt::fmt) +set(Protobuf_USE_STATIC_LIBS ON) add_subdirectory(third_party/tensorboard_logger) target_include_directories(dynolog_lib PUBLIC third_party/tensorboard_logger/include) target_link_libraries(dynolog_lib PUBLIC tensorboard_logger) diff --git a/msmonitor/dynolog_npu/dynolog/src/rpc/CMakeLists.txt b/msmonitor/dynolog_npu/dynolog/src/rpc/CMakeLists.txt index a0b74f82c..988a2c545 100644 --- a/msmonitor/dynolog_npu/dynolog/src/rpc/CMakeLists.txt +++ b/msmonitor/dynolog_npu/dynolog/src/rpc/CMakeLists.txt @@ -1,5 +1,14 @@ # Copyright (c) Meta Platforms, Inc. and affiliates. + +# 设置OpenSSL静态链接 +set(OPENSSL_USE_STATIC_LIBS TRUE) +set(OPENSSL_MSVC_STATIC_RT TRUE) + +# 查找OpenSSL静态库 find_package(OpenSSL REQUIRED) +if(NOT OPENSSL_LIBRARIES) + message(FATAL_ERROR "OpenSSL libraries not found") +endif() add_library(dynolog_rpc_lib STATIC SimpleJsonServer.cpp SimpleJsonServer.h @@ -17,4 +26,10 @@ target_link_libraries(dynolog_rpc_lib PUBLIC gflags::gflags) target_link_libraries(dynolog_rpc_lib PUBLIC glog::glog) target_link_libraries(dynolog_rpc_lib PUBLIC nlohmann_json::nlohmann_json) target_link_libraries(dynolog_rpc_lib PUBLIC fmt::fmt) -target_link_libraries(dynolog_rpc_lib PRIVATE OpenSSL::SSL OpenSSL::Crypto) \ No newline at end of file + +# 静态链接OpenSSL +target_link_libraries(dynolog_rpc_lib PRIVATE + -Wl,--whole-archive + ${OPENSSL_LIBRARIES} + -Wl,--no-whole-archive +) \ No newline at end of file -- Gitee