Ошибка неопределенной ссылки на функции pow и floor |
|
Добавил(а) microsin
|
При использовании в коде математических функций pow или floor бывает недостаточно подключить заголовочный файл math.h. Линкер может выдать ошибку "Undefined reference to `pow' and `floor'".
Для решения проблемы необходимо компилятору gcc нужно указать флаг -lm [1]. Пример:
CFLAGS_WINDOWS := -D WINDOWS
FLAGS_LINUX := -D LINUX
all:
→gcc $(CFLAGS_WINDOWS) -o main.exe main.c porting.c crc.c -lm -I./include -L./lib -no-pie
windows:
→i686-w64-mingw32-gcc $(CFLAGS_WINDOWS) -o main.exe main.c porting.c crc.c -lm -I./include -L./lib -no-pie
linux:
→gcc $(CFLAGS_LINUX) -o gxupdater main.c porting.c crc.c -lm -L./lib -no-pie
clean:
→rm main.exe main.elf gxupdater -f
[Ссылки]
1. Undefined reference to `pow' and `floor' site:stackoverflow.com. |