Skip to main content
Visitor II
March 27, 2024
Question

STM32MP135F | cannot find crti.o, crtbeginS.o, -lgcc, -lgcc_s, -lc, crtendS.o, crtn.o

  • March 27, 2024
  • 1 reply
  • 1781 views

Hi,

I am working on cross-compiling one of the third party device driver for running it on STM32MP135F based customize board.

Currently in my cross-compilation following errors are triggered with respect to GCC cross-compiler setup using the SDK for OpenSTLinux distribution.

Below are the log entries of this errors:


make[1]: Entering directory '/home/yantrr/git-repos/synergy/stm_l2_switch/stm_dev_pkg/dev_pkg_src/l2switch_linux_driver_v2.6/libportseq'
Making lib/libportseq all ...
make libportseq.so
make[2]: Entering directory '/home/yantrr/git-repos/synergy/stm_l2_switch/stm_dev_pkg/dev_pkg_src/l2switch_linux_driver_v2.6/libportseq'
arm-ostl-linux-gnueabi-gcc -Wall -I/home/yantrr/git-repos/synergy/stm_l2_switch/stm_dev_pkg/dev_pkg_src/l2switch_linux_driver_v2.6/output/include -shared -o libportseq.so portnumber.o
/home/yantrr/git-repos/synergy/stm_l2_switch/stm_dev_pkg/sdk_install/sysroots/x86_64-ostl_sdk-linux/usr/libexec/arm-ostl-linux-gnueabi/gcc/arm-ostl-linux-gnueabi/12.2.0/ld: cannot find crti.o: No such file or directory
/home/yantrr/git-repos/synergy/stm_l2_switch/stm_dev_pkg/sdk_install/sysroots/x86_64-ostl_sdk-linux/usr/libexec/arm-ostl-linux-gnueabi/gcc/arm-ostl-linux-gnueabi/12.2.0/ld: cannot find crtbeginS.o: No such file or directory
/home/yantrr/git-repos/synergy/stm_l2_switch/stm_dev_pkg/sdk_install/sysroots/x86_64-ostl_sdk-linux/usr/libexec/arm-ostl-linux-gnueabi/gcc/arm-ostl-linux-gnueabi/12.2.0/ld: cannot find -lgcc: No such file or directory
/home/yantrr/git-repos/synergy/stm_l2_switch/stm_dev_pkg/sdk_install/sysroots/x86_64-ostl_sdk-linux/usr/libexec/arm-ostl-linux-gnueabi/gcc/arm-ostl-linux-gnueabi/12.2.0/ld: cannot find -lgcc_s: No such file or directory
/home/yantrr/git-repos/synergy/stm_l2_switch/stm_dev_pkg/sdk_install/sysroots/x86_64-ostl_sdk-linux/usr/libexec/arm-ostl-linux-gnueabi/gcc/arm-ostl-linux-gnueabi/12.2.0/ld: cannot find -lc: No such file or directory
/home/yantrr/git-repos/synergy/stm_l2_switch/stm_dev_pkg/sdk_install/sysroots/x86_64-ostl_sdk-linux/usr/libexec/arm-ostl-linux-gnueabi/gcc/arm-ostl-linux-gnueabi/12.2.0/ld: cannot find -lgcc: No such file or directory
/home/yantrr/git-repos/synergy/stm_l2_switch/stm_dev_pkg/sdk_install/sysroots/x86_64-ostl_sdk-linux/usr/libexec/arm-ostl-linux-gnueabi/gcc/arm-ostl-linux-gnueabi/12.2.0/ld: cannot find -lgcc_s: No such file or directory
/home/yantrr/git-repos/synergy/stm_l2_switch/stm_dev_pkg/sdk_install/sysroots/x86_64-ostl_sdk-linux/usr/libexec/arm-ostl-linux-gnueabi/gcc/arm-ostl-linux-gnueabi/12.2.0/ld: cannot find crtendS.o: No such file or directory
/home/yantrr/git-repos/synergy/stm_l2_switch/stm_dev_pkg/sdk_install/sysroots/x86_64-ostl_sdk-linux/usr/libexec/arm-ostl-linux-gnueabi/gcc/arm-ostl-linux-gnueabi/12.2.0/ld: cannot find crtn.o: No such file or directory
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:40: libportseq.so] Error 1
make[2]: Leaving directory '/home/yantrr/git-repos/synergy/stm_l2_switch/stm_dev_pkg/dev_pkg_src/l2switch_linux_driver_v2.6/libportseq'
make[1]: *** [Makefile:28: all] Error 2
make[1]: Leaving directory '/home/yantrr/git-repos/synergy/stm_l2_switch/stm_dev_pkg/dev_pkg_src/l2switch_linux_driver_v2.6/libportseq'
make: *** [Makefile:11: all] Error 2

Does anyone have any idea how I can fix this?

 

Regards,

Vaibhav

    This topic has been closed for replies.

    1 reply

    ST Employee
    April 4, 2024

    Hi, 

    I think there's been a misunderstanding. If you use the distribution package, you must not use the SDK. to compile with the distribution package you can follow the wiki page :  https://wiki.st.com/stm32mpu/wiki/STM32MP1_Distribution_Package

     if you want to use the SDK you need the developer package, which you can find by following this page : https://wiki.st.com/stm32mpu/wiki/STM32MP1_Developer_Package

     

    Can you check which version you're using and tell me which one it is? Can you also tell me which commands you're using so that I can help you better?

     

    Regards,

    Grégory