Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,9 @@ plugins {

group = "com.gluonhq"

sourceCompatibility = JavaVersion.VERSION_11
java {
sourceCompatibility = JavaVersion.VERSION_11
}

repositories {
mavenCentral()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2019, 2022, Gluon
* Copyright (c) 2019, 2022, 2025, Gluon
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
Expand Down Expand Up @@ -41,6 +41,11 @@ abstract class PosixTargetConfiguration extends AbstractTargetConfiguration {
super(paths, configuration);
}

@Override
protected Path getCLibPath() {
return super.getCLibPath().resolve("glibc");
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Currently, the GluonFX 1.0.26 version is meant to be used with GraalVM 22.1.0.1-Final (JDK 17 based, from here https://github.com/gluonhq/graal/releases/), but nothing prevents you from using any other higher GraalVM version.

However, this is not recommended, as that in fact it will surely fail on Android/iOS (for instance, the CAP cache files change with new GraalVM versions, so the current ones in Substrate are guaranteed to work for a given GraalVM version).

The previous GluonFX 1.0.25, non-supported/experimental, version was meant to be used with GraalVM 23+25.1-dev, but that one is not failing with the error you have posted, because it doesn't use clibs.

So the error only happens in the unexpected combination of GluonFX 1.0.26 + GraalVM 23 + Linux x86_64. In any case, it doesn't happen on macOS.

If you want to move forward with this PR, I suggest you move this change to the LinuxTargetConfiguration class, and then you can check if the directory glibc exists before adding it to the path.

}

@Override
void checkPlatformSpecificClibs(Path clibPath) throws IOException {
Path libjvmPath = clibPath.resolve("libjvm.a");
Expand Down