<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
Hi,</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
I just checked with Oracle jdk19 installation + jextract repo's master branch<span style="color: rgb(0, 0, 0); font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt;">. Build/verify worked as expected on mac. </span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
>From the error message you posted, it seems "jdk.compiler" module is missing in your jdk19 installation. jextract needs jdk.compiler module to compile the extracted Java sources to produce .class files.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
Will you please check if the following command prints "jdk.compiler"?</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<span style="caret-color:rgb(32, 31, 30);color:rgb(32, 31, 30);font-family:"Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", sans-serif;font-size:15px;background-color:rgb(255, 255, 255);display:inline !important">/usr/lib/jvm/java-19-openjdk-19.0.0.0.36-2.rolling.fc38.x86_64/bin/java
 --list-modules | grep jdk.compiler</span><br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<span style="caret-color:rgb(32, 31, 30);color:rgb(32, 31, 30);font-family:"Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", sans-serif;font-size:15px;background-color:rgb(255, 255, 255);display:inline !important"><br>
</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<span style="caret-color:rgb(32, 31, 30);color:rgb(32, 31, 30);font-family:"Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", sans-serif;font-size:15px;background-color:rgb(255, 255, 255);display:inline !important">For
 example, in my case</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<span style="caret-color:rgb(32, 31, 30);color:rgb(32, 31, 30);font-family:"Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", sans-serif;font-size:15px;background-color:rgb(255, 255, 255);display:inline !important"><br>
</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<span style="caret-color:rgb(32, 31, 30);color:rgb(32, 31, 30);font-family:"Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", sans-serif;font-size:15px;background-color:rgb(255, 255, 255);display:inline !important">
<p style="margin:0.0px 0.0px 0.0px 0.0px;font:14.0px Menlo;color:#000000"><span style="font-variant-ligatures:no-common-ligatures">$ /Library/Java/JavaVirtualMachines/jdk-19.jdk/Contents/Home/bin/java \<span class="Apple-converted-space"> </span></span></p>
<p style="margin:0.0px 0.0px 0.0px 0.0px;font:14.0px Menlo;color:#000000"><span style="font-variant-ligatures:no-common-ligatures">>
<span class="Apple-converted-space">  </span>--list-modules | grep jdk.compiler</span></p>
<p style="margin:0.0px 0.0px 0.0px 0.0px;font:14.0px Menlo;color:#000000"><span style="font-variant-ligatures:no-common-ligatures">jdk.compiler@19</span></p>
<p style="margin:0.0px 0.0px 0.0px 0.0px;font:14.0px Menlo;color:#000000"><span style="font-variant-ligatures:no-common-ligatures"><br>
</span></p>
<p style="margin:0.0px 0.0px 0.0px 0.0px;font:14.0px Menlo;color:#000000"><span style="font-variant-ligatures:no-common-ligatures">If not, that installation may be missing compiler module (perhaps generated by jlink invocation). Solution is to install a full
 JDK 19.</span></p>
<p style="margin:0.0px 0.0px 0.0px 0.0px;font:14.0px Menlo;color:#000000"><span style="font-variant-ligatures:no-common-ligatures"><br>
</span></p>
<p style="margin:0.0px 0.0px 0.0px 0.0px;font:14.0px Menlo;color:#000000"><span style="font-variant-ligatures:no-common-ligatures">Hope this helps,</span></p>
<p style="margin:0.0px 0.0px 0.0px 0.0px;font:14.0px Menlo;color:#000000"><span style="font-variant-ligatures:no-common-ligatures">-Sundar</span></p>
<br>
</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<span style="caret-color:rgb(32, 31, 30);color:rgb(32, 31, 30);font-family:"Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", sans-serif;font-size:15px;background-color:rgb(255, 255, 255);display:inline !important"><br>
</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div id="appendonsend"></div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> panama-dev <panama-dev-retn@openjdk.org> on behalf of Gavin Ray <ray.gavin97@gmail.com><br>
<b>Sent:</b> 21 September 2022 07:35<br>
<b>To:</b> panama-dev@openjdk.org <panama-dev@openjdk.org><br>
<b>Subject:</b> Trying to build j-extract on Linux throws "java.lang.module.FindException: Module jdk.compiler not found"</font>
<div> </div>
</div>
<div>
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">Hello all,
<div><br>
</div>
<div>I'm trying to generate jextract types for io_uring (I didn't find any non-JNI/JNA libraries to use it from JVM)</div>
<div>Unfortunately, following the instructions I've hit a snag.<br>
</div>
<div><br>
</div>
<div>Building it with JDK 19, I get:</div>
<div>=============================================</div>
<div>
<div>[user@MSI jextract]$ sh ./gradlew \</div>
<div><span style="white-space:pre"></span>-Pjdk19_home=/usr/lib/jvm/java-19-openjdk-19.0.0.0.36-2.rolling.fc38.x86_64 \</div>
<div><span style="white-space:pre"></span>-Pllvm_home=/home/user/downloads/clang+llvm-15.0.0-aarch64-linux-gnu clean verify</div>
<div><br>
</div>
<div>> Task :compileJava</div>
<div>Note: Some input files use preview features of Java SE 19.</div>
<div>Note: Recompile with -Xlint:preview for details.</div>
<div><br>
</div>
<div>> Task :createJextractImage FAILED</div>
<div>Error: Module jdk.compiler not found</div>
<div>java.lang.module.FindException: Module jdk.compiler not found</div>
<div>        at java.base/java.lang.module.Resolver.findFail(Resolver.java:892)</div>
<div>        at java.base/java.lang.module.Resolver.resolve(Resolver.java:129)</div>
<div>        at java.base/java.lang.module.Configuration.resolve(Configuration.java:420)</div>
<div>        at java.base/java.lang.module.Configuration.resolve(Configuration.java:254)</div>
<div>        at jdk.jlink/jdk.tools.jlink.internal.Jlink$JlinkConfiguration.resolve(Jlink.java:217)</div>
<div>        at jdk.jlink/jdk.tools.jlink.internal.JlinkTask.createImageProvider(JlinkTask.java:536)</div>
<div>        at jdk.jlink/jdk.tools.jlink.internal.JlinkTask.createImage(JlinkTask.java:424)</div>
<div>        at jdk.jlink/jdk.tools.jlink.internal.JlinkTask.run(JlinkTask.java:276)</div>
<div>        at jdk.jlink/jdk.tools.jlink.internal.Main.run(Main.java:56)</div>
<div>        at jdk.jlink/jdk.tools.jlink.internal.Main.main(Main.java:34)</div>
</div>
<div>
<div>=============================================</div>
<div><br>
</div>
</div>
<div>Would it make sense to add a Dockerfile for Linux to the repo that can reliably build the latest version?</div>
<div>That way folks don't have to mess around with finding and installing LLVM and whatnot.</div>
<div><br>
</div>
<div>I'm happy to submit a PR for this if someone can tell me why the regular build command is failing, ha.</div>
<div><br>
</div>
<div><br>
</div>
</div>
</div>
</div>
</div>
</body>
</html>