Because C++ does not have a standardized ABI, all SystemC Library modules as well as all SystemC models built from these modules must be compiled with exactly the same compiler, compiler version, and compiler flags. It works perfectly fine to include binary SystemC models as long as they are Accellera compliant and the compiler guidelines just outlined are followed.
As of Simics 6 it is also possible to combine Simics SystemC modules compiled with different toolchains, provided each individual module has been constructed from a set of binaries built using the same toolchain.
The default GCC used by Simics SystemC Library is 6.3.0 with C++14. For maximum interoperability, it is recommended to use this compiler version. This is the only GCC version tested by Simics regression tests. On Windows we only support Visual Studio 2015. It is possible to use other toolchains, such as GCC 12.
The SystemC Library only supports the Accellera kernel 2.3.3. It is not possible to run with other kernels as they will not be binary compatible with 2.3.3. This includes kernels from other vendors.
Simics does not guarantee that the Simics SystemC Library API will not change between releases. Simics' SystemC support is still being gradually improved and a completely frozen API would limit what improvements can be made. A lot of effort will, however, be made to avoid changing the API. If a change is needed, the end-user effort will be minimized.