![ld 앞에 있는 도서관을 찾을 수 없습니다](https://linux55.com/image/168073/ld%20%EC%95%9E%EC%97%90%20%EC%9E%88%EB%8A%94%20%EB%8F%84%EC%84%9C%EA%B4%80%EC%9D%84%20%EC%B0%BE%EC%9D%84%20%EC%88%98%20%EC%97%86%EC%8A%B5%EB%8B%88%EB%8B%A4.png)
diesel
on 을 포함하는 Rust 프로그램을 빌드하려고 하는데 postgresql
링커 Fedora 31
가 찾을 수 없기 때문에 빌드가 실패합니다 libpq
. 재현할 수 있기 때문에 질문을 단축하기 위해 gcc
사용했습니다 .gcc
gcc -L /lib64 -lpq
/usr/bin/ld: cannot find -lpq
ls /lib64 | grep libpq
libpq.so.5
libpq.so.5.11
ldd /lib64/libpq.so.5
linux-vdso.so.1 (0x00007ffc06ddd000)
libssl.so.1.1 => /usr/lib64/libssl.so.1.1 (0x00007f4885ea7000)
libcrypto.so.1.1 => /usr/lib64/libcrypto.so.1.1 (0x00007f4885bc7000)
libgssapi_krb5.so.2 => /usr/lib64/libgssapi_krb5.so.2 (0x00007f4885b75000)
libldap_r-2.4.so.2 => /usr/lib64/libldap_r-2.4.so.2 (0x00007f4885b1d000)
libpthread.so.0 => /usr/lib64/libpthread.so.0 (0x00007f4885afb000)
libc.so.6 => /usr/lib64/libc.so.6 (0x00007f4885932000)
libz.so.1 => /usr/lib64/libz.so.1 (0x00007f4885916000)
libdl.so.2 => /usr/lib64/libdl.so.2 (0x00007f488590f000)
libkrb5.so.3 => /usr/lib64/libkrb5.so.3 (0x00007f488581e000)
libk5crypto.so.3 => /usr/lib64/libk5crypto.so.3 (0x00007f4885805000)
libcom_err.so.2 => /usr/lib64/libcom_err.so.2 (0x00007f48857fe000)
libkrb5support.so.0 => /usr/lib64/libkrb5support.so.0 (0x00007f48857ec000)
libkeyutils.so.1 => /usr/lib64/libkeyutils.so.1 (0x00007f48857e3000)
libresolv.so.2 => /usr/lib64/libresolv.so.2 (0x00007f48857ca000)
liblber-2.4.so.2 => /usr/lib64/liblber-2.4.so.2 (0x00007f48857b9000)
libsasl2.so.3 => /usr/lib64/libsasl2.so.3 (0x00007f4885799000)
/lib64/ld-linux-x86-64.so.2 (0x00007f4885f8c000)
libselinux.so.1 => /usr/lib64/libselinux.so.1 (0x00007f488576c000)
libcrypt.so.2 => /usr/lib64/libcrypt.so.2 (0x00007f488572f000)
libpcre2-8.so.0 => /usr/lib64/libpcre2-8.so.0 (0x00007f488569d000)
예를 들어, libpthread도 포함되어 lib64
있으며 찾을 수 있습니다.
gcc -L /lib64 -lpthread
/usr/bin/ld: /usr/lib/gcc/x86_64-redhat-linux/9/../../../../lib64/crt1.o: in function `_start':
제가 뭔가를 놓치고 있는 걸까요, 아니면 보통 바로 찾아야 합니까?
답변1
-lpq
libpq.so
링커가 soname 접미사가 없는 항목을 찾도록 합니다 . Fedora에서 이 기능을 제공하려면 다음을 설치해야 합니다 libpq-devel
.
sudo dnf install libpq-devel