Код: Выделить всё
olej@nvidia ~/2016_WORK/in.WORK/as-needed $ lsb_release -ircd
Distributor ID: LinuxMint
Description: Linux Mint 17.1 Rebecca
Release: 17.1
Codename: rebecca
Код: Выделить всё
#include <stdio.h>
#include <math.h>
int main( void ) {
float d = 9;
printf( "%f\n", sqrt( d ) );
return 0;
}
Ага ... ща-а-а-аз:
Код: Выделить всё
olej@nvidia ~/2016_WORK/in.WORK/as-needed $ gcc -Wall -lm ex1.c -o ex1
/tmp/ccUuI8Fy.o: In function `main':
ex1.c:(.text+0x1a): undefined reference to `sqrt'
collect2: error: ld returned 1 exit status
Код: Выделить всё
olej@nvidia ~/2016_WORK/in.WORK/as-needed $ gcc -Wall ex1.c -lm -o ex1
olej@nvidia ~/2016_WORK/in.WORK/as-needed $ ./ex1
3.000000
Код: Выделить всё
olej@nvidia ~/2016_WORK/in.WORK/as-needed $ g++ -lm -Wall ex1.c -o ex1++
olej@nvidia ~/2016_WORK/in.WORK/as-needed $ ./ex1++
3.000000
А зависит это ... от используемого дистрибутива Linux!
Это не возникает в: Fedora, CentOS, Debian ... и даже Rosa, Mageia.
Это возникает в: Ubuntu (со всеми их разнообразными Xubuntu, Lubuntu, Kubuntu...), Mint, Gentoo, ALT Linux.
Не знаю, каким ещё дистрибутивам это свойственно.