Моя программа анализа данных (на основе C++) отлично работает на OpenSUSE. Но когда я использую его в своем ноутбуке, работающем под Ubuntu 12.04. Он показывает следующую ошибку:
ent$ make
g++ -g -o FBBA FBBA.o libFBBAnal.so -L../FBRun libFBRun.so\
-L/usr/local/root/lib -lRint -L/usr/local/root/lib -lGui -lCore -lCint -lRIO -lNet -lHist -lGraf -lGraf3d -lGpad -lTree -lRint -lPostscript -lMatrix -lPhysics -lMathCore -lThread -pthread -lm -ldl -rdynamic -m64 -L/usr/local/root/lib -lCore -lCint -lRIO -lNet -lHist -lGraf -lGraf3d -lGpad -lTree -lRint -lPostscript -lMatrix -lPhysics -lMathCore -lThread -pthread -lm -ldl -rdynamic -lGpad -lHist -lGraf -lGraf3d -lTree -lRint -lPostscript -lMatrix -lPhysics -lMathCore -lRIO -lNet -lThread -lCore -lCint -pthread -lm -ldl -rdynamic -lTMVA -lMinuit -lXMLIO -lMLP -lTreePlayer -L/usr/lib64/ -lstdc++
libFBBAnal.so: undefined reference to 'TCanvas::TCanvas(char const*, char const*, int, int, int, int)'
collect2: ld returned 1 exit status
make: *** [FBBA] Error 1er code here
Мои исследования в Интернете показывают, что это можно решить, изменив порядок библиотек в командной строке (до модуля). Но у меня есть Makefile, где показаны все эти команды. И я плохо разбираюсь в кодировании. Помоги пожалуйста !
Я решил проблему, это была проблема связывания библиотеки Ubuntu, как и ожидалось. Мне пришлось вручную поместить библиотеки в конец строки, где появилась ошибка. !