v79
11/01/2020, 10:26 AMBig Chungus
11/01/2020, 10:34 AMv79
11/01/2020, 11:48 AMlinuxX64("wsl") {
compilations { "main" {
cinterops {
val libCurl by cinterops.creating {
defFile(project.file("src/nativeInterop/cinterop/libcurl.def"))
includeDirs("src/nativeInterop/cinterop/")
}
}
}}
binaries {
executable {
entryPoint = "main"
}
}
}
Big Chungus
11/01/2020, 11:49 AMv79
11/01/2020, 11:54 AMBig Chungus
11/01/2020, 11:55 AMBig Chungus
11/01/2020, 11:55 AMBig Chungus
11/01/2020, 11:56 AMv79
11/01/2020, 11:57 AMBig Chungus
11/01/2020, 11:58 AMBig Chungus
11/01/2020, 11:58 AMv79
11/01/2020, 11:58 AMv79
11/01/2020, 11:58 AMBig Chungus
11/01/2020, 11:59 AMBig Chungus
11/01/2020, 11:59 AMBig Chungus
11/01/2020, 11:59 AMBig Chungus
11/01/2020, 12:00 PMv79
11/01/2020, 12:00 PMBig Chungus
11/01/2020, 12:00 PMBig Chungus
11/01/2020, 12:00 PMBig Chungus
11/01/2020, 12:01 PMv79
11/01/2020, 12:02 PMBig Chungus
11/01/2020, 12:03 PMBig Chungus
11/01/2020, 12:04 PMv79
11/01/2020, 12:09 PMplugins {
kotlin("multiplatform") version "1.4.10"
}
group = "org.liamjd.pi"
version = "1.0-SNAPSHOT"
repositories {
mavenCentral()
}
kotlin {
val hostOs = System.getProperty("os.name")
val isMingwX64 = hostOs.startsWith("Windows")
val nativeTarget = when {
hostOs == "Mac OS X" -> macosX64("native")
hostOs == "Linux" -> linuxX64("native")
isMingwX64 -> mingwX64("native")
else -> throw GradleException("Host OS is not supported in Kotlin/Native.")
}
nativeTarget.apply {
binaries {
executable {
entryPoint = "main"
}
}
}
linuxArm32Hfp("Pi") {
binaries {
executable {
entryPoint = "main"
}
}
}
sourceSets {
val nativeMain by getting
val nativeTest by getting
}
}
v79
11/01/2020, 12:09 PMv79
11/01/2020, 12:10 PMBig Chungus
11/01/2020, 12:11 PMBig Chungus
11/01/2020, 12:11 PMBig Chungus
11/01/2020, 12:12 PMBig Chungus
11/01/2020, 12:12 PMv79
11/01/2020, 12:14 PMBig Chungus
11/01/2020, 12:14 PMBig Chungus
11/01/2020, 12:15 PMv79
11/01/2020, 12:20 PMv79
11/01/2020, 12:24 PMBig Chungus
11/01/2020, 12:26 PMv79
11/01/2020, 1:08 PMBig Chungus
11/01/2020, 1:12 PMv79
11/01/2020, 1:17 PMsourceSets
doesn't seem necessary; I've commented them out and it works.Big Chungus
11/01/2020, 1:18 PMv79
11/01/2020, 1:19 PMBig Chungus
11/01/2020, 1:19 PMv79
11/01/2020, 1:21 PMBig Chungus
11/01/2020, 1:27 PMBig Chungus
11/01/2020, 1:27 PMBig Chungus
11/01/2020, 1:28 PMv79
11/01/2020, 1:29 PMpi@raspberrypi:~/PiShare $ uname -a
Linux raspberrypi 5.4.72-v7l+ #1356 SMP Thu Oct 22 13:57:51 BST 2020 armv7l GNU/Linux
pi@raspberrypi:~/PiShare $
pi@raspberrypi:~/PiShare $ file KNWorld.kexe
KNWorld.kexe: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 2.6.32, BuildID[xxHash]=a487af0917a9a720, not stripped
pi@raspberrypi:~/PiShare $ ./KNWorld.kexe
PiMain: Hello, enter your name:
Liam Davison
Your name contains 11 letters
Your name contains 9 unique letters
pi@raspberrypi:~/PiShare $
v79
11/01/2020, 1:30 PMBig Chungus
11/01/2020, 1:30 PMv79
11/01/2020, 1:30 PMBig Chungus
11/01/2020, 1:30 PMBig Chungus
11/01/2020, 1:31 PMBig Chungus
11/01/2020, 1:32 PMBig Chungus
11/01/2020, 1:33 PMBig Chungus
11/01/2020, 1:34 PMBig Chungus
11/01/2020, 1:35 PMv79
11/01/2020, 1:37 PMBig Chungus
11/01/2020, 1:38 PMv79
11/01/2020, 1:39 PMBig Chungus
11/01/2020, 1:40 PMBig Chungus
11/01/2020, 1:40 PM