在 Linux 中尝试编译时出错

在 Linux 中尝试编译时出错

我正在尝试编译tss检查器来自 GitHub,遇到了问题。我检查并安装了所有依赖项,然后成功运行了autogen.sh脚本,没有出现问题。

我现在尝试运行make但出现以下错误:

root@raspberrypi:/home/pi/tss/tsschecker-master/git/tsschecker# make
make  all-recursive
make[1]: Entering directory '/home/pi/tss/tsschecker-master/git/tsschecker'
Making all in tsschecker
make[2]: Entering directory '/home/pi/tss/tsschecker-master/git/tsschecker/tsschecker'
/bin/bash ../libtool  --tag=CC   --mode=link gcc -I/usr/local/include -I/usr/local/include -I/usr/include/arm-linux-gnueabihf -I/usr/include/arm-linux-gnueabihf  -I/usr/local/include -I/usr/include/libusb-1.0  -I../external/jssy/jssy/ -g -O2 -std=c11 -D TSSCHECKER_VERSION_COUNT=\"304\" -D TSSCHECKER_VERSION_SHA=\"b9d193aa6e6d24421094873c830692d02d8b32f5\" -L/usr/local/lib -lplist -L/usr/local/lib -lfragmentzip -lcurl -lzip -lz -lcurl -lcrypto -L/usr/local/lib -lirecovery -lm  -o tsschecker tsschecker-tsschecker.o tsschecker-tss.o tsschecker-download.o tsschecker-main.o -L/usr/local/lib -lplist -L/usr/local/lib -lfragmentzip -lcurl -lzip -lz -lcurl -lcrypto -L/usr/local/lib -lirecovery -lm libjssy.a
libtool:   error: cannot find the library '/usr/lib/x86_64-linux-gnu/libcurl.la' or unhandled argument '/usr/lib/x86_64-linux-gnu/libcurl.la'
make[2]: *** [Makefile:527: tsschecker] Error 1
make[2]: Leaving directory '/home/pi/tss/tsschecker-master/git/tsschecker/tsschecker'
make[1]: *** [Makefile:410: all-recursive] Error 1
make[1]: Leaving directory '/home/pi/tss/tsschecker-master/git/tsschecker'
make: *** [Makefile:342: all] Error 2

我尝试重新安装 curl,但似乎没有帮助。它/usr/lib/x86_64-linux-gnu查找的目录不存在。

我对 Linux 这方面还很陌生,因此如果这里的任何内容没有意义,我深感抱歉。

答案1

所有内容都写在 README 中。无论如何,你需要 libcurl.la

libtool:   error: cannot find the library '/usr/lib/x86_64-linux-gnu/libcurl.la' or unhandled argument '/usr/lib/x86_64-linux-gnu/libcurl.la'

您需要 libcurl3(这是依赖项),然后您应该使用以下命令安装它:

$ sudo apt install libcurl3

如果你对 libcurl 版本有疑问,请按照这些说明 如果 make 需要其他库/文件,您需要按以下方式在 ubuntu/debian 数据库中搜索:

$ sudo apt install apt-file
$ sudo apt-file update
$ apt-file search my_library_to_search

这里 apt-file 会告诉你包含所需文件的软件包,从这里你需要安装所需的软件包,然后继续 make。无论如何,依赖项都在 readme 中:

libcurl
libplist
libfragmentzip
openssl or commonCrypto on macOS/OS X;
libirecovery

相关内容