C ++: ошибка компиляции - «таблица .eh_frame_hdr не будет created »

Я должен использовать программу анализа данных для физического эксперимента. Однако я не могу его скомпилировать.

Код старый, не совсем совместим с текущими версиями GCC, насколько я могу найти. Чтобы немного усложнить задачу, я получил код от парня, который модифицировал все make-файлы, чтобы он компилировался на Mac. У меня нет опыта работы с C ++, но с помощью man-страниц, Google и терпения я исправил много ошибок в пути, но я застрял на этой, даже после недели попыток и поиска в Google.

Я считаю соответствующее сообщение об ошибке выглядит следующим образом:

/usr/bin/ld: error in /home/daniel/skola/exjobb/miniballscripts
/lib/libCommandLineInterface.so(.eh_frame); no .eh_frame_hdr table will be created.`

В чем может быть причина и что можно исправить?

libCommandLineInterface.so был скомпилирован мной раньше без каких-либо явных сообщений об ошибках:

$ make  
g++ -g2 -O2 -I./ -c CommandLineInterface.cc -o CommandLineInterface.o  
g++ -g  -Wl -o /home/daniel/skola/exjobb/miniballscripts/lib/libCommandLineInterface.so
CommandLineInterface.o -lm -L/home/daniel/skola/exjobb/miniballscripts/lib -lgcc -lc  
Done

My g ++ -версия g ++ (Ubuntu 4.4.3-4ubuntu5) 4.4.3 , amd64.

Как я уже сказал, у меня нет опыта работы с C ++, так что, возможно, мои наивные модификации Makefile что-то разрушили. Из-за отсутствия опыта я также не знаю, какая еще информация нужна мне, чтобы помочь мне, но я буду рад ответить.

6
задан jww 17 May 2017 в 03:09
поделиться