The first time I encountered https://github.com/stepcode/stepcode/ I decided not to use it. Too big, too ugly. I decided to write my own Early Binding generator. The result of this action can be seen here https://github.com/Vertexwahn/oipExpress.

oipExpress

Still ugly, but much smaller. Using bison I set up the whole EXPRESS grammar. Can you imagine how much pain this was? In the end it was less painful for me than using STEPcode. Think about this.

Nevertheless, today I will retry to use STEPcode. Let’s see where it ends. What can possibly go wrong here?

First I decided to start with Windows 10 x64, CMake 3.17.2, Visual Studio 2019. Compling seem to work fine for the projects base, check-express and exp2cxx. Is exp2cxx a early binding generator? Seems to work now better as in the past.

Update 2025: I created oipExpress during my time as PhD student. You can find more details in the book chapter BIM programming.