mmodenesi / omnetpy

Using OMNeT++ from python
Other
60 stars 13 forks source link

unable to run on ubuntu or OSX #11

Open dfrey opened 2 years ago

dfrey commented 2 years ago

I tried to test the project using the instructions in the readme but launching omnetpp results in a crash with the following error. I thought the problem was OSX, but I tested in an Ubuntu VM and I am getting exactly the same error.

!SESSION 2022-10-20 10:41:16.312 ----------------------------------------------- eclipse.buildId=6.0.0.200507-e16b5b0502 java.version=11.0.4 java.vendor=AdoptOpenJDK BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US Command-line arguments: -os linux -ws gtk -arch x86_64

!ENTRY org.eclipse.osgi 4 0 2022-10-20 10:41:23.202 !MESSAGE Application error !STACK 1 org.eclipse.swt.SWTError: No more handles [gtk_init_check() failed] at org.eclipse.swt.SWT.error(SWT.java:4749) at org.eclipse.swt.widgets.Display.createDisplay(Display.java:1130) at org.eclipse.swt.widgets.Display.create(Display.java:1070) at org.eclipse.swt.graphics.Device.(Device.java:175) at org.eclipse.swt.widgets.Display.(Display.java:636) at org.eclipse.swt.widgets.Display.(Display.java:627) at org.eclipse.ui.internal.Workbench.createDisplay(Workbench.java:776) at org.eclipse.ui.PlatformUI.createDisplay(PlatformUI.java:166) at org.eclipse.ui.internal.ide.application.IDEApplication.createDisplay(IDEApplication.java:180) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.base/java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:657) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:594) at org.eclipse.equinox.launcher.Main.run(Main.java:1447) at org.eclipse.equinox.launcher.Main.main(Main.java:1420)

mmodenesi commented 2 years ago

Great to know this is being useful to some people.

Please see https://github.com/mmodenesi/omnetpy/issues/2

This has to do with how a process running on a docker container is able to put images on your screen (access the windows manager services...), it is very difficult for me to debug without having access to the actual system. I am being specially vague because my understanding of these kind of low level details is limited.

I suggest you investigate the problem in a broader way, and look for other projects that do a similar thing: to launch a desktop application from a docker container (for example http://fabiorehm.com/blog/2014/09/11/running-gui-apps-with-docker/) and do work on your machine.

Please let me know if you discover something.

Best regards!