alexh-name/bsec_bme680_linux

error compiling with makefile

jdoern96 opened this issue · 10 comments

I have the same error as a previous comment and made sure that my directories are correct:
"/usr/bin/ld: cannot find -lalgobsec"

I looked in the directories and couldn't even to find the file myself
/home/pi/BME680 for your source code and
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323
/home/pi/src/BME680_driver-master

Hi,
this is likely due to the new release of BSEC having a different directory structure. I will look into it soon. Someone else gave this hint: #2 (comment)

I just updated the make script, see 1284880.
Could you check if this solves your linking error?

Thanks for the quick update. I just made the changes to the 2 files and the same error still occurs.
"/usr/bin/ld: cannot find -lalgobsec"
"collect2: error: ld returned 1 exit status"

Could you give me the contents of your make.conf and the result of
find ~/ -type f -name 'libalgobsec.a'
which will search for the library the linker couldn't find?

BSEC_DIR=/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323

VERSION='Normal_version'

ARCH="${VERSION}/RaspberryPi/PiThree_ArmV8-a-64-bits"

# Other architectures can be found in BSEC_DIR/algo/bin/.

# Other architectures can be found in BSEC_DIR/algo/bin/.

CONFIG='generic_33v_3s_4d'

# Other configs are:
# generic_18v_300s_28d
# generic_18v_300s_4d
# generic_18v_3s_28d
# generic_18v_3s_4d
# generic_33v_300s_28d
# generic_33v_300s_4d
# generic_33v_3s_28d
# generic_33v_3s_4d

CONFIG_DIR='.'

pi@raspberrypi:~/BME680 $ find ~/ -type f -name 'libalgobsec.a'
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/IAR/cortex_m0/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/IAR/cortex_m0+/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/IAR/cortex_m7/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/IAR/cortex_m4/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/IAR/cortex_m3/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/IAR/cortex_m4f/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/android/x86_64/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/android/x86_32/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/android/arm32/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/android/arm64/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/avr/AVR8_megaAVR/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/avr/AVR32/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/avr/AVR8_XMEGA/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/RaspberryPI/PiZero_ArmV6-32bits/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/RaspberryPI/PiThree_ArmV8-a-64bits/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/esp32/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/gcc/Cortex_A7/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/gcc/Cortex_M0+/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/gcc/Cortex_M4/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/gcc/Cortex_M7/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/gcc/Cortex_M3/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/gcc/Cortex_M0/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/gcc/Cortex_M4F/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/esp8266/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/msp430_elf_gcc/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/IAR/cortex_m0/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/IAR/cortex_m0+/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/IAR/cortex_m7/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/IAR/cortex_m4/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/IAR/cortex_m3/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/IAR/cortex_m4f/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/android/x86_64/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/android/x86_32/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/android/arm32/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/android/arm64/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/avr/AVR8_megaAVR/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/avr/AVR32/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/avr/AVR8_XMEGA/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/RaspberryPI/PiZero_ArmV6-32bits/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/RaspberryPI/PiThree_ArmV8-a-64bits/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/esp32/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/gcc/Cortex_A7/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/gcc/Cortex_M0+/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/gcc/Cortex_M4/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/gcc/Cortex_M7/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/gcc/Cortex_M3/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/gcc/Cortex_M0/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/gcc/Cortex_M4F/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/esp8266/libalgobsec.a
/home/pi/src/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/msp430_elf_gcc/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/IAR/cortex_m0/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/IAR/cortex_m0+/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/IAR/cortex_m7/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/IAR/cortex_m4/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/IAR/cortex_m3/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/IAR/cortex_m4f/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/android/x86_64/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/android/x86_32/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/android/arm32/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/android/arm64/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/avr/AVR8_megaAVR/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/avr/AVR32/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/avr/AVR8_XMEGA/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/RaspberryPI/PiZero_ArmV6-32bits/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/RaspberryPI/PiThree_ArmV8-a-64bits/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/esp32/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/gcc/Cortex_A7/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/gcc/Cortex_M0+/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/gcc/Cortex_M4/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/gcc/Cortex_M7/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/gcc/Cortex_M3/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/gcc/Cortex_M0/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/gcc/Cortex_M4F/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/esp8266/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Normal_version/msp430_elf_gcc/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/IAR/cortex_m0/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/IAR/cortex_m0+/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/IAR/cortex_m7/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/IAR/cortex_m4/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/IAR/cortex_m3/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/IAR/cortex_m4f/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/android/x86_64/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/android/x86_32/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/android/arm32/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/android/arm64/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/avr/AVR8_megaAVR/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/avr/AVR32/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/avr/AVR8_XMEGA/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/RaspberryPI/PiZero_ArmV6-32bits/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/RaspberryPI/PiThree_ArmV8-a-64bits/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/esp32/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/gcc/Cortex_A7/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/gcc/Cortex_M0+/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/gcc/Cortex_M4/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/gcc/Cortex_M7/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/gcc/Cortex_M3/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/gcc/Cortex_M0/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/gcc/Cortex_M4F/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/esp8266/libalgobsec.a
/home/pi/Downloads/BSEC_1.4.6.0_Generic_Release_20180323/algo/bin/Lite_version/msp430_elf_gcc/libalgobsec.a

Thanks. There appears to be two typos in your ARCH variable. The path in the BSEC directory is written
RaspberryPI/PiThree_ArmV8-a-64bits compared to your
RaspberryPi/PiThree_ArmV8-a-64-bits.
That should fix it.

Corrected the make.config to ARCH="${VERSION}/RaspberryPI/PiZero_ArmV6-32bits" and the same error still persists. Do I have to possibly change-L"${BSEC_DIR}"/algo/bin/"${ARCH}" -lalgobsec \ to -L"${BSEC_DIR}"/algo/bin/"${ARCH}" -libalgobsec \ in make.sh?

No that wouldn't make sense. Please make sure you are using the latest version of make.sh without any custom changes.

Resetting the make.sh worked for me. Thanks for all the help.

Glad it works now.