gpt4 book ai didi

linux - 构建 PostgreSQL 时出现链接器错误 "undefined reference to SSL_get_peer_certificate"

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:43:13 25 4
gpt4 key购买 nike

我正在尝试编译 PCL 1.8 并收到以下错误:

/usr/lib/x86_64-linux-gnu/libpq.so.5: undefined reference to `SSL_get_peer_certificate@OPENSSL_1.0.0'
/usr/lib/libvtkIO.so.5.10.1: undefined reference to `TIFFReadDirectory@LIBTIFF_4.0'

如果我列出 /usr/lib/x86_64-linux-gnu/libpq.so.5 的依赖项,我会得到 libssl.so.1.0.0 =>/lib/x86_64 -linux-gnu/libssl.so.1.0.0,即 readelf -h/lib/x86_64-linux-gnu/libssl.so.1.0.0 | grep 类\|文件\|机器':

Class:                             ELF64
Machine: Advanced Micro Devices X86-64

但是,我似乎安装了更多的 libpq 版本:

/home/t/anaconda2/lib/libssl.so.1.0.0
/home/t/anaconda2/pkgs/openssl-1.0.2j-0/lib/libssl.so.1.0.0
/home/t/matlab/R2015a/bin/glnxa64/libssl.so.1.0.0
/lib/i386-linux-gnu/libssl.so.1.0.0
/lib/x86_64-linux-gnu/libssl.so.1.0.0

/lib/i386-linux-gnu/libssl.so.1.0.0

Class:                             ELF32
Machine: Intel 80386

和:

[ 12%] Linking CXX executable  ../../bin/pcl_convert_pcd_ascii_binary
cd /pcl/build/io/tools && /usr/bin/cmake -E cmake_link_script CMakeFiles/pcl_con
vert_pcd_ascii_binary.dir/link.txt --verbose=1
/usr/bin/c++ -std=c++11 -pthread -fopenmp -Wno-deprecated -O2 -g -DNDEB
UG CMakeFiles/pcl_convert_pcd_ascii_binary.dir/convert_pcd_ascii_binary.cpp.o
-o ../../bin/pcl_convert_pcd_ascii_binary -rdynamic -lboost_system -lboost_fil
esystem -lboost_thread -lboost_date_time -lboost_iostreams -lboost_chrono -lboos
t_atomic -lboost_regex -lpthread -lpthread -lm ../../lib/libpcl_io.so.1.8.0 ../.
./lib/libpcl_common.so.1.8.0 ../../lib/libpcl_io_ply.so.1.8.0 -lboost_system -lb
oost_filesystem -lboost_thread -lboost_date_time -lboost_iostreams -lboost_chron
o -lboost_atomic -lboost_regex -lpthread /usr/lib/libvtkGenericFiltering.so.5.10
.1 /usr/lib/libvtkGeovis.so.5.10.1 -lm /usr/lib/libvtkCharts.so.5.10.1 /usr/lib/
libvtkViews.so.5.10.1 /usr/lib/libvtkInfovis.so.5.10.1 /usr/lib/libvtkWidgets.so
.5.10.1 /usr/lib/libvtkVolumeRendering.so.5.10.1 /usr/lib/libvtkHybrid.so.5.10.1
/usr/lib/libvtkParallel.so.5.10.1 /usr/lib/libvtkRendering.so.5.10.1 /usr/lib/l
ibvtkImaging.so.5.10.1 /usr/lib/libvtkGraphics.so.5.10.1 /usr/lib/libvtkIO.so.5.
10.1 /usr/lib/libvtkFiltering.so.5.10.1 /usr/lib/libvtkCommon.so.5.10.1 -lm /usr
/lib/libvtksys.so.5.10.1 -ldl /anaconda2/lib/libpng.so /anaconda2/lib/libz.so -l
usb-1.0 -Wl,-rpath,/pcl/build/lib:/usr/lib/openmpi/lib:/anaconda2/lib: -Wl,-rpat
h-link,/usr/lib/openmpi/lib
//usr/lib/x86_64-linux-gnu/libpq.so.5: undefined reference to `SSL_get_peer_cert
ificate@OPENSSL_1.0.0'

猜猜/anaconda2/lib 不应该在那里?

我如何确保 CMake 链接到正确的版本(并删除错误的版本)?

最佳答案

我设法编译它从 PATH 中删除 anaconda,并在 cmake-gui 中将所有具有 anaconda 路径的值更改为 lib/x86_64-linux-gnu/

关于linux - 构建 PostgreSQL 时出现链接器错误 "undefined reference to SSL_get_peer_certificate",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40400274/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com