2013-10-01 7 views
0

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

gcc -o "SYSMONTR" $(OBJPATH)/chkdsksp ../chkdsksp.c -g -I"$(DB2PATH)/include" -I"$(MYLIBDIR)" $(MYIQDIR)/iqclilib.a $(OBJPATH)/icrou.a -lc -ldb2 -lnsl -L"$(DB2PATH)/lib" 

Это результат:

gcc -o "SYSMONTR" ../../iLINKOBJ/chkdsksp ../chkdsksp.c -g -I"C:/Program Files/IBM/SQLLIB/include" -I"../../iLINKCLIB" ../../iLINKIQOBJ/iqclilib.a ../../iLINKOBJ/icrou.a -lc -ldb2 -lnsl -L"C:/Program Files/IBM/SQLLIB/lib" 
../../iLINKOBJ/chkdsksp: file not recognized: File format not recognized 
collect2: error: ld returned 1 exit status 
makefile:49: recipe for target `SYSMONTR' failed 
make: *** [SYSMONTR] Error 1 

Что может вызвать такую ​​ошибку и что мне с ним делать? Использование cygwin on Window (IDE: Eclipse). Любые опоры будут оценены.

+0

Что такое 'chkdsksp'? – Mat

+0

Ваша команда плохая. Флаг '-o' принимает один аргумент, который является файлом, который должен быть создан в качестве вывода компилятором. Итак, '-o SYSMONTR $ (OBJPATH)/chkdsksp' означает« связать программу и называть ее «SYSMONTR» и как часть ее вытащить файл '$ (OBJPATH)/chkdsksp', что, вероятно, является программой. t link программа в другую программу.Я подозреваю, что вы ХОТЯЛИСЬ сказать: '-DSYSMONTR -o $ (OBJPATH)/chkdsksp' вместо этого. – MadScientist

+0

chkdsksp - это объектный файл, а не программа. При использовании команды Mad's произошла другая ошибка : "iLINKIQOBJ/iqclilib.a: формат файла не распознан; как ссылочный скрипт " У вас есть идеи? Спасибо. –

ответ

0

Если chkdsksp является объектным файлом, созданным другой командой для работы в AIX, вы не можете ожидать, что он будет функционировать или даже распознаваться вашим компилятором - на Cygwin. Вы должны связаться с этой командой и получить: a) исходный код или b) версию файла объекта, скомпилированную для вашей платформы (и проверено).

+0

Спасибо Бета, это может быть ответ что я ожидал, я свяжусь с ними прямо сейчас. Кстати, если есть какие-то проблемы, пожалуйста, помогите мне решить. Еще раз большое спасибо! –

+0

Дорогой бета, могу ли я получить свой идентификатор Skype или Gtalk ID для запроса вам нужна дополнительная информация? –

+0

@ user2767584: Я рад помочь, но у меня нет ни skype, ни gtalk, и вы еще не можете участвовать в чате stackOverflow. Пока что, если вам нужна информация в спешке, прокомментируйте этот ответ и Я отвечу (и позже мы можем удалить o ур комментарии). – Beta

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