vsftpdをコンパイルしていますが、次のエラーが発生し続けます。
[alex@lab vsftpd-3.0.3]$ make
gcc -o vsftpd main.o utility.o prelogin.o ftpcmdio.o postlogin.o \
privsock.o tunables.o ftpdataio.o secbuf.o ls.o postprivparent.o logging.o \
str.o netstr.o sysstr.o strlist.o banner.o filestr.o parseconf.o secutil.o \
ascii.o oneprocess.o twoprocess.o privops.o standalone.o hash.o tcpwrap.o \
ipaddrparse.o access.o features.o readwrite.o opts.o ssl.o sslslave.o \
ptracesandbox.o ftppolicy.o sysutil.o sysdeputil.o seccompsandbox.o \
-Wl,-s -fPIE -pie -Wl,-z,relro -Wl,-z,now
./vsf_findlibs.sh
/usr/bin/ld: cannot find -lcap
collect2: error: ld returned 1 exit status
make: *** [vsftpd] Error 1
libpcap 1.9.0をインストールしましたが、エラーが解決しません。
答え1
ソースからコードを書くので、バージョンのlibcap.so
ない共有ライブラリが必要です。これは通常、そのパッケージの一部として提供されます-devel
。パッケージ名がわからない場合は、次のコマンドを実行できます。
sudo yum install /usr/lib64/libcap.so
この場合、答えはパッケージをインストールするだけですlibcap-devel
。
sudo yum install libcap-devel