Thanks for the reply. I have been looking into to using the the M4 (and M4F) versions of BSEC on the Azure Sphere, but at present I am getting different linking errors: >------ Build started: Project: CMakeLists, Configuration: Debug ------
[1/4] cmd.exe /C "cd . && C:\PROGRA~2\MICROS~1\2019\COMMUN~1\Linux\gcc_arm\bin\ARM-NO~4.EXE -mcpu=cortex-m4 -g -nostartfiles -Wl,--no-undefined -Wl,-n -T "C:/AzureSphere/RealTimeCore/linker.ld" CMakeFiles/AzureSphere_RealTimeCore.dir/main.c.obj CMakeFiles/AzureSphere_RealTimeCore.dir/mt3620-intercore.c.obj CMakeFiles/AzureSphere_RealTimeCore.dir/mt3620-timer-poll.c.obj CMakeFiles/AzureSphere_RealTimeCore.dir/mt3620-uart-poll.c.obj CMakeFiles/AzureSphere_RealTimeCore.dir/mt3620-adc.c.obj CMakeFiles/AzureSphere_RealTimeCore.dir/bsec_serialized_configurations_iaq.c.obj -o AzureSphere_RealTimeCore.out -lm ../../libalgobsec.a && cd ."
FAILED: AzureSphere_RealTimeCore.out
cmd.exe /C "cd . && C:\PROGRA~2\MICROS~1\2019\COMMUN~1\Linux\gcc_arm\bin\ARM-NO~4.EXE -mcpu=cortex-m4 -g -nostartfiles -Wl,--no-undefined -Wl,-n -T "C:/AzureSphere/RealTimeCore/linker.ld" CMakeFiles/AzureSphere_RealTimeCore.dir/main.c.obj CMakeFiles/AzureSphere_RealTimeCore.dir/mt3620-intercore.c.obj CMakeFiles/AzureSphere_RealTimeCore.dir/mt3620-timer-poll.c.obj CMakeFiles/AzureSphere_RealTimeCore.dir/mt3620-uart-poll.c.obj CMakeFiles/AzureSphere_RealTimeCore.dir/mt3620-adc.c.obj CMakeFiles/AzureSphere_RealTimeCore.dir/bsec_serialized_configurations_iaq.c.obj -o AzureSphere_RealTimeCore.out -lm ../../libalgobsec.a && cd ."
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ../../libalgobsec.a(bsec_codegen_update_subscription.o): in function `bsec_codegen_update_subscription':
bsec_codegen_update_subscription.c:(.text+0x222): undefined reference to `roundf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ../../libalgobsec.a(Bsec.o): in function `bsec_Bsec_getModHeatingDuration':
Bsec.c:(.text+0x520): undefined reference to `powf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: Bsec.c:(.text+0x52a): undefined reference to `powf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: Bsec.c:(.text+0x580): undefined reference to `roundf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ../../libalgobsec.a(ChannelHub.o): in function `bsec_ChannelHub_do':
ChannelHub.c:(.text+0x204): undefined reference to `roundf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ChannelHub.c:(.text+0x27e): undefined reference to `roundf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ChannelHub.c:(.text+0x324): undefined reference to `roundf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ChannelHub.c:(.text+0x3be): undefined reference to `roundf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ../../libalgobsec.a(ChannelHub.o):ChannelHub.c:(.text+0x3e8): more undefined references to `roundf' follow
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ../../libalgobsec.a(GasHumidityBaselineTracker.o): in function `bsec_GasHumidityBaselineTracker_filterRobustMaxMin':
GasHumidityBaselineTracker.c:(.text+0xf0): undefined reference to `expf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ../../libalgobsec.a(GasHumidityBaselineTracker.o): in function `bsec_GasHumidityBaselineTracker_doStep':
GasHumidityBaselineTracker.c:(.text+0x2ca): undefined reference to `expf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: GasHumidityBaselineTracker.c:(.text+0x436): undefined reference to `fminf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: GasHumidityBaselineTracker.c:(.text+0x5d6): undefined reference to `log10f'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: GasHumidityBaselineTracker.c:(.text+0x66a): undefined reference to `expf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: GasHumidityBaselineTracker.c:(.text+0x676): undefined reference to `roundf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ../../libalgobsec.a(GasHumidityBaselineTracker.o): in function `bsec_GasHumidityBaselineTracker_updateInterfaceDependency':
GasHumidityBaselineTracker.c:(.text+0x92e): undefined reference to `log10f'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: GasHumidityBaselineTracker.c:(.text+0x932): undefined reference to `fabsf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: GasHumidityBaselineTracker.c:(.text+0x964): undefined reference to `floorf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: GasHumidityBaselineTracker.c:(.text+0x968): undefined reference to `roundf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ../../libalgobsec.a(GasHumidityPreProcessor.o): in function `bsec_GasHumidityPreProcessor_doStep':
GasHumidityPreProcessor.c:(.text+0xd2): undefined reference to `log10f'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: GasHumidityPreProcessor.c:(.text+0x13a): undefined reference to `log10f'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ../../libalgobsec.a(HumidityTemperatureCorrector.o): in function `bsec_HumidityTemperatureCorrector_updateInterfaceDependency':
HumidityTemperatureCorrector.c:(.text+0x132): undefined reference to `fminf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: HumidityTemperatureCorrector.c:(.text+0x13e): undefined reference to `sinf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ../../libalgobsec.a(IaqEstimator.o): in function `bsec_IaqEstimator_doStep':
IaqEstimator.c:(.text+0xb4): undefined reference to `fmaxf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: IaqEstimator.c:(.text+0xbc): undefined reference to `fminf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: IaqEstimator.c:(.text+0xca): undefined reference to `fmaxf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: IaqEstimator.c:(.text+0x124): undefined reference to `fmaxf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: IaqEstimator.c:(.text+0x14c): undefined reference to `powf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: IaqEstimator.c:(.text+0x154): undefined reference to `fmaxf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: IaqEstimator.c:(.text+0x15c): undefined reference to `fminf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ../../libalgobsec.a(IaqEstimator.o): in function `bsec_IaqEstimator_updateInterfaceDependency':
IaqEstimator.c:(.text+0x390): undefined reference to `log10f'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: IaqEstimator.c:(.text+0x394): undefined reference to `fabsf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: IaqEstimator.c:(.text+0x3a4): undefined reference to `log10f'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: IaqEstimator.c:(.text+0x3ac): undefined reference to `log10f'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: IaqEstimator.c:(.text+0x3c2): undefined reference to `log10f'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ../../libalgobsec.a(convertHumidity.o): in function `bsec_convertHumidity':
convertHumidity.c:(.text+0x2a): undefined reference to `logf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: convertHumidity.c:(.text+0xa4): undefined reference to `expf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ../../libalgobsec.a(normalizeFilterBw.o): in function `bsec_normalizeFilterBw':
normalizeFilterBw.c:(.text+0x22): undefined reference to `fminf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: normalizeFilterBw.c:(.text+0x32): undefined reference to `fminf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ../../libalgobsec.a(sin.o): in function `bsec_b_sin':
sin.c:(.text+0xc): undefined reference to `sinf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: ../../libalgobsec.a(sin.o): in function `bsec_sin':
sin.c:(.text+0x1e): undefined reference to `sinf'
c:/progra~2/micros~1/2019/commun~1/linux/gcc_arm/bin/../lib/gcc/arm-none-eabi/8.2.1/../../../../arm-none-eabi/bin/ld.exe: sin.c:(.text+0x26): undefined reference to `sinf'
C:\AzureSphere\RealTimeCore\collect2.exe : error : ld returned 1 exit status
ninja: build stopped: subcommand failed.
Build failed. I'm not sure why I'm getting those errors, as -lm is already specified when compiling. In fact I am using some of those "undefined" functions in my code already, but BSEC can't seem to find them. What about the chance of getting the Linux armhf build (from COINES) re-compiled with the -fPIC option. Is it possible to have that this week?
... View more