Skip to content
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

WIP: Install MinGW-W64 on Windows #479

Merged
merged 1 commit into from
Sep 14, 2018
Merged

Conversation

vsebe
Copy link
Contributor

@vsebe vsebe commented Sep 6, 2018

  • install 7zip
  • install MinGW from a 7zip package

Signed-off-by: Violeta Sebe [email protected]

@vsebe
Copy link
Contributor Author

vsebe commented Sep 6, 2018

OpenJ9 requires MinGW-W64 8 for JDK11 and up with MSVS 2017. v8.x is not available yet for cygwin.
The OpenJ9 windows machines have installed v6.4 and the latest package available for cygwin is v7.3

$ cygcheck -c mingw64-x86_64-gcc-g++
Cygwin Package Information
Package                Version        Status
mingw64-x86_64-gcc-g++ 6.4.0-2        OK

MinGW is installed from binary. There is no silent option for the windows installer. The installer also is configurable - choose installation directory (opting to install it in c:/mingw-w64 not in c:/Program File to avoid spaces on the path), architecture and thread.

@vsebe
Copy link
Contributor Author

vsebe commented Sep 6, 2018

@sxa555 fyi

@vsebe
Copy link
Contributor Author

vsebe commented Sep 6, 2018

@jdekonin fyi

Copy link
Member

@sxa sxa left a comment

Choose a reason for hiding this comment

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

Can you break out 7-Zip into a separate section from MingGW (i.e. a separate role) and add a comment to the name field saying "Added for extracting MinGW". Also add something to the name field for MinGW saying it's needed for OpenJ9 (This is something I want to start doing to document why we have things in the playbook since it's getting rather vague :-) )

@vsebe
Copy link
Contributor Author

vsebe commented Sep 10, 2018

@sxa555 - I have broken it down in two playbooks as required.
Please note that I haven't yet test it (no ansible tower access yet), hence the "WIP" prefix.

- install 7zip
- install MinGW from a 7zip package
MinGW-W64 is required to compile OpenJ9.

Signed-off-by: Violeta Sebe <[email protected]>
@karianna
Copy link
Contributor

Just saw this on build-softlayer-win2012r2-x64-2 when building jdk10u-openj9 which failed the build:

x86_64-w64-mingw32-g++: Command not found

Is this related or a red herring? I note that this is a reference to mingw32 so referencing @ali-ince as well

@vsebe
Copy link
Contributor Author

vsebe commented Sep 11, 2018

This PR is for VS 2017. The <mingw-w64_install_dir>/bin directory should be added to the PATH. This is done in the Jenkins files for OpenJ9 build pipelines.

For older toolchain versions - VS2010, VS2013 - the mingw64-x86_64-gcc-g++ package available with cygwing works fine.
The openjdk10_openj9_build_x86-64_windows uses VS2013: --with-toolchain-version=2013

Running ./configure with arguments ' --with-version-pre=adoptopenjdk --with-version-string=10.0.2+13  --with-boot-jdk=/cygdrive/c/openjdk/jdk9 --with-freetype-src=/cygdrive/c/openjdk/freetype-2.5.3 --with-toolchain-version=2013 --with-freemarker-jar=/cygdrive/c/openjdk/freemarker.jar --disable-ccache --with-milestone=fcs'

x86_64-w64-mingw32-g++ should have been installed with cygwin and be available in /usr/bin (Linux path) or C:\cygwin64\bin (Windows path) . More details about OpenJ9 extensions for OpenJDK10 build on Windows could be found here.

@karianna
Copy link
Contributor

@vsebe Thanks! That's a great write up - I'll split it into a different issue

@sxa sxa merged commit 854910b into adoptium:master Sep 14, 2018
@sxa sxa modified the milestones: 2018 October A, 2018 September A Sep 14, 2018
@vsebe vsebe deleted the openj9.win.mingw branch June 26, 2019 14:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants