Компиляция программы (make вылетает с ошибкой)

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

Toshkins
Сообщения: 7

Компиляция программы

Сообщение Toshkins »

Код: Выделить всё

karaped@chukcha:~/ubench-0.32$ ./configure
====  Creating Makefile for Linux x86_64
====  Now type make to compile ubench for Linux
karaped@chukcha:~/ubench-0.32$ make
gcc -O2 -Wall -malign-loops=2 -malign-jumps=2 -malign-functions=2 -I. -c cpubench.c
cpubench.c:1: warning: -malign-loops is obsolete, use -falign-loops
cpubench.c:1: warning: -malign-jumps is obsolete, use -falign-jumps
cpubench.c:1: warning: -malign-functions is obsolete, use -falign-functions
cpubench.c: In function ‘cpucalc’:
cpubench.c:72: warning: implicit declaration of function ‘abs’
cpubench.c: In function ‘cpuload’:
cpubench.c:93: error: ‘CLK_TCK’ undeclared (first use in this function)
cpubench.c:93: error: (Each undeclared identifier is reported only once
cpubench.c:93: error: for each function it appears in.)
cpubench.c: In function ‘cpubench’:
cpubench.c:136: warning: implicit declaration of function ‘exit’
cpubench.c:136: warning: incompatible implicit declaration of built-in function ‘exit’
cpubench.c:195: warning: incompatible implicit declaration of built-in function ‘exit’
make: *** [cpubench.o] Error 1


Использую Ubuntu 7.04 64-bit
Соответственно интересно почему возникла ошибка, как исправить. Пакет build-essential установлен.
Спасибо сказали:
Аватара пользователя
t_gran
Сообщения: 9
ОС: FreeBSD

Re: Компиляция программы

Сообщение t_gran »

:-)
Это не make, а gcc говорит что не знает что за CLK_TCK.
cpubench.c:93: error: ‘CLK_TCK’ undeclared (first use in this function)

Это скорее всего макрос. Его надо искать в заголовочниках.
Спасибо сказали:
Toshkins
Сообщения: 7

Re: Компиляция программы

Сообщение Toshkins »

Я немного невсосал. Я так понял, заголовочник == заголовочный файл? А найдя, что делать? Или просто нужно указать соответсвующие параметры при выполнении?
Спасибо сказали:
Аватара пользователя
t_gran
Сообщения: 9
ОС: FreeBSD

Re: Компиляция программы

Сообщение t_gran »

заголовочник == заголовочный файл

Именно так.

grep -n CLK_TCK *.h
Если такой имеется, тогда смотришь почему компилятор не выполняет данную часть кода. А может он вообще не включен в файле cpubench.c.
Может быть что данный макрос (или константа) не описаны в исходных файлах, тогда шариш в своих includ-ах в поисках этого камня принкновения.

Или просто нужно указать соответсвующие параметры при выполнении?

Так не делаеться и может вызвать ошибку при линковке (смотря как ты это зделаешь). Но если очень хочеться можешь попытаться.
Спасибо сказали: