Closed
Description
I do have a sample GraalVM native image project to create a static image with musl libc
. Recently the build started failing (not sure if it's because of any change in GH Action env or updating to the latest dependency 2.7.1
) with the following error message (com.github.ajalt.mordant.internal.syscalls.nativeimage.LinuxLibC$termios.getC_ispeed()
)
[1/8] Initializing... (0.0s @ 0.11GB)
Error: Error compiling query code (in /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c). Compiler command '/opt/hostedtoolcache/x86_64-linux-musl-native/10.2.1/x64/bin/x86_64-linux-musl-gcc -Wall -Werror --static -o /tmp/SVM-13769868978469610973/LinuxLibC_Directives /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c' output included error: /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:44:173: error: ‘struct termios’ has no member named ‘c_ispeed’; did you mean ‘__c_ispeed’?
C file contents around line 44:
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:43: }
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:44: printf("NativeCodeInfo:LinuxLibC_Directives:StructInfo:struct_termios:StructFieldInfo:c_ispeed:PropertyInfo:size=%lu\n", ((unsigned long)sizeof(((struct termios *) 0)->c_ispeed)));
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:45: printf("NativeCodeInfo:LinuxLibC_Directives:StructInfo:struct_termios:StructFieldInfo:c_ispeed:PropertyInfo:offset=%lu\n", ((unsigned long)offsetof(struct termios, c_ispeed)));
Error: Error compiling query code (in /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c). Compiler command '/opt/hostedtoolcache/x86_64-linux-musl-native/10.2.1/x64/bin/x86_64-linux-musl-gcc -Wall -Werror --static -o /tmp/SVM-13769868978469610973/LinuxLibC_Directives /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c' output included error: /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:45:169: error: ‘struct termios’ has no member named ‘c_ispeed’; did you mean ‘__c_ispeed’?
method com.github.ajalt.mordant.internal.syscalls.nativeimage.LinuxLibC$termios.getC_ispeed()
C file contents around line 45:
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:44: printf("NativeCodeInfo:LinuxLibC_Directives:StructInfo:struct_termios:StructFieldInfo:c_ispeed:PropertyInfo:size=%lu\n", ((unsigned long)sizeof(((struct termios *) 0)->c_ispeed)));
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:45: printf("NativeCodeInfo:LinuxLibC_Directives:StructInfo:struct_termios:StructFieldInfo:c_ispeed:PropertyInfo:offset=%lu\n", ((unsigned long)offsetof(struct termios, c_ispeed)));
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:46: {
Error: Error compiling query code (in /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c). Compiler command '/opt/hostedtoolcache/x86_64-linux-musl-native/10.2.1/x64/bin/x86_64-linux-musl-gcc -Wall -Werror --static -o /tmp/SVM-13769868978469610973/LinuxLibC_Directives /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c' output included error: /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:51:21: error: ‘struct termios’ has no member named ‘c_ispeed’; did you mean ‘__c_ispeed’?
C file contents around line 51:
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:50: memset(&fieldHolder, 0x0, sizeof(fieldHolder));
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:51: fieldHolder.c_ispeed = all_bits_set;
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:52: is_unsigned = fieldHolder.c_ispeed > 0;
Error: Error compiling query code (in /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c). Compiler command '/opt/hostedtoolcache/x86_64-linux-musl-native/10.2.1/x64/bin/x86_64-linux-musl-gcc -Wall -Werror --static -o /tmp/SVM-13769868978469610973/LinuxLibC_Directives /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c' output included error: /tmp/SVM-[137](https://github.com/sureshg/native-image-playground/actions/runs/10119212190/job/27987310517#step:4:138)69868978469610973/LinuxLibC_Directives.c:52:35: error: ‘struct termios’ has no member named ‘c_ispeed’; did you mean ‘__c_ispeed’?
C file contents around line 52:
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:51: fieldHolder.c_ispeed = all_bits_set;
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:52: is_unsigned = fieldHolder.c_ispeed > 0;
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:53: printf("NativeCodeInfo:LinuxLibC_Directives:StructInfo:struct_termios:StructFieldInfo:c_ispeed:PropertyInfo:signedness=$%s$\n", (is_unsigned) ? "UNSIGNED" : "SIGNED");
Error: Error compiling query code (in /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c). Compiler command '/opt/hostedtoolcache/x86_64-linux-musl-native/10.2.1/x64/bin/x86_64-linux-musl-gcc -Wall -Werror --static -o /tmp/SVM-13769868978469610973/LinuxLibC_Directives /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c' output included error: /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:88:173: error: ‘struct termios’ has no member named ‘c_ospeed’; did you mean ‘__c_ospeed’?
C file contents around line 88:
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:87: }
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:88: printf("NativeCodeInfo:LinuxLibC_Directives:StructInfo:struct_termios:StructFieldInfo:c_ospeed:PropertyInfo:size=%lu\n", ((unsigned long)sizeof(((struct termios *) 0)->c_ospeed)));
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:89: printf("NativeCodeInfo:LinuxLibC_Directives:StructInfo:struct_termios:StructFieldInfo:c_ospeed:PropertyInfo:offset=%lu\n", ((unsigned long)offsetof(struct termios, c_ospeed)));
Error: Error compiling query code (in /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c). Compiler command '/opt/hostedtoolcache/x86_64-linux-musl-native/10.2.1/x64/bin/x86_64-linux-musl-gcc -Wall -Werror --static -o /tmp/SVM-13769868978469610973/LinuxLibC_Directives /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c' output included error: /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:89:169: error: ‘struct termios’ has no member named ‘c_ospeed’; did you mean ‘__c_ospeed’?
method com.github.ajalt.mordant.internal.syscalls.nativeimage.LinuxLibC$termios.getC_ospeed()
C file contents around line 89:
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:88: printf("NativeCodeInfo:LinuxLibC_Directives:StructInfo:struct_termios:StructFieldInfo:c_ospeed:PropertyInfo:size=%lu\n", ((unsigned long)sizeof(((struct termios *) 0)->c_ospeed)));
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:89: printf("NativeCodeInfo:LinuxLibC_Directives:StructInfo:struct_termios:StructFieldInfo:c_ospeed:PropertyInfo:offset=%lu\n", ((unsigned long)offsetof(struct termios, c_ospeed)));
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:90: {
Error: Error compiling query code (in /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c). Compiler command '/opt/hostedtoolcache/x86_64-linux-musl-native/10.2.1/x64/bin/x86_64-linux-musl-gcc -Wall -Werror --static -o /tmp/SVM-13769868978469610973/LinuxLibC_Directives /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c' output included error: /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:95:21: error: ‘struct termios’ has no member named ‘c_ospeed’; did you mean ‘__c_ospeed’?
C file contents around line 95:
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:94: memset(&fieldHolder, 0x0, sizeof(fieldHolder));
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:95: fieldHolder.c_ospeed = all_bits_set;
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:96: is_unsigned = fieldHolder.c_ospeed > 0;
Error: Error compiling query code (in /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c). Compiler command '/opt/hostedtoolcache/x86_64-linux-musl-native/10.2.1/x64/bin/x86_64-linux-musl-gcc -Wall -Werror --static -o /tmp/SVM-13769868978469610973/LinuxLibC_Directives /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c' output included error: /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:96:35: error: ‘struct termios’ has no member named ‘c_ospeed’; did you mean ‘__c_ospeed’?
C file contents around line 96:
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:95: fieldHolder.c_ospeed = all_bits_set;
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:96: is_unsigned = fieldHolder.c_ospeed > 0;
/tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:97: printf("NativeCodeInfo:LinuxLibC_Directives:StructInfo:struct_termios:StructFieldInfo:c_ospeed:PropertyInfo:signedness=$%s$\n", (is_unsigned) ? "UNSIGNED" : "SIGNED");
Internal exception: com.oracle.svm.core.util.UserError$UserException: Error compiling query code (in /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c). Compiler command '/opt/hostedtoolcache/x86_64-linux-musl-native/10.2.1/x64/bin/x86_64-linux-musl-gcc -Wall -Werror --static -o /tmp/SVM-13769868978469610973/LinuxLibC_Directives /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c' output included error: /tmp/SVM-13769868978469610973/LinuxLibC_Directives.c:44:173: error: ‘struct termios’ has no member named ‘c_ispeed’; did you mean ‘__c_ispeed’?
C file contents around line 44:
Native image builds with mordant are working fine on all other platforms (Windows/Linux/Mac)
Metadata
Metadata
Assignees
Labels
No labels