audiohacked / OpenCorsairLink

Linux and Mac OS support for the CorsairLink Devices
GNU General Public License v2.0
705 stars 125 forks source link

Having LDFLAGS set leads to build failure #212

Closed crabbedhaloablution closed 4 years ago

crabbedhaloablution commented 4 years ago

cc main.o device.o driver.o print.o logic/options.o logic/options_fan.o logic/options_led.o logic/options_pump.o logic/scan.o logic/settings/commanderpro.o logic/settings/hydro_asetek.o logic/settings/hydro_asetekpro.o logic/settings/hydro_coolit.o logic/settings/psu.o protocol/asetek/core.o protocol/asetek/fan.o protocol/asetek/led.o protocol/asetek/pump.o protocol/asetek/temperature.o protocol/asetekpro/core.o protocol/asetekpro/fan.o protocol/asetekpro/led.o protocol/asetekpro/pump.o protocol/asetekpro/temperature.o protocol/commanderpro/core.o protocol/commanderpro/fan.o protocol/commanderpro/power.o protocol/commanderpro/temperature.o protocol/rmi/core.o protocol/rmi/power.o protocol/rmi/temperature.o protocol/rmi/time.o protocol/coolit/core.o protocol/coolit/fan.o protocol/coolit/led.o protocol/coolit/pump.o protocol/coolit/temperature.o lowlevel/asetek.o lowlevel/commanderpro.o lowlevel/coolit.o lowlevel/rmi.o -march=native -mtune=native -ggdb -O2 -pipe -std=c99 -Iinclude -I/usr/include/libusb-1.0 -DVERSION=\"v0.9.0.0-1109\" -Wl,--as-needed -lusb-1.0 -o OpenCorsairLink.elf /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: protocol/rmi/core.o: in function convert_bytes_double': /var/tmp/portage/sys-apps/opencorsairlink-9999/work/opencorsairlink-9999/protocol/rmi/core.c:49: undefined reference topow'

This is caused by the following line in Makefile: LDFLAGS ?= -lm Which should be: LDFLAGS += -lm So it adds -lm to LDFLAGS whether or not it has been set before.