Gfortran неопределенные ссылки

Я пытаюсь скомпилировать программу, которая зависит от многих вещей.
Я использую и изменяю предоставленный make-файл, чтобы он соответствовал настройкам моего компьютера, но я продолжаю получать множество неопределенных ссылок на последнем этапе компиляции.

Командная строка, которая вызывает проблемы:

gfortran -o ../cosmomc ParamNames.o Matrix_utils.o  settings.o IO.o cmbtypes.o Planck_like.o cmbdata.o WeakLen.o &
bbn.o lrggettheory.o mpk.o bao.o supernovae.o HST.o SDSSLy-a-v3.o CMB_Cls_simple.o paramdef.o propose.o params_CMB.o &
calclike.o EstCovmat.o PowellConstrainedMinimize.o minimize.o postprocess.o MCMC.o driver.o /home/darkside/tesis/CosmoMc &
/likelihood_v4p1/read_archive_map.o /home/darkside/tesis/CosmoMc/likelihood_v4p1/read_fits.o /home/darkside/tesis/CosmoMc/likelihood_v4p1/healpix_types.o /home/darkside/tesis &
/CosmoMc/likelihood_v4p1/WMAP_7yr_options.o /home/darkside/tesis/CosmoMc/likelihood_v4p1/WMAP_7yr_util.o /home/darkside/tesis &
/CosmoMc/likelihood_v4p1/WMAP_7yr_tt_pixlike.o /home/darkside/tesis/CosmoMc/likelihood_v4p1/WMAP_7yr_teeebb_pixlike.o /home/darkside/tesis/CosmoMc &
/likelihood_v4p1/WMAP_7yr_likelihood.o /home/darkside/tesis /CosmoMc/likelihood_v4p1/WMAP_7yr_gibbs.o /home/darkside/tesis &
/CosmoMc/likelihood_v4p1/WMAP_7yr_tt_beam_ptsrc_chisq.o /home/darkside/tesis/CosmoMc/likelihood_v4p1/br_mod_dist.o &

-L../camb -lcamb_cosmorec -lblas -llapack -L/usr/lib/gcc &
/i686-linux-gnu/4.4/ -lstdc++ -L../CosmoRec -lCosmoRec &
-L/usr/lib -lgsl -lgslcblas  -L/usr/lib/i386-linux/gnu/lib &
-L/home/darkside/tesis/CosmoMc/likelihood_v4p1 -lcfitsio &
-DMATRIX_SINGLE -O3 -fopenmp -ffree-form -x f95-cpp-input  &
-ffast-math -march=native -funroll-loops -DCOSMOREC -I../camb &
-I/usr/lib/i386-linux/gnu/include -I/home/darkside/tesis/CosmoMc/likelihood_v4p1

И некоторые ошибки:

../CosmoRec/libCosmoRec.a(CosmoRec.o): In function `__tcf_0':
CosmoRec.cpp:(.text+0xb): undefined reference to `std::basic_string<char, std::char_traits<char>,
std::allocator<char> >::~basic_string()'
CosmoRec.cpp:(.text+0x17): undefined reference to `std::basic_string<char, std::char_traits<char>,
std::allocator<char> >::~basic_string()'
../CosmoRec/libCosmoRec.a(CosmoRec.o): In function `__tcf_1':
CosmoRec.cpp:(.text+0x47): undefined reference to `std::basic_string<char, std::char_traits<char>,
std::allocator<char> >::~basic_string()'
../CosmoRec/libCosmoRec.a(CosmoRec.o): In function `std::_Vector_base<double, std::allocator<double>
>::_M_deallocate(double*, unsigned int) [clone .isra.76]':

Все они находятся в пакете, скомпилированном в g ++, поэтому я думаю, что проблема может заключаться в флаге lstdc ++. Я пытался добавить полный путь к библиотеке и другие параметры, но это не работает.

Любая помощь будет действительно устаревшей.

С Уважением,
Илла

1

Решение

Вы пытались положить -lstdc++ в го конец команды link? Это должно прийти после любые объекты и библиотеки, которые зависят от него.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]