LINUX.ORG.RU

Помогите начинающему программеру %)


0

0

Изучаю язык С по кернигану/ритчи. Столкнулся с одной проблемой в главе 4.1. Цитирую

" Механика компиляции и загрузки "C"-программ, располо-
женных в нескольких исходных файлах, меняется от системы к
системе. В системе "UNIX", например, эту работу выполняет
команда 'CC', упомянутая в главе 1. Предположим, что три
функции находятся в трех различных файлах с именами MAIN.с,
GETLINE.C и INDEX.с . Тогда команда

CC MAIN.C GETLINE.C INDEX.C

компилирует эти три файла, помещает полученный настраиваемый
объектный код в файлы MAIN.O, GETLINE.O и INDEX.O и загружа-
ет их всех в выполняемый файл, называемый A.OUT ."

Проблема в том, что почему то объектные файлы не создаются, а сразу создаётся a.out

Не подскажите ли какие опции надо передать cc чтобы он создавал объектные файлы.

ЗЫ: Понимаю, что man gcc рулит, и я его обязательно когда-нибудь прочту. Просто на данный момент время поджимает.

Всем спасибо за внимание.

anonymous

опция -с

anonymous
()

> почему то объектные файлы не создаются

А нафиг их создавать, если они всё равно не используются в данном случае?

> какие опции надо передать cc чтобы он создавал объектные файлы.

cc -c main.c getline.c index.c

Тогда, чтобы получить a.out:

cc main.o getline.o index.o

watashiwa_daredeska ★★★★
()

А нафиг тебе объектные файлы? Если нужны, то надо по-очереди gcc -c main.c gcc -c getline.c gcc -c index.c gcc -o myprog main.o getline.o index.o

Вообще лучше читать не man gcc, а info gcc. Еще есть книжка - Advanced Linux Programming, вот там написано как надо autotools использовать, make и др. В русском переводе видел, но не помню как точно название перевели (что-то типа Программирования в Linux. Профессиональный подход).

Begemoth ★★★★★
()
Ответ на: комментарий от Begemoth

> Вообще лучше читать не man gcc, а info gcc. Еще есть книжка - 
> Advanced Linux Programming, вот там написано как надо autotools 
> использовать, make и др. В русском переводе видел, но не помню как
> точно название перевели (что-то типа Программирования в Linux. 
> Профессиональный подход).

Да хорошая книжка. Рекомендую. Изд. New Riders / Вильямс.

Там и про триды неплохо написано.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.