Properties of KasperskyOS cross compilers
The cross compilers included in KasperskyOS Community Edition support processors that have the x86_64-pc architecture.
The KasperskyOS Community Edition toolchain includes the following tools for cross compilation:
x86_64-pc-kos-gccx86_64-pc-kos-g++x86_64-pc-kos-asx86_64-pc-kos-ldIn addition to standard macros, an additional macro __KOS__=1 is defined in GCC. Using this macro lets you simplify porting of the source code of applications to KasperskyOS, and also simplifies development of platform-independent applications.
To view the list of standard macros of GCC, run the following command:
echo '' | x86_64-pc-kos-gcc -dM -E -
Linker operation specifics
When building the executable file of an entity, by default the linker links the following libraries in the specified order:
open, socket, read, write).coresrv folder, for example: #include <coresrv/vmm/vmm_api.h>. The second part of the libkos library is a wrapper over the first part and contains additional synchronization functions: mutex, semaphore, event. Other libraries (including libc) interact with the kernel through the libkos library.main function, and custom configurations).