linghu8812 / tensorrt_inference

699 stars 205 forks source link

acrface make error:YAML::LoadFile(std::string const&)Reference not defined #112

Open create-li opened 2 years ago

create-li commented 2 years ago

Compiling environment

Linux version 3.10.0-957.el7.x86_64
GCC 5.4
TensorRT-7.0.0.11/
CUDA 10.0 

CMake Infos:

 `set(COMMON_INCLUDE ../includes/common)
set(YAML_INCLUDE ../includes/yaml-cpp/include)
set(YAML_LIB_DIR ../includes/yaml-cpp/libs)

include_directories(${CUDA_INCLUDE_DIRS} ${TENSORRT_INCLUDE_DIR} ${OpenCV_INCLUDE_DIRS} ${COMMON_INCLUDE} ${YAML_INCLUDE})
link_directories(${YAML_LIB_DIR})
add_executable(arcface_trt main.cpp arcface.cpp)
target_link_libraries(arcface_trt ${OpenCV_LIBRARIES} ${CUDA_LIBRARIES} ${TENSORRT_LIBRARY} yaml-cpp`

Error Infos: CMakeFiles/arcface_trt.dir/arcface.cpp.o:在函数‘ArcFace::ArcFace(std::string const&)’中: arcface.cpp:(.text+0xef1):对‘YAML::LoadFile(std::string const&)’未定义的引用 CMakeFiles/arcface_trt.dir/arcface.cpp.o:在函数‘YAML::Exception::Exception(YAML::Mark const&, std::string const&)’中: arcface.cpp:(.text._ZN4YAML9ExceptionC2ERKNS_4MarkERKSs[_ZN4YAML9ExceptionC5ERKNS_4MarkERKSs]+0x52):对‘vtable for YAML::Exception’未定义的引用 CMakeFiles/arcface_trt.dir/arcface.cpp.o:在函数‘YAML::RepresentationException::RepresentationException(YAML::Mark const&, std::string const&)’中: arcface.cpp:(.text._ZN4YAML23RepresentationExceptionC2ERKNS_4MarkERKSs[_ZN4YAML23RepresentationExceptionC5ERKNS_4MarkERKSs]+0x32):对‘vtable for YAML::RepresentationException’未定义的引用 CMakeFiles/arcface_trt.dir/arcface.cpp.o:在函数‘YAML::InvalidNode::InvalidNode(std::string)’中: arcface.cpp:(.text._ZN4YAML11InvalidNodeC2ESs[_ZN4YAML11InvalidNodeC5ESs]+0x5f):对‘vtable for YAML::InvalidNode’未定义的引用 CMakeFiles/arcface_trt.dir/arcface.cpp.o:在函数‘YAML::BadConversion::BadConversion(YAML::Mark const&)’中: arcface.cpp:(.text._ZN4YAML13BadConversionC2ERKNS_4MarkE[_ZN4YAML13BadConversionC5ERKNS_4MarkE]+0x68):对‘vtable for YAML::BadConversion’未定义的引用 CMakeFiles/arcface_trt.dir/arcface.cpp.o:在函数‘YAML::detail::memory_holder::create_node()’中: arcface.cpp:(.text._ZN4YAML6detail13memory_holder11create_nodeEv[_ZN4YAML6detail13memory_holder11create_nodeEv]+0x1c):对‘YAML::detail::memory::create_node()’未定义的引用 CMakeFiles/arcface_trt.dir/arcface.cpp.o:在函数‘YAML::detail::node_ref::mark_defined()’中: arcface.cpp:(.text._ZN4YAML6detail8node_ref12mark_definedEv[_ZN4YAML6detail8node_ref12mark_definedEv]+0x1c):对‘YAML::detail::node_data::mark_defined()’未定义的引用 CMakeFiles/arcface_trt.dir/arcface.cpp.o:在函数‘YAML::detail::node_ref::set_null()’中: arcface.cpp:(.text._ZN4YAML6detail8node_ref8set_nullEv[_ZN4YAML6detail8node_ref8set_nullEv]+0x1c):对‘YAML::detail::node_data::set_null()’未定义的引用 I recompiled yaml-cpp and generated libyam-cpp.a, but the same error still occurred.