fix: grpc proto lib bug
This commit is contained in:
parent
058ea0f505
commit
0990b84cc8
@ -44,28 +44,33 @@ set(PROTO_IMPORT_DIR ${PROJECT_SOURCE_DIR}/protos)
|
||||
set(PROTO_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/_protobuf)
|
||||
file(MAKE_DIRECTORY ${PROTO_BINARY_DIR})
|
||||
file(GLOB_RECURSE PROTO_FILES ${PROTO_IMPORT_DIR}/*.proto)
|
||||
add_library(proto-objects OBJECT ${PROTO_FILES})
|
||||
message(STATUS "proto files will be loaded in ${PROTO_IMPORT_DIR}")
|
||||
message(STATUS "proto files will be generated in ${PROTO_BINARY_DIR}")
|
||||
|
||||
# 1) 先做 OBJECT:只负责生成/编译 pb.cc
|
||||
add_library(proto-objects OBJECT)
|
||||
target_sources(proto-objects PRIVATE ${PROTO_FILES})
|
||||
set_target_properties(proto-objects PROPERTIES POSITION_INDEPENDENT_CODE ON)
|
||||
|
||||
protobuf_generate(
|
||||
TARGET proto-objects
|
||||
IMPORT_DIRS ${PROTO_IMPORT_DIR}
|
||||
PROTOC_OUT_DIR ${PROTO_BINARY_DIR}
|
||||
USAGE_REQUIREMENT INTERFACE
|
||||
USAGE_REQUIREMENT PRIVATE
|
||||
)
|
||||
protobuf_generate(
|
||||
TARGET proto-objects
|
||||
LANGUAGE grpc
|
||||
GENERATE_EXTENSIONS .grpc.pb.h .grpc.pb.cc
|
||||
PLUGIN "protoc-gen-grpc=$ENV{HOME}/.local/bin/grpc_cpp_plugin"
|
||||
USAGE_REQUIREMENT INTERFACE
|
||||
IMPORT_DIRS ${PROTO_IMPORT_DIR}
|
||||
PROTOC_OUT_DIR ${PROTO_BINARY_DIR}
|
||||
USAGE_REQUIREMENT PRIVATE
|
||||
)
|
||||
target_include_directories(proto-objects PUBLIC ${PROTO_BINARY_DIR} ${PROTO_IMPORT_DIR})
|
||||
target_link_libraries(proto-objects PUBLIC protobuf::libprotobuf gRPC::grpc++ gRPC::grpc++_reflection)
|
||||
|
||||
# 2) 把 OBJECT 打包成一个“唯一的”共享库(关键)
|
||||
add_library(proto SHARED $<TARGET_OBJECTS:proto-objects>)
|
||||
target_include_directories(proto PUBLIC ${PROTO_BINARY_DIR} ${PROTO_IMPORT_DIR})
|
||||
target_link_libraries(proto PUBLIC protobuf::libprotobuf gRPC::grpc++ gRPC::grpc++_reflection)
|
||||
add_library(cmvr_es::proto ALIAS proto)
|
||||
############################################################
|
||||
# include
|
||||
############################################################
|
||||
@ -101,7 +106,7 @@ add_subdirectory(example)
|
||||
add_executable(cmvr_es src/main.cpp)
|
||||
target_include_directories(cmvr_es PRIVATE ${GLOG_INCLUDE_DIRS})
|
||||
target_link_libraries(cmvr_es PRIVATE
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
service
|
||||
${GLOG_LIBRARIES}
|
||||
gflags
|
||||
|
||||
@ -49,7 +49,7 @@
|
||||
<Motor id="21" jointName="L_WRIST_Y" limitQLb="3.14" limitQUb="3.14" limitQd="3.0"/>
|
||||
<Motor id="22" jointName="L_WRIST_R" limitQLb="3.14" limitQUb="3.14" limitQd="3.0"/>
|
||||
</LeftArmCan>
|
||||
<RightArmCan id = " " devId = " " channelId ="1" enable="true" toolFrame="R_FINGER_TIP">
|
||||
<RightArmCan id = " " devId = " " channelId ="1" enable="false" toolFrame="R_FINGER_TIP">
|
||||
<!-- <Motor id="16" jointName="R_SHOULDER_P" limitQLb="3.14" limitQUb="3.14" limitQd="3.0"/>-->
|
||||
<!-- <Motor id="17" jointName="R_SHOULDER_R" limitQLb="3.14" limitQUb="3.14" limitQd="3.0"/>-->
|
||||
<!-- <Motor id="18" jointName="R_SHOULDER_Y" limitQLb="3.14" limitQUb="3.14" limitQd="3.0"/>-->
|
||||
@ -58,8 +58,8 @@
|
||||
<Motor id="28" jointName="R_WRIST_Y" limitQLb="-1.102" limitQUb="1.02" limitQd="3.0"/>
|
||||
<!-- <Motor id="1" jointName="R_WRIST_R" limitQLb="-0.293" limitQUb="1.57079" limitQd="3.0"/>-->
|
||||
</RightArmCan>
|
||||
<HeadCan id = " " devId = " " channelId ="2" enable="false">
|
||||
<Motor id="32" jointName="HEAD_Y" limitQLb="3.14" limitQUb="3.14" limitQd="3.0"/>
|
||||
<HeadCan id = " " devId = " " channelId ="2" enable="true">
|
||||
<!-- <Motor id="32" jointName="HEAD_Y" limitQLb="3.14" limitQUb="3.14" limitQd="3.0"/>-->
|
||||
<Motor id="30" jointName="HEAD_P" limitQLb="3.14" limitQUb="3.14" limitQd="3.0"/>
|
||||
<Motor id="31" jointName="HEAD_R" limitQLb="3.14" limitQUb="3.14" limitQd="3.0"/>
|
||||
</HeadCan>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -29,7 +29,7 @@ target_link_libraries(moveJ PRIVATE
|
||||
cmvr_es::device::ti5motor
|
||||
cmvr_es::device::humanoid_robot
|
||||
pthread glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
ccd
|
||||
fcl
|
||||
cmvr_es::device_manager
|
||||
@ -43,7 +43,7 @@ target_link_libraries(torqueOff PRIVATE
|
||||
cmvr_es::device::ti5motor
|
||||
cmvr_es::device::humanoid_robot
|
||||
pthread glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
ccd
|
||||
fcl
|
||||
cmvr_es::device_manager
|
||||
@ -56,7 +56,7 @@ target_link_libraries(torqueOn PRIVATE
|
||||
cmvr_es::device::humanoid_robot
|
||||
pthread
|
||||
glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
ccd
|
||||
fcl
|
||||
cmvr_es::device_manager
|
||||
@ -73,7 +73,7 @@ target_link_libraries(robot_wrapper PRIVATE
|
||||
cmvr_es::device::humanoid_robot
|
||||
pthread
|
||||
glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
ccd
|
||||
fcl
|
||||
cmvr_es::device_manager
|
||||
|
||||
@ -19,7 +19,7 @@ target_link_libraries(controller PUBLIC
|
||||
gtest_main
|
||||
pthread
|
||||
glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
ccd
|
||||
fcl
|
||||
cmvr_es::device_manager
|
||||
|
||||
@ -40,7 +40,7 @@ target_link_libraries(realsense_camera_test
|
||||
gtest
|
||||
gtest_main
|
||||
pthread
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
ccd
|
||||
fcl
|
||||
${OpenCV_LIBS}
|
||||
|
||||
@ -13,10 +13,12 @@ add_library(cmvr_es::device::canbus ALIAS canbus)
|
||||
|
||||
target_link_libraries(canbus
|
||||
PRIVATE
|
||||
protobuf::libprotobuf
|
||||
cmvr_es::proto
|
||||
glog::glog
|
||||
# proto-objects
|
||||
# PUBLIC pcanbasic
|
||||
# protobuf::libprotobuf
|
||||
|
||||
## proto-objects
|
||||
## PUBLIC pcanbasic
|
||||
)
|
||||
|
||||
# --------------------------------------------------------
|
||||
@ -42,7 +44,7 @@ target_link_libraries(socket_can_client_raw_test
|
||||
gtest_main
|
||||
pthread
|
||||
glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
)
|
||||
|
||||
|
||||
@ -58,7 +60,7 @@ target_link_libraries(protocol_data_test
|
||||
gtest_main
|
||||
pthread
|
||||
glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
)
|
||||
|
||||
add_executable(message_manager_test
|
||||
@ -73,7 +75,7 @@ target_link_libraries(message_manager_test
|
||||
gtest_main
|
||||
pthread
|
||||
glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
)
|
||||
|
||||
|
||||
@ -89,7 +91,7 @@ target_link_libraries(can_sender_test
|
||||
gtest_main
|
||||
pthread
|
||||
glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
)
|
||||
|
||||
add_executable(can_receiver_test
|
||||
@ -104,7 +106,7 @@ target_link_libraries(can_receiver_test
|
||||
gtest_main
|
||||
pthread
|
||||
glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
)
|
||||
|
||||
|
||||
@ -120,5 +122,5 @@ target_link_libraries(pcan_client_test
|
||||
gtest_main
|
||||
pthread
|
||||
glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
)
|
||||
|
||||
@ -28,5 +28,5 @@ target_link_libraries(motor_manager_test
|
||||
gtest_main
|
||||
pthread
|
||||
glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
)
|
||||
|
||||
@ -48,7 +48,7 @@ target_link_libraries(motor_controller_test
|
||||
gtest_main
|
||||
pthread
|
||||
glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
)
|
||||
|
||||
|
||||
|
||||
@ -60,7 +60,7 @@ target_link_libraries(humanoid_robot_test
|
||||
gtest_main
|
||||
pthread
|
||||
glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
${OpenCV_LIBS}
|
||||
ccd
|
||||
fcl
|
||||
|
||||
@ -220,6 +220,11 @@ template<int DOF>
|
||||
void HumanoidRobot<DOF>::moveJ(std::vector<JointPoint> &cmd, double vel, double acc) {
|
||||
if (cmd.empty()) return;
|
||||
|
||||
for (auto c: cmd) {
|
||||
LOG(INFO) << c.joint_name << c.rad << endl;
|
||||
LOG(INFO) << vel << " "<< acc << endl;
|
||||
}
|
||||
|
||||
|
||||
// 1. 读当前关节角
|
||||
std::unordered_map<std::string, double> cur_joints_angle;
|
||||
|
||||
@ -60,7 +60,7 @@ target_link_libraries(srs_ik_test
|
||||
gtest_main
|
||||
pthread
|
||||
glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
Eigen3::Eigen
|
||||
OsqpEigen::OsqpEigen
|
||||
cmvr_es::utils
|
||||
@ -84,7 +84,7 @@ target_link_libraries(ik_test
|
||||
gtest_main
|
||||
pthread
|
||||
glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
|
||||
)
|
||||
|
||||
|
||||
@ -63,7 +63,7 @@ target_link_libraries(joint_space_planner_test
|
||||
gtest_main
|
||||
pthread
|
||||
glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
ccd
|
||||
fcl
|
||||
${OpenCV_LIBS}
|
||||
|
||||
@ -12,10 +12,8 @@ add_library(service
|
||||
target_include_directories(service PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
target_link_libraries(service PRIVATE
|
||||
proto-objects
|
||||
gRPC::grpc++
|
||||
protobuf::libprotobuf
|
||||
cmvr_es::device_manager
|
||||
cmvr_es::proto
|
||||
cmvr_es::device_manager
|
||||
cmvr_es::controller
|
||||
)
|
||||
|
||||
@ -54,7 +52,7 @@ target_link_libraries(grpc_humanoid_robot_client_test
|
||||
gtest_main
|
||||
pthread
|
||||
glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
ccd
|
||||
fcl
|
||||
cmvr_es::device_manager
|
||||
@ -62,8 +60,6 @@ target_link_libraries(grpc_humanoid_robot_client_test
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
add_executable(grpc_hlc_client_test
|
||||
src/grpc_hlc_client_test.cpp
|
||||
)
|
||||
@ -78,7 +74,7 @@ target_link_libraries(grpc_hlc_client_test
|
||||
gtest_main
|
||||
pthread
|
||||
glog::glog
|
||||
proto-objects
|
||||
cmvr_es::proto
|
||||
ccd
|
||||
fcl
|
||||
cmvr_es::device_manager
|
||||
|
||||
Loading…
Reference in New Issue
Block a user