Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Oomph » Help building native executables(I could do with some pointers around building the Oomph DLLs and EXEs)
Help building native executables [message #1775713] Fri, 03 November 2017 19:41 Go to next message
Adrian Price is currently offline Adrian PriceFriend
Messages: 8
Registered: October 2017
Junior Member
Running on Windows 10 Pro (64-bit), I am trying to package a custom Oomph executable that will provision an IDE, workspace and projects for developing an in-house product.

I can't find ANY documentation on how to build the product and in particular the self-unzipping eclipse-inst-win64.exe. I can see that there are:

- 31 launch configuration files
- 3 shell scripts
- 5 Ant scripts
- 126 pom.xml files
- 160 .project files
- 3 native C projects:
- /org.eclipse.oomph.extractor
- /org.eclipse.oomph.jreinfo.dll
- /org.eclipse.oomph.jreinfo.lib

It's unclear to me what order these things are to be executed in. I figured out that you're supposed to build the Maven projects by launching /org.eclipse.oomph.releng/Build Windows 64bit[ (debug)].launch. I've installed MinGW-w64 (tried MinGW, didn't work, ancient & no 64-bit support) and managed to get the three native projects compiled, resulting in /org.eclipse.oomph.extractor/Win64-Debug/extractor-64.exe.

I'm currently stuck, unable to create /org.eclipse.oomph.extractor/Win64-Debug/eclipse-inst-64.exe, which I can see is supposed to be created by running /org.eclipse.oomph.extractor/Concat/concat.bat 64 from /org.eclipse.oomph.extractor/Win64-Debug, but isn't because the file /org.eclipse.oomph.extractor/Concat/product/product-64.zip doesn't exist. How is one supposed to create this file? I can't see any reference to it in any script or launch configuration (nor indeed can I see a launch configuration for running /org.eclipse.oomph.extractor/Concat/concat.bat).

Any pointers would be greatly appreciated. Thanks!
Re: Help building native executables [message #1775730 is a reply to message #1775713] Sat, 04 November 2017 08:28 Go to previous messageGo to next message
Ed Merks is currently offline Ed MerksFriend
Messages: 29545
Registered: July 2009
Senior Member
Building the native things is a nightmare. Only Eike has that working on his old machine but then on his new machine he hasn't gotten it working again. So you're doing better to have some success in that. I assume you've looked at these instructions:

https://wiki.eclipse.org/Eclipse_Oomph_Authoring#How_to_extract_the_constituent_parts_that_comprise_the_Windows_self-extracting_installer_executable

You can use that approach to get at the reusable parts you need to build your own *.exe (you don't need to keep rebuilding them yourself and we don't do that either in our builds). All you need for your own purposes is these reusable parts along with a zip of a product installation (i.e., a zip that that if you manually unzipped it would just work on its own) and the descriptor for it (which I think is pretty clear looking at the contents for the installer itself).

I'm not sure how publicly visible the build configuration is for https://hudson.eclipse.org/oomph/job/integration/ if you login with your Eclipse.org account. We do/can run the Maven/Tycho builds locally too using the launcher that you noticed. It needs a bit of configuration to know which Java to use and where Maven is located...
Re: Help building native executables [message #1775819 is a reply to message #1775730] Mon, 06 November 2017 19:07 Go to previous messageGo to next message
Adrian Price is currently offline Adrian PriceFriend
Messages: 8
Registered: October 2017
Junior Member
Thanks for the tips, Ed. I did eventually manage to build the Java code, the native executables and then produce /org.eclipse.oomph.extractor/Win64-Debug/eclipse-inst-64.exe but I had to:

  1. Maven build of ${git.clone.oomph}/pom.xml with mvn clean verify -DMAVEN_BUILD=true -DskipTests=true (the latter because a bunch of tests failed)
  2. Eclipse clean+build of /org.eclipse.oomph.jreinfo.dll, /org.eclipse.oomph.jreinfo.lib and /org.eclipse.oomph.extractor;
  3. Launch "/org.eclipse.oomph.extractor/Get Libdata.launch" in Eclipse to create /org.eclipse.oomph.extractor/Libdata/libdata.jar
  4. Copy /org.eclipse.oomph.releng/deploy.properties.template to sibling deploy.properties and set:
    git.clone.location = F:\\oomph-master\\git\\org.eclipse.oomph (i.e., ${git.clone.oomph})
    target = F:\\oomph-master\\installer-test
  5. Launch "/org.eclipse.oomph.releng/Installer Deploy.launch" in Eclipse to populate ${target} in deploy.properties with:
    configuration/
    features/
    p2/
    plugins/
    readme/
    artifacts.xml
    eclipse-inst.exe
    eclipse-inst.ini
    eclipsec.exe
  6. Edit ${target}/eclipse-inst.ini to add:
    -Doomph.redirection.LiveAppsProducts=index:/redirectable.products.setup->file:/<custom-products-path>/setups/MyProducts.setup
    -Doomph.redirection.LiveAppsProjects=index:/redirectable.projects.setup->file:/<custom-products-path>/setups/MyProjects.setup
    (The above file: URLs will be replaced with http: intranet URLs once the configurations are finalised)
  7. ZIP the ${target} directory to /org.eclipse.oomph.extractor/Concat/product/product-64.zip
  8. Launch /org.eclipse.oomph.extractor/Concat/concat.bat 64 from a command shell to produce /org.eclipse.oomph.extractor/Win64-Debug/eclipse-inst-64.exe


The curious thing is that steps 7 and 8 are manual - I could not find any scripts to automate them. Furthermore the resulting eclipse-inst-64.exe ends up named eclipse-inst-win64.exe when you download from the Eclipse site, so there must be some magic releng incantations that aren't in the https://git.eclipse.org/r/oomph/org.eclipse.oomph source tree.
Re: Help building native executables [message #1775848 is a reply to message #1775819] Tue, 07 November 2017 08:31 Go to previous messageGo to next message
Ed Merks is currently offline Ed MerksFriend
Messages: 29545
Registered: July 2009
Senior Member
You've seen the scripts in /org.eclipse.oomph.releng/hudson? Are you able to see build configuration https://hudson.eclipse.org/oomph/job/integration/configure
Re: Help building native executables [message #1775919 is a reply to message #1775848] Wed, 08 November 2017 09:24 Go to previous message
Adrian Price is currently offline Adrian PriceFriend
Messages: 8
Registered: October 2017
Junior Member
Sorry, forgot to mention that https://hudson.eclipse.org/oomph/job/integration/configure yields "xxx@tibco.com is missing the ExtendedRead permission" - so no, I can't see job configuration screens.

However, I am able to read the console output from the build and from that was able to determine the Maven CLI arguments.

[Updated on: Wed, 08 November 2017 09:26]

Report message to a moderator

Previous Topic:Eclipse Installer Create Start Menu and Desktop Shortcut
Next Topic:Advance mode cannot see the permanent location dialog
Goto Forum:
  


Current Time: Sun Sep 23 14:32:18 GMT 2018

Powered by FUDForum. Page generated in 0.02379 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top