Hi @AndreK. I'm going to ask you to post some additional information that might help us to identify the problem.
Please do this:
Select File > Preferences from the Arduino IDE's menus.
Check the box next to "Show verbose output during:  compilation".
Click the OK button.
Select Sketch > Verify/Compile from the Arduino IDE's menus.
Wait for the compilation to end.
Right click on the black "Output" pane at the bottom of the Arduino IDE 2.x window.
From the context menu, click Copy All.
Open a forum reply here by clicking the Reply button.
Click the </> icon on the post composer toolbar. This will add the forum's code block markup (```) to your reply to make sure the error messages are correctly formatted.
Press Ctrl+V. This will paste the compilation output into the code block.
Move the cursor outside of the code tags before you add any additional text to your reply.
Click the Reply button to post the output.
Yeah, it really blew up in size between 2.0.0-beta.11 and 2.0.0-beta.12.
I'm not sure there has been a lot of Microsoft involvement in the code base. It's true that Arduiino IDE 2.x uses Electron, and Electron was made by GitHub, which Microsoft owns, but Electron was around long before Microsoft bought GitHub. Arduino IDE 2.x uses the Eclipse Theia IDE framework, which is based on Electron, and does mirror the VS Code UI in many ways, but Theia is a different project from VS Code and I don't think Microsoft has had any involvement in the Theia development.
Of course, if you want to dive even deeper, you will find the IDE code is written in Microsoft's TypeScript programming language!
This is the Arduino IDE 2.x's more cryptic version of the "No such file or directory" error you might be familiar with from using the classic Arduino IDE.
it almost always means you need to install the library that contains the missing file.
Often the code you're compiling will come with documentation (either a comment or separate document) that tells you where to get the library dependencies.
Note that libraries may have dependencies on other libraries.
In other cases the author of the code will not have been so kind and you'll need to go on a hunt for the missing library.
A good place to start is the Arduino IDE's Library Manager:
Select Sketch > Include Library > Manage Libraries... from the Arduino IDE's menus.
In the "Filter your search..." box, type some keywords you have gleaned from the missing file name.
Scroll through the results for the right library. Click on it.
Click the Install button.
Wait for the installation to finish.
Click the Close button.
Try compiling your code again.
If you have no luck in Library Manager then load up your favorite search engine and do a search for the missing filename. You will often get multiple results. If you have a lot of results you might add "arduino" as an additional search keyword. I will usually prefer results from github.com since that is where most Arduino libraries are hosted and downloading from there is fast and easy. In some cases there will be multiple libraries that contain the given filename and you'll need to do some evaluation to determine which seems the most appropriate, then try it out.
After downloading the library you found, you'll need to install it. This requires a different process than the Library Manager installation. You will find instructions here:
The big cause of trouble is that:
Arduino 1.8 is using the path :
Arduino IDE 2.x is using:
/home/andre/Arduino/libraries/ (which is quite logical.)
So the question is:
how can I make both happy?
Can I make 1.8x use /home/andre/Arduino/libraries/ (just like older Arduino 1.x did?)
..or can I make 2.0 use projects/libraries ?
I hope to make both happy without symlinking them.
/home/andre/Arduino/projects and /home/andre/Arduino are your sketchbook folders. You can set the path of the sketchbook folder to anything you like in File > Preferences > Sketchbook location. The libraries that are installed in the libraries subfolder of the sketchbook folder are recognized by the Arduino IDE.
The classic Arduino IDE and Arduino IDE 2.x use a different preferences system, so that's why your custom sketchbook location preference setting from Arduino IDE 1.8 was not used by Arduino IDE 2.x. /home/andre/Arduino is the default sketchbook location.
The same bug would likely affect Arduino IDE 1.8.x as well. It's only that Arduino IDE 2.x was updated to use the version of Arduino CLI with the bug while Arduino IDE 1.8.x is using an older Arduino CLI without the bug.
Here are the instructions for the workaround described in the bug report:
Sorry for the confusion. I forgot that I had arbitrarily chosen the "Nucleo-32" board while I was verifying the workaround. So my instructions only apply to that board. I can see that you are instead using the "Generic STM32F1 series" board. I'll provide the instructions again, only adjusted to make the fix for that board:
I have news about the problem of the IDE displaying this sort of cryptic user unfriendly error message. It was found to be caused by a bug in the Arduino CLI tool Arduino IDE 2.x uses under the hood for compiling sketches. That bug has now been fixed:
That fix is not yet in Arduino IDE 2.x, but it will be in one of the upcoming releases.
There is also a proposed improvement to the other unhelpful "Error: 13 INTERNAL" part of the error here: