2016-06-22 2 views
0

Когда я компиляции моего проекта, составитель бросил это сообщение:лязг: ошибка: нет такой ошибки файла или каталога

if (. != ".") /bin/mv math3dgraphics.o . 

ar rcv ./mathtools.a ./mathtools.o ./matrix.o ./matrixtools.o ./pscmds.o ./pccurvecmds.o ./math3dgraphics.o 
r - ./mathtools.o 
r - ./matrix.o 
r - ./matrixtools.o 
r - ./pscmds.o 
r - ./pccurvecmds.o 
r - ./math3dgraphics.o 
ranlib ./mathtools.a 
/usr/bin/gcc -g -o -I/opt/X11/include xrna xrna.o xrnainit.o xrnatools.o xrnadisplay.o xrnamenu.o xrnalabels.o xrnalw.o xrnasstr.o xrnapccurve.o xrnatube.o xrnassymbols.o xrnatstr.o xrnabasepair.o xrnacon.o xrnathred.o xrnacolorwidget.o xrnastred.o xrnainquire.o tdhrefnuc.o xrnabuttonmenu.o grplinebuttonlist.o grplinefnclist.o grpparallelogrambuttonlist.o grpparallelogramfnclist.o grptextbuttonlist.o grptextfnclist.o grptrianglebuttonlist.o grptrianglefnclist.o grparcbuttonlist.o grparcfnclist.o grparrowbuttonlist.o grparrowfnclist.o transformbuttonlist.o transformfnclist.o xrnaprintbuttonlist.o xrnaprintfnclist.o xrnagraphics.o xrnaneutronmap.o xrnaalign.o helixtools.o helixio.o helixarc.o ./botif.a ./mathtools.a -DMATHHFILE='"./mathtools.h"' -L/opt/X11/lib -lX11 -lm -lg -lc -I/opt/X11/include 
clang: error: no such file or directory: 'xrna' 

make[1]: *** [install] Error 1 

make: *** [xrna] Error 2 

Что получить меня путают, что xrna это исполняемый файл должен быть создан, но почему компилятор говорят, что это пропало?

+3

Попробуйте заменить '-I/opt/X11/include' и' xrna', то есть '/ usr/bin/gcc -g -o xrna -I/opt/X11/include xrna.o ...'. – s7amuser

+1

Параметр '-o' сразу же следует за именем выходного файла; вы выбрали выход для '-I/opt/X11/include' (который довольно эксцентричный как имя файла), и вы сказали, что один из файлов, с которым он должен работать (как вход), называется' xrna '. Если вы уже скомпилировали программу, у вас будет другая ошибка, но командная строка будет не хуже. Вам нужен '-o xrna -I/opt/X11/include' или' -I/opt/X11/include -o xrna' или какой-либо другой вариант. –

ответ

1

При использовании опции -o в операторе связи самая следующая запись должна быть именем файла для вывода, а не некоторой опцией библиотеки.

Смежные вопросы