KorGE Targets Desktop (Native)
This should be the preferred target when publishing applications for desktop platforms.
This generates an almost dependency-less executable for each of the three supported platforms: Linux, MacOS and Windows. The linux target requires OpenAL and OpenGL. While MacOS and Windows targets uses libraries already included in the operating system.
This target features no Virtual Machines, smaller executable, less memory footprint, fast startup times, low GC pause times, but very slow compilation times, and at this point a not as great debugging experience comparing to the JVM target.
Table of contents:
Executing
For running, use the gradle task:
./gradlew runNativeDebug
./gradlew runNativeRelease
Testing
For testing, use the gradle tasks:
./gradlew linuxX64Test
./gradlew macosX64Test
./gradlew mingwX64Test
Building
To generate debug builds without running, use the gradle task:
./gradlew linkDebugExecutableLinuxX64
./gradlew linkDebugExecutableMacosX64
./gradlew linkDebugExecutableMingwX64
To generate release builds without running:
./gradlew linkReleaseExecutableLinuxX64
./gradlew linkReleaseExecutableMacosX64
./gradlew linkReleaseExecutableMingwX64
Creating MacOS .app
bundles
Outputs to /build/unnamed-debug.app
:
./gradlew packageMacosX64AppDebug
Outputs to /build/unnamed-release.app
:
./gradlew packageMacosX64AppRelease
Installing Linux Dependencies
Ubuntu and Debian-based distros
Developing
sudo apt-get -y install freeglut3-dev libopenal-dev
Running
Probably already included on most desktop distributions:
sudo apt-get -y install freeglut3 libopenal1