Thank you for the answers.
I started building dcmtk 3.6.9 with bcc64x using CMake.
Configuration worked without problems.
First build failed with:
Error E2904 C:\PROGRA~2\EMBARC~1\Studio\23.0\lib\clang\15.0.7\include\intrin.h 158(13): conflicting types for '__intrinsic_setjmpex'
int __cdecl _setjmp(jmp_buf);
I realized that in the configuration step cmake generates a ifdef for BORLANDC in osconfig.h.
According to the Embarcadero help, such sections should be removed because they are no longer necessary, see
https://blogs.embarcadero.com/practical ... lder-12-2/.
So I removed the #ifdef __BORLANDC__.
Next build was building to files:
liboficonv.a
libofstd.a
and then the building process stopped again, this time with:
Error E4128 D:/GitHub/YACTA_Athens/dcmtk/dcmtk369/dcmtk-3.6.9/oflog/libsrc/timehelp.cc 184(5): no matching function for call to 'gmtime_s'
gmtime_s (&clock, t);
In timehelp.cc I added a
#undef __BORLANDC__
before line 184 (where again a __BORLANDC__ is used)
and then 29 dcmtk libs an 78 executables were build
So, yes the new Embarcadero bcc64x compiler (contained in C++Builder 12.2) can build dcmtk 3.6.9 (nearly) out of the box.
Would be cool if the cmake configuration steps could be changed for the bcc64x in the dcmtk code base - not using ifdef-s for BORLANDC should be enough.
Next I need to integrate the new dcmtk libs in one of my projects - let's see how much code needs to be changed.