There was an issue while compiling KiCad under Windows 10

I compiled the source code for version 7.99.0 using cmakegui for construction, and the project was compiled in vs2022. During compilation, there was an issue with the TDxNavlib project, resulting in the following error: Studio\2022\Enterprise\VC\Tools\MSVC\14.42.34433\include\yvals_core.h(23,1): error C1189: #error: error STL1003: Unexpected compiler, expected C++ compiler.
When I set up the project to compile to C++, I solved this problem, but then there was an issue with undefined identifiers. This problem was also resolved, as the namespace was missing. After adding the namespace, the problem was solved, and the project was able to compile normally, generating a static library TDxNavlib. During the subsequent compilation process, some projects linked to this static library reported an error stating that the identifier was undefined and the symbols in this static library could not be found. Why is this?(In a previous compilation, this issue did not occur. The settings for the TDxNavlib project are the same as this time, but there will be no errors and there is no need to change it to compile to C++. Using the TDxNavlib static library that was not generated with any errors before to link to other projects, the other projects did not generate undefined identifier errors and compiled smoothly)

Why version 7.99.0? That version was deprecated when 8.0.0 was released.

Hi @wwww

By way of an explanation:

Each year (usually around Feb) Kicad releases a new stable version. The new version is called X.0.0. When the new stable version is released, a new development version is also released. This is called X.99. The development version is not stable, and is subject to changes on a daily basis. This is for testing new features by anyone game enough to help sort out bugs. This X.99 version will become the following years stable version.

So, when 6.0.0 was released, a 6.99 development version was also made available. The 6.99 became 7.0.0 the following year.
When 7.0.0 was released, a 7.99 development version was also made available. The 7.99 became 8.0.0 the following year.
When 8.0.0 was released, an 8.99 development version was also made available. This will become 9.0.0 the following year. 8.99 is nearly ready for release now, so it is called 9.0.0-rc1.
When 9.0.0 is released, a 9.99 development version will also be made available. The 9.99 will become 10.0.0 around Feb. 2026 (hopefully :slightly_smiling_face:)

The X.99 versions are also known as the “nightlies”, because during the development year there are often nightly changes to the program.

Incremental changes to the stable version eg. 7.0.4 or 8.0.6 are occasional releases during the year. These releases are only ever bug fixes, never new features.

1 Like

Try to combine the information from the documentation: Windows (Visual Studio) | Developer Documentation | KiCad

With the information in this thread: Setting up Windows (VS) build environment Oct '24

That should get you set up.

Probably wrong. In VS you configure KiCad compilation inside VS. Follow the instructions. It’s not easy, I fought with it for some time, but finally succeeded. The difficulty with the official instructions is that they are vague and seem to assume you already know how to use VS. I didn’t know. And as is typical in these kind of situations, now I don’t remember what I did wrong and right.

1 Like

Yeah, try to stick closely to the instructions for now before trying out anything. There are too many pitfalls otherwise. Get the current master branch to compile. If that works then git checkout whatever version you are trying to compile and whatever cmake experiments you are trying to do.

Wow ! what does that all even mean ? am I missing something ? Lol ! what happened to just installing the software, running it and then designing and making PCBs ? Then using the instruction manual to get the details :upside_down_face:
:mouse:

If the KiCad team all decide they have had enough of the whining, ingrate users and decide to close shop then you always have the option to take the source code yourself and add any new features you want, re-compile and hey presto you have V11.0.3 :wink: