C Ошибка сборки при получении значения sin () - PullRequest
0 голосов
/ 22 сентября 2011

Я недавно начал изучать C как побочный проект.Я работаю в OpenSuse с последними версиями NetBeans, использующими GCC в качестве набора инструментов для компиляции.Одна из самых первых программ, которые я сделал, была такой:

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

/*
 * 
 */
int main(int argc, char** argv) {    
    double rad = 1;
    double result = 0;
    result = sin(rad);
    return (EXIT_SUCCESS);
}

Это простой, простой пример, который должен работать без проблем.Тем не менее, я получаю ошибку сборки: код выхода 2 (ошибка в строке 18, неопределенная ссылка на грех) при попытке компиляции.Интересно, что если я удалю присвоение значения sin (rad) для результата ИЛИ заменим rad жестко закодированным значением, программа компилируется просто отлично.Что я тут не так делаю?

Ответы [ 2 ]

5 голосов
/ 22 сентября 2011

В C вам необходимо указать ссылку на библиотеку математики:

Добавить это в опции командной строки:

-lm
2 голосов
/ 22 сентября 2011

Убедитесь, что вы связываетесь с математической библиотекой.

$ gcc myprog.c -lm
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...