Неопределенная ссылка на `sin` [duplicate]

На этот вопрос уже есть ответ здесь:

У меня есть следующий код (урезанный до нуля основы для этого вопроса):

#include
#include

double f1(double x)
{
    double res = sin(x);
    return 0;
}

/* The main function */
int main(void)
{
    return 0;
}

При компиляции с помощью gcc test.c я получаю следующую ошибку, и я не могу понять, почему:

/tmp/ccOF5bis.o: In function `f1':
test2.c:(.text+0x13): undefined reference to `sin'
collect2: ld returned 1 exit status

Однако я написал несколько тестовых программ которые вызывают sin из функции main , и они отлично работают. Я, должно быть, здесь что-то явно не так, но что это?

90
задан alk 26 September 2015 в 10:45
поделиться