У меня есть следующие файлы на моем компьютере.
/lib64/libm.so.6
/usr/lib64/libm.so
но когда я связываюсь со следующим, я получаю ошибки
$ g++ -L/usr/lib64 -O3 -static -Wall -Wno-char-subscripts -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -IMSToolkit/include Comet.o Threading.o CometSearch.o CometPreprocess.o CometPostAnalysis.o CometMassSpecUtils.o CometWriteOut.o CometWriteSqt.o CometWritePepXML.o -LMSToolkit -lmstoolkitlite -o comet.exe
/usr/bin/ld: cannot find -lm
collect2: ld returned 1 exit status
$
Кто-нибудь знает почему?
Да. Вы пытаетесь связать статический исполняемый файл без общих библиотек — библиотеки, которыми вы пользуетесь, являются общими .so
расширение — вам нужно установить libm.a
Либо удалите -static
вариант или установить .a
версии библиотеки
Других решений пока нет …