在c++项目中引用python3.7 ,然而在centos7 使用cmake 乘车build 目录后make编译时无法识别一些基础库函数。
其中python3.7 使用源码安装在/usr/local/python3,起初以为编译过程中python3 编译出错问题所致,然而多次重编译后安装,问题同样存在。
后追踪源码等一系列XXOO后发现os_openpty_impl等函数就对标准库中openpty等的使用,而这些标准库函数时编译在libutlil.so 中,故可能是python3使用了标准库是连接问题所在, 进而在项目的编译脚本中添加如下,项目连接时自行去连接 libutil.so 库,问题解决!
target_link_libraries(server_process "-lutil")
set(CMAKE_MODULE_LINKER_FLAGS "-lutil")