#c #ld
#c #ld
Вопрос:
Я пытаюсь скомпилировать некоторый код на C, который я унаследовал от коллеги. Я сталкиваюсь с некоторыми проблемами с отсутствующими библиотеками, то есть вывод make
gcc -L. -L/lib -L/lib -L/lib -L/lib64 -o gnd2fmdpara gnd2fmdpara.o git_version.o -lfmd -lnumerics -lmisc -llapack -lblas -lgfortran -lm -lz
/usr/bin/ld: cannot find -llapack
/usr/bin/ld: cannot find -lblas
/usr/bin/ld: skipping incompatible /lib/libm.so when searching for -lm
Я поместил библиотеки, в которых находятся файлы LAPACK и BLAS, в PATH, и, что важно, LD_LIBRARY_PATH, но все равно выдает ту же ошибку.
Может кто-нибудь подсказать мне, как я могу помочь моему Makefile найти недостающие библиотеки? Большое вам спасибо!
Комментарии:
1. Похоже, у вас проблема с
gcc
установкой.2. Фух! Спасибо, @Eugene_Sh. Это было удивительно быстро! Есть идеи, какие проблемы?
3. Я вижу, что ваша математическая библиотека, как утверждается, несовместима. Попробуйте переустановить gcc, glibc и друзей.
4. Нет, подождите. Это может быть связано с тем, что вы пытаетесь связать некоторые предварительно скомпилированные файлы * .o, которые, вероятно, были скомпилированы с использованием других настроек. Посмотрите здесь .
5. Вау! Это имеет смысл! Это именно то, что я делаю. Я попробую перекомпилировать файлы .o в этой текущей системе и посмотрю, как это получится. Большое спасибо за потрясающую ссылку.