SebKuzminsky / pycam

Other
340 stars 98 forks source link

Error pycam start #138

Closed valeriob01 closed 5 years ago

valeriob01 commented 5 years ago

~/pycam/pycam$ ./run_gui.py Enabled 4 parallel local processes Storing a state revision (1/20) Font directory: /home/valerio/pycam/share/fonts Traceback (most recent call last): File "./run_gui.py", line 318, in main_func() File "./run_gui.py", line 306, in main_func exit_code = execute(parser, args, pycam) File "./run_gui.py", line 230, in execute show_gui(workspace_filename=args.workspace_filename) File "./run_gui.py", line 112, in show_gui plugin_manager.import_plugins() File "/home/valerio/pycam/pycam/Plugins/init.py", line 273, in import_plugins self._load_plugin(plugin, filename, name) File "/home/valerio/pycam/pycam/Plugins/init.py", line 296, in _load_plugin self.enable_plugin(plugin_name) File "/home/valerio/pycam/pycam/Plugins/init.py", line 317, in enable_plugin plugin.enabled = plugin.setup() File "/home/valerio/pycam/pycam/Plugins/WebKitVisualization.py", line 40, in setup get_x3d_handler(self.core.get("get_x3d_export"))) File "/home/valerio/pycam/pycam/Utils/httpserver.py", line 196, in create_with_random_port return cls((host, port), handler) File "/home/valerio/pycam/pycam/Utils/httpserver.py", line 172, in init self.httpd = http.server.ThreadingHTTPServer(address, handler) AttributeError: module 'http.server' has no attribute 'ThreadingHTTPServer'

sumpfralle commented 5 years ago

Uh - indeed I picked a recently added feature of that standard library module: it requires python 3.7 :(

I will fix that.

sumpfralle commented 5 years ago

Fixed in e63aae44.

valeriob01 commented 5 years ago

It is starting now, but still it requires MESA_GL_VERSION_OVERRIDE="3.0 Mesa 17.2.5"

$ MESA_GL_VERSION_OVERRIDE="3.0 Mesa 17.2.5" ./run_gui.py Enabled 4 parallel local processes Storing a state revision (1/20) Font directory: /home/valerio/pycam/share/fonts Loading workspace from file: /home/valerio/.pycam/workspace.yml Imported 2 items into 'tools' Imported 2 items into 'processes' Imported 1 items into 'bounds' Imported 2 items into 'tasks' Imported 1 items into 'models' Imported STL model: 12 triangles Imported 1 items into 'export_settings'

(run_gui.py:811): Gtk-WARNING **: Allocating size to GtkWindow 0x5633a71e6260 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate?

(run_gui.py:811): Gtk-CRITICAL **: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkNotebook

(run_gui.py:811): Gtk-CRITICAL **: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkNotebook

(run_gui.py:811): Gtk-CRITICAL **: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkNotebook

(run_gui.py:811): Gtk-WARNING **: Allocating size to GtkBox 0x5633a71e8170 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate?

(run_gui.py:811): Gtk-WARNING **: Allocating size to GtkWindow 0x5633a71e6260 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate?

(run_gui.py:811): Gtk-WARNING **: Allocating size to GtkBox 0x5633a71e8170 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate?

(run_gui.py:811): Gtk-WARNING : Allocating size to GtkWindow 0x5633a71e6260 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate? Storing a state revision (2/20) Storing a state revision (3/20) Storing a state revision (4/20) Storing a state revision (5/20) Disabling all plugins Removing 'process_surfacing' from collection 'CollectionName.PROCESSES' Removing 'process_slicing' from collection 'CollectionName.PROCESSES' Removing 'rough' from collection 'CollectionName.TASKS' Removing 'fine' from collection 'CollectionName.TASKS' ** skipped 1 similar message(s) Removing 'rough' from collection 'CollectionName.TOOLS' Failed to find item in collection (CollectionName.PROCESSES): process_slicing (expected: []) skipped 1 similar message(s) Failed to unregister unknown display item: show_tool Multiprocessing disabled Remaining listeners for event 'bounds-list-changed': <bound method ListPluginBase._update_model of <pycam.Plugins.Bounds.Bounds object at 0x7f125135c7f0>>

sumpfralle commented 5 years ago

Where did you notice a reference to OpenGL?

The new code just embeds a webkit widget into the GTK window. I cannot imagine, how this could fail.

valeriob01 commented 5 years ago

The webkit widget just shows up a blank window without MESA_GL_VERSION_OVERRIDE="3.0 Mesa 17.2.5"

sumpfralle commented 5 years ago

What a pity :(

I assume that your host is running all other OpenGL-related applications without problems?

valeriob01 commented 5 years ago

Not sure to catch all the humour here. Pycam is the only one application I run.

sumpfralle commented 5 years ago

Not sure to catch all the humour here.

Same for me :)

For clarification: I did not intend to pour humour into my previous question.

Are you running a virtualization setup or something similar? I am really confused, that something as widespread as webkit (used in modern browsers) could fail to work properly with OpenGL. But on the other hand, there are probably just too many layers involved ...

valeriob01 commented 5 years ago

No. I run Debian and everything else is Ok.

valeriob01 commented 5 years ago

Not sure to catch all the humour here.

Same for me :)

For clarification: I did not intend to pour humour into my previous question.

So that's why I didn't catch it at first :-)

sumpfralle commented 5 years ago

This is a really confusing situation. I hoped to evade any potential client-specific issues by using a widespread implementation :(

I opened a separate issue for this problem: #139

valeriob01 commented 5 years ago

Right now it is working straight. No need for the MESA stuff. The buttons on top of the window (center, top, etc.) do not work.

screenshot from 2019-02-15 11-15-37