Read parameters from within helicopter mixer code

I’m trying to read parameters from within the helicopter mixer code. in HelicopterMixer.cpp I added #include <parameters/param.h> and then I tried to use param_find and param_get functions to read the current value of a parameter. Unfortunately it says those functions are undefined references which means the library is not being linked in. I tried adding target_link_libraries(HelicopterMixer PRIVATE MixerBase parameters) to the HelicopterMixer CMakeLists.txt. This did not solve the issue. I still get the following doing make px4_fmu-v5 for on Ubuntu 18.04 and GCC 7.5.1:

[242/244] Linking CXX executable px4_io-v2_default.elf
FAILED: px4_io-v2_default.elf
: && /opt/gcc-arm-none-eabi-9-2020-q2-update/bin/arm-none-eabi-g++ -mcpu=cortex-m3 -mthumb -Os -DNDEBUG --specs=nosys.specs platforms/nuttx/CMakeFiles/px4.dir/__/common/empty.c.obj -o px4_io-v2_default.elf -L/home/sgoza/px4/helifun/build/px4_fmu-v5_default/external/Build/px4io_firmware/external/Install/lib -nostartfiles -nodefaultlibs -nostdlib -nostdinc++ -fno-exceptions -fno-rtti -Wl,–script=/home/sgoza/px4/helifun/build/px4_fmu-v5_default/external/Build/px4io_firmware/NuttX/nuttx-config/scripts/script.ld -Wl,-Map=px4_io-v2_default.map -Wl,–warn-common -Wl,–gc-sections -Wl,–start-group NuttX/apps/libapps.a NuttX/nuttx/arch/arm/src/libarch.a NuttX/nuttx/binfmt/libbinfmt.a NuttX/nuttx/libs/libc/libc.a NuttX/nuttx/boards/libboards.a NuttX/nuttx/libs/libxx/libxx.a NuttX/nuttx/drivers/libdrivers.a NuttX/nuttx/fs/libfs.a NuttX/nuttx/mm/libmm.a NuttX/nuttx/sched/libsched.a -Wl,–end-group -lm -lgcc -Wl,–print-memory-usage src/modules/px4iofirmware/libpx4iofirmware.a NuttX/apps/libapps.a platforms/nuttx/src/px4/stm/stm32f1/io_pins/libarch_io_pins.a src/lib/mixer/libmixer.a src/lib/mixer/AllocatedActuatorMixer/libAllocatedActuatorMixer.a src/lib/mixer/HelicopterMixer/libHelicopterMixer.a NuttX/nuttx/arch/arm/src/libarch.a boards/px4/io-v2/src/libdrivers_board.a platforms/nuttx/src/px4/stm/stm32f1/hrt/libarch_hrt.a src/lib/parameters/libparameters.a src/lib/parameters/flashparams/libflashparams.a NuttX/nuttx/arch/arm/src/libarch.a boards/px4/io-v2/src/libdrivers_board.a platforms/nuttx/src/px4/stm/stm32f1/hrt/libarch_hrt.a src/lib/parameters/libparameters.a src/lib/parameters/flashparams/libflashparams.a platforms/common/libpx4_platform.a msg/libuorb_msgs.a src/lib/parameters/tinybson/libtinybson.a src/lib/mixer/MultirotorMixer/libMultirotorMixer.a src/lib/mixer/NullMixer/libNullMixer.a src/lib/mixer/SimpleMixer/libSimpleMixer.a src/lib/mixer/MixerBase/libMixerBase.a src/lib/rc/librc.a src/lib/output_limit/liboutput_limit.a NuttX/nuttx/libs/libxx/libxx.a NuttX/nuttx/libs/libc/libc.a NuttX/nuttx/drivers/libdrivers.a NuttX/nuttx/fs/libfs.a NuttX/nuttx/mm/libmm.a NuttX/nuttx/sched/libsched.a -lm -lgcc && :
Memory region Used Size Region Size %age Used
flash: 58560 B 60 KB 95.31%
sram: 3856 B 8 KB 47.07/opt/gcc-arm-none-eabi-9-2020-q2-update/bin/…/lib/gcc/arm-none-eabi/9.3.1/…/…/…/…/arm-none-eabi/bin/ld: src/lib/mixer/HelicopterMixer/libHelicopterMixer.a(HelicopterMixer.cpp.obj): in function HelicopterMixer::mix(float*, unsigned int)': /home/sgoza/px4/helifun/build/px4_fmu-v5_default/external/Build/px4io_firmware/../../../../../src/lib/mixer/HelicopterMixer/HelicopterMixer.cpp:203: undefined reference to param_find’
/opt/gcc-arm-none-eabi-9-2020-q2-update/bin/…/lib/gcc/arm-none-eabi/9.3.1/…/…/…/…/arm-none-eabi/bin/ld: src/lib/mixer/HelicopterMixer/libHelicopterMixer.a(HelicopterMixer.cpp.obj): in function HelicopterMixer::mix(float*, unsigned int)': /home/sgoza/px4/helifun/build/px4_fmu-v5_default/external/Build/px4io_firmware/../../../../../src/lib/parameters/param.h:471: undefined reference to param_get’
collect2: error: ld returned 1 exit status
%
ninja: build stopped: subcommand failed.
[734/1362] Building CXX object src/mod…vers__vmount.dir/input_mavlink.cpp.obj
FAILED: external/Stamp/px4io_firmware/px4io_firmware-build external/Build/px4io_firmware/px4_io-v2_default.elf
cd /home/sgoza/px4/helifun/build/px4_fmu-v5_default/external/Build/px4io_firmware && /usr/bin/cmake --build .
[737/1362] Building CXX object src/mod…vers__vmount.dir/input_mavlink.cpp.obj
ninja: build stopped: subcommand failed.
Makefile:231: recipe for target ‘px4_fmu-v5’ failed
make: *** [px4_fmu-v5] Error 1