Howto create Oomph setup file based on Eclipse C++ IDE [message #1854688] |
Fri, 02 September 2022 12:34 |
Matthias Albert Messages: 8 Registered: July 2009 |
Junior Member |
|
|
For easy installation of an tailored Eclipse IDE for my colleagues, I am using an Oomph setup file . It is based on Eclipse C++ IDE, and contains additional features and some preferences, including network settings.
I am not sure what the best method is to keep the Eclipse feature list up-to-date.
To test a procedure, I did the following:
- created a Oomph setup file containing a p2 Setup task
- added the features from the list in https://www.eclipse.org/downloads/packages/release/2022-06/r/eclipse-ide-cc-developers as requirements
- added the repository http://download.eclipse.org/releases/2022-06
My expectation is: this repository contains all features and plugins to fulfill those requirements, but aparently it doesn't.
Running the Eclipse installer with this setup file, the error output is:
Quote:Executing bootstrap tasks
OpenJDK Runtime Environment 17.0.3+7
Product user.products.eclipsecppmod.2022-06
Bundle org.eclipse.oomph.setup 1.25.0.v20220822-1127, build=5611, branch=5a4f7c070fc92b2007481e65503d9c0b3fd8a252
Bundle org.eclipse.oomph.setup.core 1.25.0.v20220822-1127, build=5611, branch=5a4f7c070fc92b2007481e65503d9c0b3fd8a252
Bundle org.eclipse.oomph.setup.installer 1.26.0.v20220822-1127, build=5611, branch=5a4f7c070fc92b2007481e65503d9c0b3fd8a252
Bundle org.eclipse.oomph.setup.p2 1.19.0.v20220607-1104, build=5517, branch=ff2ccc003a1d8c4f5c15c95f48c5dbae54970054
Performing P2 Director
Offline = false
Mirrors = true
Resolving 35 requirements from 1 repository to C:\DevTools\eclipse\eclipsecppmod-2022-062\eclipse
Requirement org.eclipse.equinox.p2.iu:org.eclipse.epp.package.common.feature
Requirement org.eclipse.equinox.p2.iu:org.eclipse.platform
Requirement org.eclipse.equinox.p2.iu:org.eclipse.epp.mpc
Requirement org.eclipse.equinox.p2.iu:org.eclipse.oomph.setup
Requirement org.eclipse.equinox.p2.iu:org.eclipse.justj.openjdk.hotspot.jre.full
Requirement org.eclipse.equinox.p2.iu:org.eclipse.egit
Requirement org.eclipse.equinox.p2.iu:org.eclipse.jgit
Requirement org.eclipse.equinox.p2.iu:org.eclipse.mylyn.wikitext_feature
Requirement org.eclipse.equinox.p2.iu:org.eclipse.epp.package.cpp.feature
Requirement org.eclipse.equinox.p2.iu:org.eclipse.cdt
Requirement org.eclipse.equinox.p2.iu:org.eclipse.cdt.autotools
Requirement org.eclipse.equinox.p2.iu:org.eclipse.cdt.build.crossgcc
Requirement org.eclipse.equinox.p2.iu:org.eclipse.cdt.cmake
Requirement org.eclipse.equinox.p2.iu:org.eclipse.cdt.meson
Requirement org.eclipse.equinox.p2.iu:org.eclipse.cdt.docker.launcher
Requirement org.eclipse.equinox.p2.iu:org.eclipse.cdt.debug.gdbjtag
Requirement org.eclipse.equinox.p2.iu:org.eclipse.cdt.debug.standalone
Requirement org.eclipse.equinox.p2.iu:org.eclipse.cdt.debug.ui.memory
Requirement org.eclipse.equinox.p2.iu:org.eclipse.cdt.launch.remote
Requirement org.eclipse.equinox.p2.iu:org.eclipse.cdt.launch.serial.feature
Requirement org.eclipse.equinox.p2.iu:org.eclipse.cdt.testsrunner.feature
Requirement org.eclipse.equinox.p2.iu:org.eclipse.launchbar
Requirement org.eclipse.equinox.p2.iu:org.eclipse.launchbar.remote
Requirement org.eclipse.equinox.p2.iu:org.eclipse.linuxtools.cdt.libhover.feature
Requirement org.eclipse.equinox.p2.iu:org.eclipse.linuxtools.cdt.libhover.devhelp.feature
Requirement org.eclipse.equinox.p2.iu:org.eclipse.linuxtools.changelog.c
Requirement org.eclipse.equinox.p2.iu:org.eclipse.linuxtools.gcov
Requirement org.eclipse.equinox.p2.iu:org.eclipse.linuxtools.gprof.feature
Requirement org.eclipse.equinox.p2.iu:org.eclipse.linuxtools.rpm
Requirement org.eclipse.equinox.p2.iu:org.eclipse.linuxtools.valgrind
Requirement org.eclipse.equinox.p2.iu:org.eclipse.tm.terminal.connector.cdtserial.feature
Requirement org.eclipse.equinox.p2.iu:org.eclipse.tracecompass.gdbtrace
Requirement org.eclipse.equinox.p2.iu:org.eclipse.tracecompass.lttng2.control
Requirement org.eclipse.equinox.p2.iu:org.eclipse.tracecompass.lttng2.kernel
Requirement org.eclipse.equinox.p2.iu:org.eclipse.tracecompass.lttng2.ust
Repository http://download.eclipse.org/releases/2022-06
Adding repository http://download.eclipse.org/releases/2022-06
Calculating requirements and dependencies.
Cannot complete the request. Generating details.
ERROR: org.eclipse.equinox.p2.director code=10053 Cannot complete the install because one or more required items could not be found.
at org.eclipse.oomph.util.OomphPlugin.coreException(OomphPlugin.java:296)
at org.eclipse.oomph.p2.internal.core.ProfileTransactionImpl.resolve(ProfileTransactionImpl.java:434)
at org.eclipse.oomph.p2.internal.core.ProfileTransactionImpl.commit(ProfileTransactionImpl.java:344)
at org.eclipse.oomph.setup.p2.impl.P2TaskImpl.perform(P2TaskImpl.java:904)
at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.doPerformNeededSetupTasks(SetupTaskPerformer.java:3864)
at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.performNeededSetupTasks(SetupTaskPerformer.java:3792)
at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.performTriggeredSetupTasks(SetupTaskPerformer.java:3773)
at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.perform(SetupTaskPerformer.java:3651)
at org.eclipse.oomph.setup.ui.wizards.ProgressPage$9.run(ProgressPage.java:592)
at org.eclipse.oomph.setup.ui.wizards.ProgressPage$11$1.run(ProgressPage.java:721)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
ERROR: org.eclipse.equinox.p2.director code=0 Software being installed: artificial_root 1.0.0.v1662121786809
ERROR: org.eclipse.equinox.p2.director code=0 Missing requirement: artificial_root 1.0.0.v1662121786809 requires 'org.eclipse.equinox.p2.iu; org.eclipse.epp.package.common.feature 0.0.0' but it could not be found
Took 4 seconds.
There are failed tasks.
Press Back to choose different settings or Cancel to abort.
Any help will be appreciated.
|
|
|
Re: Howto create Oomph setup file based on Eclipse C++ IDE [message #1854696 is a reply to message #1854688] |
Fri, 02 September 2022 13:59 |
Ed Merks Messages: 33264 Registered: July 2009 |
Senior Member |
|
|
Use the Repository Explorer view to see that's actually there.
I'm not sure how you came up with the list of requirements, but I have a feeling you missed the fact that requirement to foo.feature.group will just display foo but the icon will be a bundle with a folder (group) behind it whereas a requirement to a bundle foo will have just a bundle icon (without the folder behind it).
I would suggest that you use copy and paste to copy the selected requirements from the p2 task of the C++ product version you want and paste it onto your p2 task so that you get exactly the right requirements. If something is missing or seems wrong, use the repository explorer to search it and drag and drop it to your p2 task.
Here's what I see (copied and pasted from the 2022-06 version of the C++ product:
<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:p2="http://www.eclipse.org/oomph/p2/1.0">
<p2:Requirement
name="epp.package.cpp"
versionRange="[4.24.0,5.0.0)"
filter="(|(&(osgi.arch=aarch64)(osgi.os=linux)(osgi.ws=gtk))(&(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))(&(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))(&(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))(&(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32)))"/>
<p2:Requirement
name="org.eclipse.platform.feature.group"
versionRange="[4.24.0,5.0.0)"/>
<p2:Requirement
name="org.eclipse.rcp.feature.group"
versionRange="[4.24.0,5.0.0)"/>
<p2:Requirement
name="org.eclipse.cdt.autotools.feature.group"/>
<p2:Requirement
name="org.eclipse.cdt.build.crossgcc.feature.group"/>
<p2:Requirement
name="org.eclipse.cdt.cmake.feature.group"/>
<p2:Requirement
name="org.eclipse.cdt.debug.gdbjtag.feature.group"/>
<p2:Requirement
name="org.eclipse.cdt.debug.standalone.feature.group"/>
<p2:Requirement
name="org.eclipse.cdt.debug.ui.memory.feature.group"/>
<p2:Requirement
name="org.eclipse.cdt.docker.launcher.feature.group"/>
<p2:Requirement
name="org.eclipse.cdt.feature.group"/>
<p2:Requirement
name="org.eclipse.cdt.launch.remote.feature.group"/>
<p2:Requirement
name="org.eclipse.cdt.launch.serial.feature.feature.group"/>
<p2:Requirement
name="org.eclipse.cdt.meson.feature.group"/>
<p2:Requirement
name="org.eclipse.cdt.testsrunner.feature.feature.group"/>
<p2:Requirement
name="org.eclipse.egit.feature.group"/>
<p2:Requirement
name="org.eclipse.epp.mpc.feature.group"/>
<p2:Requirement
name="org.eclipse.jgit.feature.group"/>
<p2:Requirement
name="org.eclipse.launchbar.feature.group"/>
<p2:Requirement
name="org.eclipse.launchbar.remote.feature.group"/>
<p2:Requirement
name="org.eclipse.linuxtools.cdt.libhover.devhelp.feature.feature.group"/>
<p2:Requirement
name="org.eclipse.linuxtools.cdt.libhover.feature.feature.group"/>
<p2:Requirement
name="org.eclipse.linuxtools.changelog.c.feature.group"/>
<p2:Requirement
name="org.eclipse.linuxtools.gcov.feature.group"/>
<p2:Requirement
name="org.eclipse.linuxtools.gprof.feature.feature.group"/>
<p2:Requirement
name="org.eclipse.linuxtools.rpm.feature.group"/>
<p2:Requirement
name="org.eclipse.linuxtools.valgrind.feature.group"/>
<p2:Requirement
name="org.eclipse.mylyn.wikitext_feature.feature.group"/>
<p2:Requirement
name="org.eclipse.tm.terminal.connector.cdtserial.feature.feature.group"/>
<p2:Requirement
name="org.eclipse.tm.terminal.feature.feature.group"/>
<p2:Requirement
name="org.eclipse.tracecompass.gdbtrace.feature.group"/>
<p2:Requirement
name="org.eclipse.tracecompass.lttng2.control.feature.group"/>
<p2:Requirement
name="org.eclipse.tracecompass.lttng2.kernel.feature.group"/>
<p2:Requirement
name="org.eclipse.tracecompass.lttng2.ust.feature.group"/>
</xmi:XMI>
Ed Merks
Professional Support: https://www.macromodeling.com/
|
|
|
Powered by
FUDForum. Page generated in 0.03729 seconds