Trouble building mbed project - linker not found

Hello. I am having trouble building an Mbed Studio project that was developed by a colleague who has since left. I have a fresh install of Mbed Studio 1.4.4 and a copy of the project directory. The target is ‘NUCLEO-H7A3ZI-Q’.

When I try to build the project, the linker script cannot be found.
image

Under the ‘Problems’ tab I have many errors:

Under the ‘Libraries’ tab, there is a problem with loading the mbed_os library. Mbed Studio can’t connect to the git repository and this is due to IT restrictions.

The original developer was able to work around this by, I think, manually installing the mbed library. The project directory does include a folder ‘mbed-os’ and it looks like the mbed library is all in there.
image

In main.cpp there is an error associated with line #include “mbed.h” - hovering over I can see that file ‘rtx_os.h’ is not found.

I am new to mbed and I’m a little stuck as to how to get this project working. Any help on this would be appreciated!

Thanks.

Hello,

it seems like Mbed Studio has problem with initialize your project and especially Mbed library. Errors and failed build is because the Mbed library was not correctly recognized/downloaded, how in the third picture.

Try to create new empty project, then copy main.cpp, mbed_app.json and LCD40x2 folder to the new empty project folder (ignore the rest). Select your target and for sure just right click on the project folder and choose Active project again. Let process the small progress bar above for few second and then try build button again.

BR, Jan

Hi Jan.

When I create a new project Mbed Studio fails to import the mbed library:
image

This is because IT restrictions prevent Studio from accessing the online Github repository. Is there a way to copy the mbed library to the project manually? I can download the library .zip from the Github website.

Thanks.

Jan

I created a new project and copied the contents of mbed-os-master.zip (from the Github repo) into the project folder (renamed the folder to ‘mbed-os’). I then copied over the files you mentioned from my original project, and it now builds.

Thank you for the suggestion!

Hi Mike Gray,

it looks like there are some network settings that prevent Mbed Studio from downloading mbed os. As you said, there is a chance to make the project work by downloading mbed os yourself.

What you might try:

  1. Download mbed os from github (GitHub - ARMmbed/mbed-os: Arm Mbed OS is a platform operating system designed for the internet of things). Be careful to choose the version you are interested in. Put it in a folder accessible by Mbed Studio.
  2. Activate your project on Mbed Studio
  3. Open the library panel (on the bottom left)
  4. If you hover over the mbed os library area there should be a button appearing, with the label “Switch to shared”.
  5. Click that button and select the path where you put the previously downloaded version of mbed os

This might allow you to build your program.

Hope it helps,

Federico - Mbed Studio team