QIDITECH / QIDISlicer

QIDISlicer gets your 3D printing easier and faster.
https://qidi3d.com/
GNU Affero General Public License v3.0
59 stars 14 forks source link

Build fails with wxGetApp().get_devices() #96

Closed j0hax closed 6 days ago

j0hax commented 1 month ago

Hello,

I want to package QIDISlicer for NixOS, a source-based Linux distribution (https://github.com/NixOS/nixpkgs/issues/336869). I am following the PrusaSlicer build instructions and am re-using the existing expression for PrusaSlicer 2.7.2 but switching the source code to that of QIDISlicer.

My build makes quite some progress building (around 62% in CMake) but fails at wxGetApp().get_devices();. I noticed this function does not exist in the PrusaSlicer Plater.cpp file. Any help getting QIDISlicer packaged would be very appreciated! 😄

error: builder for '/nix/store/f88f0663r9w4x4a4rcbrz6vrbxq7cvvn-qidi-slicer-1.1.7.drv' failed with exit code 2;
       last 25 log lines:
       >   211 |         int x = size.x;
       >       |
       > /build/source/src/slic3r/GUI/PrinterWebView.hpp:212: warning: unused variable 'y' [-Wunused-variable]
       >   212 |         int y = size.y;
       >       |
       > /build/source/src/slic3r/GUI/Plater.cpp: In member function 'void Slic3r::GUI::Plater::priv::show_action_buttons(bool) const':
       > /build/source/src/slic3r/GUI/Plater.cpp:5115: error: 'class Slic3r::GUI::GUI_App' has no member named 'get_devices'
       >  5115 |     auto m_devices = wxGetApp().get_devices();
       >       |
       > /build/source/src/slic3r/GUI/Plater.cpp: In member function 'void Slic3r::GUI::Plater::calib_max_volumetric_speed(double, double, double)':
       > /build/source/src/slic3r/GUI/Plater.cpp:5982: warning: unused variable 'end_speed' [-Wunused-variable]
       >  5982 |     float end_speed = EndVS / res;
       >       |
       > /build/source/src/slic3r/GUI/Plater.cpp: In member function 'void Slic3r::GUI::Plater::send_gcode()':
       > /build/source/src/slic3r/GUI/Plater.cpp:8016: error: 'class Slic3r::GUI::GUI_App' has no member named 'get_devices'
       >  8016 |     auto       m_devices        = wxGetApp().get_devices();
       >       |
QIDITECH commented 4 weeks ago

wxGetApp().get_devices() We added this functionality ourselves, and the dependencies of prusa 2.7.2 do not include WebView and related functionality. Please use our source code to compile the dependencies and then build the software.