-
Notifications
You must be signed in to change notification settings - Fork 87
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Build Tools and Document for Icedtea-Web 2.0 Version #392
Comments
You can run the build using maven (https://maven.apache.org/).
|
What about Rust for exe file (javaws.exe) compiling? |
Hi @sclassen , here is error file: |
Hi @patris70 There still some tests that do not work on all systems or sometimes not work based on race conditions. By calling this command the tests will be skipped. |
Hi @hendrikebbers, Thanks, worked, here is LOG: mvn-clean-verify -DskipTests.txt But, where is Javaws.jar, javaws.exe and etc., how can i start a JNLP File? |
@judovana can you give a hint how the (win) native executable can be build once the man build is don? |
ah, found the maven exec plugin :) Will try... |
This should work (but I assume only on linux): |
Hi @hendrikebbers, failed in compiling launcher section (i used Windows OS for compiling)! Here is Error: [DEBUG] Executing command line: [D:\Dev-new\cygwin\bin\bash.exe, D:\IcedTea2\launchers/build.sh, 2.0.0-alpha2] |
Hi, |
Sorry, we currently have no one working on a windows machine and can therefore not reproduce your error. If you find anything we are happy to accept PR or tips on how to fix it |
@sclassen @hendrikebbers I managed to build installers on Windows as follows:
Using Git Bash:
Using Cygwin64 terminal:
|
can you please tell me, why we need MSVC Build Tools + Windows 10 SDK? Thanks |
I have no idea. Something in the build chain requires it. Might be rust, cargo, wix, I don't remember. Try by yourself without it and you will face an issue about "link.exe". |
failed again, here is errors: [DEBUG] Executing command line: [D:\Dev-new\cygwin\bin\bash.exe, D:\IcedTea2\launchers/build.sh, 2.0.0-alpha4] |
@don-vip can you do a PR that adds the build documentation for windows? I would like to put it in a new MD file. By doing so we can easily link it in issues and in the readme.md of the project. |
I build the msi-installer without msvc and sdk. Rust needs the linker to be built to match the toolchain that is used to build. If you change the toolchain with rustup to x86_64-pc-windows-gnu or i686-pc-windows-gnu instead of x86_64-pc-windows-msvc or i686-pc-windows-msvc, rust uses the gnu-linker from the cygwin installation. In addition, you do not need to copy the files from the wix toolset to the wixgen jar directory. You simply set the environment variables WIXGEN_JAR and WIX_TOOLSET_DIR |
@lherschi can you please submit a new PR better than mine? You obviously know more than me on the topic. |
Hi, |
Hi, |
see #520 |
@patris70 I have the same error and be careful from space in path for other var too : WIXGEN_JAR and WIX_TOOLSET_DIR |
@douph1 |
Again Error: [DEBUG] Executing command line: [C:\64bit\cygwin\bin\bash.exe, C:\64bit\ice-2\launchers/build.sh, 2.0.0-alpha8] |
and nothing more if you run
|
WIXGEN_JAR is the path to wixgen.jar defaulting to C:\msi-deps WIX_TOOLSET_DIR=C:\Progra~2\WiX Toolset v3.11\bin |
JRE Error, but i have JAVA_HOME Variable and in PATH!!! bash launchers/build.sh 2.0.0-alpha8
|
and I'm ok with this !, I have added my comment:
Overloading JAVA_HOME with JRE is a good option, but I agree with @don-vip and @patris70 that making mandatory to set JRE when JAVA_HOME exists is superfluous |
Ok, now i get Error about /Libs $ launchers/build.sh 2.0.0-alpha8
|
Can you please Upload your Tools Folder in your Github, then i can download and use it for compiling. |
@hendrikebbers First, we need itw_win_devkit, here is link (we do not need MS VS or other), as Info you can using this Tools for Icedtea-Web 1.8.x compiling: Download MAVEN from here: Download GIT from here: We need WINGEN.JAR File, copy this file in wix\bin Folder, here ist File: For building Javaws.exe x64 (64bit), we need JDK x64, for Javaws.exe x86 (32bit), we need JDK x86. Add in Windows %PATH%, ==> C:\maven\bin;c:\git\cmd;c:\64bit\wix\bin Create this Variables with Value: For example, my Source files and Tools are in Folder C:\64bit and Icedtea-Web Source Folder Name is icedtea-web-2, create a Batch file with this content: @echo off Run your Batch File, then start cygwin.bat File. Now Run this Command: Now you compiled withot Error and MSI File is in Path C:\64bit\icedtea-web-2\launchers\target\images: Hope to help other |
That's not true. The Java bit version doesn't matter. The following is necessary for a 32-bit target system: The following is necessary for a 64-bit target system: |
i have comipled both x64 and x86 Javaws.exe Version with my trick (my Machine is x64). I tested nicht x86 for Icedtea-Web 2.x Version, but this Trick works for Icedtea-Web 1.8.x Version. Regards |
As @lherschi mentionned himself that
don't we must document a way without itw_win_devkit and just by
So we can test and use up-to-date tools ? I think that yesterday when I have rebooted into Windows to build IceadTea, I have done it without itw_win_devkit |
Rust compiles the launcher, including javaws.exe, since the launcher is written in rust and not in java. Rust does not compile any java code, this is done using maven. Thus the java compiler is irrelevant for the bit version of the launcher. |
The devkit is just a compilation of the tools needed. You need git, maven, jdk, cygwin, rust (including gnu-linker (stable-i686-pc-windows-gnu or default stable-x86_64-pc-windows-gnu)), WiX toolset and the wixgen library. |
@lherschi |
From my point of view, your trick should not work even with 1.8. I build 1.8 myself for 32 and 64 bit and always have to make the adjustments I mentioned above. The difference between 1.8 and 2.0 and the launchers is that 1.8 uses make to call cargo and the wix toolset and 2.0 uses a shell script. |
This has the same effect as "rustup default stable-i686-pc-windows-gnu". This gives you a 32-bit launcher, and candle.exe creates a 32-bit msi installer by default. |
Your msi-installer suggests "Program Files" instead of "Program Files (x86)" as the installation directory for your 32-bit build on a 64-bit Windows and if you follow the suggestion you will have 32-bit launcher in the 64-bit programs directory. |
I know, i do not need MSI File, becaues i build my self Openjdj 8uxxx+Icedtea-web MSI File. |
Remember, however, that your installer must then also make the registry entries that the icedtea-web installer would otherwise make. |
you donot need MSLINK. |
I built Icedtea 2.0 to run a jnlp file that doesn't work on 1.8 version. I had some trouble understanding what's needed to build it on Ubuntu, so I'm adding the instructions below, maybe it's going to be useful for someone:
If it builds successfully the javaws executable will be in the launchers/target/bin/ folder. This isn't needed on Fedora as it's the only linux distribution that already ships icedtea 2.0. |
As with @hfluz, I too found the issue with building the launchers to be an unset Maven auto-magically discovers the proper JRE/JDK based on the runtime version set in (Since Maven is already doing a great job of discovering the proper runtime path, it seems silly to have to provide it again...) |
Hi,
we need Build Tools and Document for Version 2.0.
https://github.com/AdoptOpenJDK/IcedTea-Web/releases/tag/icedtea-web-2.0.0-alpha1
My 1.8.x Version Build Tools don't work with Version 2.0.
regards
The text was updated successfully, but these errors were encountered: