Clang64 runtime Error readking OKBitBtn.Kind: Resource BBOK not found - Clang32 all ok

113 Views Asked by At

RAD Studio 10.4.2 C++Builder running on Windows 10 Pro 64-bit PC. Target VCL Win64 (ie Clang64 compiler).

I have a large C++ project that is under development using VCL Clang64. I am compiling using static linking of all RTL libraries and all installed component packages.

It was compiling and running OK before. I've added some new stuff, and now it compiles and links without reporting any errors, but when I run it I get an error box and the application doesn't run (doesn't even start up). The error box says.

Error reading OKBitBtn.Kind: Resource BBOK not found

I have used Notepad++ "find in files" to search all directories for a file containing BBOK, but it says "none found".

If I compile with the "Use runtime packages" project option enabled, I get an AV when I try to run the EXE file.

If I compile and link using Clang32 (target = Win32) with static linking, it runs ok - no sign of any errors (but I need a 64-bit application to interface to my PostgreSQL database using FireDAC, so this experiment won't talk to the database, as expected).

I am at a loss as to what can cause this error, and what debugging steps I should take to track it down and solve it.

1

There are 1 best solutions below

0
On

(thanks to Remy for making edit improvements to my mquestion) Thanks to help from David Millington and Miguel Moreno (provided by skype conversation I now have the solution:

I have some of my own VCL components that are written in C++ (and work with the classic compiler). I had these de-selected in the "installed packages" list - but they were still listed (with empty check boxes). I know that RAD studio 10.4.2 (and earlier) does not work well with VCL components written in C++ and compiled with clang32 or clang64 compilers.

If I "remove" these components from the list then the problem is solved. At this point I have no idea why this happens.

This is a bit of a pain as it means swapping from projects that use the components with classic compiler (many) to the big project I am spending a lot of time on is not convenient. However it is an acceptable workaround. I am hoping that this issue will be fixed in the coming RAD Studio 11 version.