Page 1 of 2 12 LastLast
Results 1 to 10 of 15

Thread: Can't compile HeeksCAD

  1. #1

    Default Can't compile HeeksCAD

    Hi,
    I'm trying to compile heekscad which is a tool I use for my work. I'm able to compile it with Fedora 25 in my notebook but I can't do it with my up to date Tumbleweed desktop.

    This is the error message I get right after beginning compilation:

    Code:
    ...
    In file included from /home/luispa/src/heekscad-master/src/stdafx.h:263:0,
                     from /home/luispa/src/heekscad-master/interface/DoubleInput.cpp:5:
    /home/luispa/src/heekscad-master/src/HeeksCAD.h: At global scope:
    /home/luispa/src/heekscad-master/src/HeeksCAD.h:227:8: warning: ‘template<class> class std::auto_ptr’ is deprecated [-Wdeprecated-declarations]
       std::auto_ptr<VectorFonts> m_pVectorFonts; // QCAD format fonts that have been loaded.
            ^~~~~~~~
    In file included from /usr/include/c++/7/bits/locale_conv.h:41:0,
                     from /usr/include/c++/7/locale:43,
                     from /usr/include/c++/7/iomanip:43,
                     from /home/luispa/src/heekscad-master/src/stdafx.h:42,
                     from /home/luispa/src/heekscad-master/interface/DoubleInput.cpp:5:
    /usr/include/c++/7/bits/unique_ptr.h:51:28: note: declared here
       template<typename> class auto_ptr;
                                ^~~~~~~~
    In file included from /home/luispa/src/heekscad-master/src/stdafx.h:263:0,
                     from /home/luispa/src/heekscad-master/interface/DoubleInput.cpp:5:
    /home/luispa/src/heekscad-master/src/HeeksCAD.h:236:8: warning: ‘template<class> class std::auto_ptr’ is deprecated [-Wdeprecated-declarations]
       std::auto_ptr<CAutoSave> m_pAutoSave;
            ^~~~~~~~
    In file included from /usr/include/c++/7/bits/locale_conv.h:41:0,
                     from /usr/include/c++/7/locale:43,
                     from /usr/include/c++/7/iomanip:43,
                     from /home/luispa/src/heekscad-master/src/stdafx.h:42,
                     from /home/luispa/src/heekscad-master/interface/DoubleInput.cpp:5:
    /usr/include/c++/7/bits/unique_ptr.h:51:28: note: declared here
       template<typename> class auto_ptr;
                                ^~~~~~~~
    In file included from /home/luispa/src/heekscad-master/src/stdafx.h:263:0,
                     from /home/luispa/src/heekscad-master/interface/DoubleInput.cpp:5:
    /home/luispa/src/heekscad-master/src/HeeksCAD.h:426:8: warning: ‘template<class> class std::auto_ptr’ is deprecated [-Wdeprecated-declarations]
       std::auto_ptr<VectorFonts> & GetAvailableFonts(const bool force_read = false);
            ^~~~~~~~
    In file included from /usr/include/c++/7/bits/locale_conv.h:41:0,
                     from /usr/include/c++/7/locale:43,
                     from /usr/include/c++/7/iomanip:43,
                     from /home/luispa/src/heekscad-master/src/stdafx.h:42,
                     from /home/luispa/src/heekscad-master/interface/DoubleInput.cpp:5:
    /usr/include/c++/7/bits/unique_ptr.h:51:28: note: declared here
       template<typename> class auto_ptr;
                                ^~~~~~~~
    In file included from /usr/include/wx-3.0/wx/intl.h:17:0,
                     from /usr/include/wx-3.0/wx/wx.h:22,
                     from /home/luispa/src/heekscad-master/src/stdafx.h:29,
                     from /home/luispa/src/heekscad-master/interface/DoubleInput.cpp:5:
    /home/luispa/src/heekscad-master/interface/DoubleInput.cpp: In member function ‘virtual const wxChar* CInputApply::GetTitle()’:
    /home/luispa/src/heekscad-master/interface/DoubleInput.cpp:19:34: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in return
      const wxChar* GetTitle(){return _("Apply");}
                                      ^
    /home/luispa/src/heekscad-master/interface/DoubleInput.cpp: In member function ‘virtual const wxChar* CInputApply::GetToolTip()’:
    /home/luispa/src/heekscad-master/interface/DoubleInput.cpp:21:36: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in return
      const wxChar* GetToolTip(){return _("Accept value and continue");}
                                        ^
    /home/luispa/src/heekscad-master/interface/DoubleInput.cpp: In member function ‘virtual const wxChar* CInputCancel::GetTitle()’:
    /home/luispa/src/heekscad-master/interface/DoubleInput.cpp:29:34: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in return
      const wxChar* GetTitle(){return _("Cancel");}
                                      ^
    /home/luispa/src/heekscad-master/interface/DoubleInput.cpp: In member function ‘virtual const wxChar* CInputCancel::GetToolTip()’:
    /home/luispa/src/heekscad-master/interface/DoubleInput.cpp:31:36: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in return
      const wxChar* GetToolTip(){return _("Cancel operation");}
                                        ^
    make[2]: *** [interface/CMakeFiles/heeksintf.dir/build.make:63: interface/CMakeFiles/heeksintf.dir/DoubleInput.cpp.o] Error 1
    make[1]: *** [CMakeFiles/Makefile2:86: interface/CMakeFiles/heeksintf.dir/all] Error 2
    make: *** [Makefile:130: all] Error 2
    Any workaround for this?

    Thank you very much in advance,
    Luis Pablo

  2. #2
    Join Date
    Sep 2008
    Posts
    2,997

    Default Re: Can't compile HeeksCAD

    there is a build available for TW
    https://software.opensuse.org/package/HeeksCAD
    0.7 is available from the Education repo
    and 1.0.1712 from a user repo home:bmwiedemann:cnc
    your best bet is to add the home:bmwiedemann:cnc repo and just install it
    Code:
    zypper ar -f http://download.opensuse.org/repositories/home:/bmwiedemann:/cnc/openSUSE_Tumbleweed/home:bmwiedemann:cnc.repo
    zypper in heekscad

  3. #3
    Join Date
    Jun 2008
    Location
    San Diego, Ca, USA
    Posts
    11,153
    Blog Entries
    2

    Default Re: Can't compile HeeksCAD

    First,
    As @I_A has provided for you, the app is available pre-compiled and ready for installation.

    FYI-
    The error your compilation is throwing says that several methods in the build have been deprecated and no longer supported. This suggests that the GCC (or whatever compiler is being used is the problem, which is a not uncommon problem in Tumbleweed since bleeding edge tools are always being made available and are installed.

    This suggests that an older gcc can be installed to compile this app until they update their code.

    TSU
    Beginner Wiki Quickstart - https://en.opensuse.org/User:Tsu2/Quickstart_Wiki
    Solved a problem recently? Create a wiki page for future personal reference!
    Learn something new?
    Attended a computing event?
    Post and Share!

  4. #4

    Default Re: Can't compile HeeksCAD

    Thank you very much for your replies. I tried with the precompiled packages but I had no luck with them. Education version has a broken dependency and the other repo installs OK but I get this error when I try to launch it:
    Code:
    Fatal Error: Mismatch between the program and library build versions detected.
    The library used 2.8 (no debug,Unicode,compiler with C++ ABI 1011,wx containers,compatible with 2.6),
    and your program used 2.8 (no debug,Unicode,compiler with C++ ABI 1010,wx containers,compatible with 2.6).
    Abortado (`core' generado)
    I recently upgraded to Fedora 26 so I needed to recompile Heekscad again. Fedora 26 is as bleeding edge as Tumbleweed however I can compile Heekscad on Fedora despite software versions are almost the same. This is the compilation output on Fedora:

    Code:
    cmake -DCMAKE_INSTALL_PREFIX=/usr ..                                       
    -- The C compiler identification is GNU 7.1.1
    -- The CXX compiler identification is GNU 7.1.1
    -- Check for working C compiler: /usr/lib64/ccache/cc
    -- Check for working C compiler: /usr/lib64/ccache/cc -- works
    -- Detecting C compiler ABI info
    -- Detecting C compiler ABI info - done
    -- Detecting C compile features
    -- Detecting C compile features - done
    -- Check for working CXX compiler: /usr/lib64/ccache/c++
    -- Check for working CXX compiler: /usr/lib64/ccache/c++ -- works
    -- Detecting CXX compiler ABI info
    -- Detecting CXX compiler ABI info - done
    -- Detecting CXX compile features
    -- Detecting CXX compile features - done
    -- Found wxWidgets: -pthread;;;-lwx_baseu-3.0;-lwx_gtk3u_core-3.0;-lwx_gtk3u_gl-3.0 (found version "3.0.3") 
    -- Found PkgConfig: /usr/bin/pkg-config (found version "1.3.7") 
    -- Checking for module 'libarea'
    --   Package 'libarea', required by 'virtual:world', not found
    -- libarea_INCLUDE_DIRS:     /usr/include/area
    -- libarea_LIBRARIES:     /usr/lib64/libarea.so
    -- CMAKE_BUILD_TYPE: 
    -- CMAKE_INSTALL_PREFIX: /usr
    -- LIB_INSTALL_DIR: /usr/lib
    -- Found PythonLibs: /usr/lib64/libpython2.7.so (found version "2.7.13") 
    -- Found OpenGL: /usr/lib64/libGL.so  
    -- Found wxWidgets: -pthread;;;-lwx_baseu-3.0;-lwx_gtk3u_core-3.0;-lwx_gtk3u_gl-3.0;-lwx_gtk3u_aui-3.0 (found version "3.0.3") 
    -- wxWidgets_LIBRARIES: -pthread;;;-lwx_baseu-3.0;-lwx_gtk3u_core-3.0;-lwx_gtk3u_gl-3.0;-lwx_gtk3u_aui-3.0
    -- wxWidgets_ROOT_DIR: 
    -- wxWidgets_INCLUDE_DIRS: /usr/lib64/wx/include/gtk3-unicode-3.0;/usr/include/wx-3.0
    -- Configuring done
    -- Generating done
    -- Build files have been written to: /home/luispa/src/heekscad-master/build
    [luispa@luispa build]$ make
    Scanning dependencies of target heeksintf
    [  1%] Building CXX object interface/CMakeFiles/heeksintf.dir/DoubleInput.cpp.o
    In file included from /home/luispa/src/heekscad-master/src/stdafx.h:263:0,
                     from /home/luispa/src/heekscad-master/interface/DoubleInput.cpp:5:
    /home/luispa/src/heekscad-master/src/HeeksCAD.h:227:8: aviso: ‘template<class> class std::auto_ptr’ es obsoleto [-Wdeprecated-declarations]
       std::auto_ptr<VectorFonts> m_pVectorFonts; // QCAD format fonts that have been loaded.
            ^~~~~~~~
    In file included from /usr/include/c++/7/bits/locale_conv.h:41:0,
                     from /usr/include/c++/7/locale:43,
                     from /usr/include/c++/7/iomanip:43,
                     from /home/luispa/src/heekscad-master/src/stdafx.h:42,
                     from /home/luispa/src/heekscad-master/interface/DoubleInput.cpp:5:
    /usr/include/c++/7/bits/unique_ptr.h:51:28: nota: se declara aquí
       template<typename> class auto_ptr;
                                ^~~~~~~~
    In file included from /home/luispa/src/heekscad-master/src/stdafx.h:263:0,
                     from /home/luispa/src/heekscad-master/interface/DoubleInput.cpp:5:
    /home/luispa/src/heekscad-master/src/HeeksCAD.h:236:8: aviso: ‘template<class> class std::auto_ptr’ es obsoleto [-Wdeprecated-declarations]
       std::auto_ptr<CAutoSave> m_pAutoSave;
            ^~~~~~~~
    In file included from /usr/include/c++/7/bits/locale_conv.h:41:0,
                     from /usr/include/c++/7/locale:43,
                     from /usr/include/c++/7/iomanip:43,
                     from /home/luispa/src/heekscad-master/src/stdafx.h:42,
                     from /home/luispa/src/heekscad-master/interface/DoubleInput.cpp:5:
    /usr/include/c++/7/bits/unique_ptr.h:51:28: nota: se declara aquí
       template<typename> class auto_ptr;
                                ^~~~~~~~
    In file included from /home/luispa/src/heekscad-master/src/stdafx.h:263:0,
                     from /home/luispa/src/heekscad-master/interface/DoubleInput.cpp:5:
    /home/luispa/src/heekscad-master/src/HeeksCAD.h:426:8: aviso: ‘template<class> class std::auto_ptr’ es obsoleto [-Wdeprecated-declarations]
       std::auto_ptr<VectorFonts> & GetAvailableFonts(const bool force_read = false);
            ^~~~~~~~
    In file included from /usr/include/c++/7/bits/locale_conv.h:41:0,
                     from /usr/include/c++/7/locale:43,
                     from /usr/include/c++/7/iomanip:43,
                     from /home/luispa/src/heekscad-master/src/stdafx.h:42,
                     from /home/luispa/src/heekscad-master/interface/DoubleInput.cpp:5:
    /usr/include/c++/7/bits/unique_ptr.h:51:28: nota: se declara aquí
       template<typename> class auto_ptr;
                                ^~~~~~~~
    [  2%] Building CXX object interface/CMakeFiles/heeksintf.dir/Geom.cpp.o
    And this is the compilation output on Tumbleweed:

    Code:
    luispa@linux-3uiw:~/src/heekscad/build> cmake -DCMAKE_INSTALL_PREFIX=/usr ..
    -- The C compiler identification is GNU 7.1.1
    -- The CXX compiler identification is GNU 7.1.1
    -- Check for working C compiler: /usr/bin/cc
    -- Check for working C compiler: /usr/bin/cc -- works
    -- Detecting C compiler ABI info
    -- Detecting C compiler ABI info - done
    -- Detecting C compile features
    -- Detecting C compile features - done
    -- Check for working CXX compiler: /usr/bin/c++
    -- Check for working CXX compiler: /usr/bin/c++ -- works
    -- Detecting CXX compiler ABI info
    -- Detecting CXX compiler ABI info - done
    -- Detecting CXX compile features
    -- Detecting CXX compile features - done
    -- Found wxWidgets: -L/usr/lib64;-pthread;;;-lwx_baseu-3.0;-lwx_gtk2u_core-3.0;-lwx_gtk2u_gl-3.0 (found version "3.0.3") 
    -- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.2") 
    -- Checking for module 'libarea'
    --   No package 'libarea' found
    -- libarea_INCLUDE_DIRS:     /usr/include/area
    -- libarea_LIBRARIES:     /usr/lib64/libarea.so
    -- CMAKE_BUILD_TYPE: 
    -- CMAKE_INSTALL_PREFIX: /usr
    -- LIB_INSTALL_DIR: /usr/lib
    -- Found PythonLibs: /usr/lib64/libpython2.7.so (found version "2.7.13") 
    -- Found OpenGL: /usr/lib64/libGL.so  
    -- Found wxWidgets: -L/usr/lib64;-pthread;;;-lwx_baseu-3.0;-lwx_gtk2u_core-3.0;-lwx_gtk2u_gl-3.0;-lwx_gtk2u_aui-3.0 (found version "3.0.3") 
    -- wxWidgets_LIBRARIES: -L/usr/lib64;-pthread;;;-lwx_baseu-3.0;-lwx_gtk2u_core-3.0;-lwx_gtk2u_gl-3.0;-lwx_gtk2u_aui-3.0
    -- wxWidgets_ROOT_DIR: 
    -- wxWidgets_INCLUDE_DIRS: /usr/lib64/wx/include/gtk2-unicode-3.0;/usr/include/wx-3.0
    -- Configuring done
    -- Generating done
    -- Build files have been written to: /home/luispa/src/heekscad/build
    luispa@linux-3uiw:~/src/heekscad/build> make                                                                                                                                                              
    Scanning dependencies of target heeksintf                                                                                                                                                                 
    [  1%] Building CXX object interface/CMakeFiles/heeksintf.dir/DoubleInput.cpp.o                                                                                                                           
    In file included from /usr/include/wx-3.0/wx/intl.h:17:0,
                     from /usr/include/wx-3.0/wx/wx.h:22,
                     from /home/luispa/src/heekscad/src/stdafx.h:29,
                     from /home/luispa/src/heekscad/interface/DoubleInput.cpp:5:
    /home/luispa/src/heekscad/src/../interface/HeeksObj.h: In member function ‘virtual const wxChar* HeeksObj::GetTypeString() const’:
    /home/luispa/src/heekscad/src/../interface/HeeksObj.h:123:56: error: cannot convert ‘const wxString’ to ‘const wxChar* {aka const wchar_t*}’ in return
      virtual const wxChar* GetTypeString(void)const{return _("Unknown");}
    ...
    make[2]: *** [interface/CMakeFiles/heeksintf.dir/build.make:63: interface/CMakeFiles/heeksintf.dir/DoubleInput.cpp.o] Error 1
    make[1]: *** [CMakeFiles/Makefile2:86: interface/CMakeFiles/heeksintf.dir/all] Error 2
    make: *** [Makefile:130: all] Error 2
    I think there should be some way to configure gcc for dealing with deprecated expressions but I don't know how to do it.

  5. #5
    Join Date
    Jun 2008
    Location
    San Diego, Ca, USA
    Posts
    11,153
    Blog Entries
    2

    Default Re: Can't compile HeeksCAD

    More than likely you have both gcc7 and gcc6 installed (I assume gcc6 will work for you)
    You can test whether gcc6 is installed by running the following in a console
    Code:
    zypper se -i gcc
    If you don't know how to specify a gcc in your makefile,
    I wrote an article how to create an update-alternatives for you gcc so you can switch your entire system between versions however you wish.
    https://en.opensuse.org/User:Tsu2/gc...e-alternatives

    Following my instructions,
    You can easily switch to gcc6 for this specific project and then if you wish switch back to gcc7 (or not).

    BTW -
    Tumbleweed is not comparable to Fedora 26 (current, released Jan 2017).
    Tumbleweed is more comparable to Fedora Rawhide.

    TSU
    Beginner Wiki Quickstart - https://en.opensuse.org/User:Tsu2/Quickstart_Wiki
    Solved a problem recently? Create a wiki page for future personal reference!
    Learn something new?
    Attended a computing event?
    Post and Share!

  6. #6

    Default Re: Can't compile HeeksCAD

    Thank you very much for your help.

    The situation got a bit better by downgrading wx packages to 2.8 version but it still gives a compilation error:

    Code:
    [ 82%] Building CXX object src/CMakeFiles/heekscad.dir/SolidTools.cpp.o
    In file included from /home/luispa/src/heekscad/src/stdafx.h:263:0,
                     from /home/luispa/src/heekscad/src/SolidTools.cpp:5:
    /home/luispa/src/heekscad/src/HeeksCAD.h:227:8: aviso: ‘template<class> class std::auto_ptr’ es obsoleto [-Wdeprecated-declarations]
       std::auto_ptr<VectorFonts> m_pVectorFonts; // QCAD format fonts that have been loaded.
            ^~~~~~~~
    In file included from /usr/include/c++/7/bits/locale_conv.h:41:0,
                     from /usr/include/c++/7/locale:43,
                     from /usr/include/c++/7/iomanip:43,
                     from /home/luispa/src/heekscad/src/stdafx.h:42,
                     from /home/luispa/src/heekscad/src/SolidTools.cpp:5:
    /usr/include/c++/7/bits/unique_ptr.h:51:28: nota: se declara aquí
       template<typename> class auto_ptr;
                                ^~~~~~~~
    In file included from /home/luispa/src/heekscad/src/stdafx.h:263:0,
                     from /home/luispa/src/heekscad/src/SolidTools.cpp:5:
    /home/luispa/src/heekscad/src/HeeksCAD.h:236:8: aviso: ‘template<class> class std::auto_ptr’ es obsoleto [-Wdeprecated-declarations]
       std::auto_ptr<CAutoSave> m_pAutoSave;
            ^~~~~~~~
    In file included from /usr/include/c++/7/bits/locale_conv.h:41:0,
                     from /usr/include/c++/7/locale:43,
                     from /usr/include/c++/7/iomanip:43,
                     from /home/luispa/src/heekscad/src/stdafx.h:42,
                     from /home/luispa/src/heekscad/src/SolidTools.cpp:5:
    /usr/include/c++/7/bits/unique_ptr.h:51:28: nota: se declara aquí
       template<typename> class auto_ptr;
                                ^~~~~~~~
    In file included from /home/luispa/src/heekscad/src/stdafx.h:263:0,
                     from /home/luispa/src/heekscad/src/SolidTools.cpp:5:
    /home/luispa/src/heekscad/src/HeeksCAD.h:426:8: aviso: ‘template<class> class std::auto_ptr’ es obsoleto [-Wdeprecated-declarations]
       std::auto_ptr<VectorFonts> & GetAvailableFonts(const bool force_read = false);
            ^~~~~~~~
    In file included from /usr/include/c++/7/bits/locale_conv.h:41:0,
                     from /usr/include/c++/7/locale:43,
                     from /usr/include/c++/7/iomanip:43,
                     from /home/luispa/src/heekscad/src/stdafx.h:42,
                     from /home/luispa/src/heekscad/src/SolidTools.cpp:5:
    /usr/include/c++/7/bits/unique_ptr.h:51:28: nota: se declara aquí
       template<typename> class auto_ptr;
                                ^~~~~~~~
    /home/luispa/src/heekscad/src/SolidTools.cpp: En la función miembro ‘virtual void OutlineSolids::Run()’:
    /home/luispa/src/heekscad/src/SolidTools.cpp:133:23: error: ‘UniteCurves’ no es un miembro de ‘CArea’
       CArea area = CArea::UniteCurves(OutlineSolids_curves);
                           ^~~~~~~~~~~
    make[2]: *** [src/CMakeFiles/heekscad.dir/build.make:1791: src/CMakeFiles/heekscad.dir/SolidTools.cpp.o] Error 1
    make[1]: *** [CMakeFiles/Makefile2:251: src/CMakeFiles/heekscad.dir/all] Error 2
    make: *** [Makefile:130: all] Error 2
    Things are "82%" better than in the initial situation but I'm still unable to compile it. Any idea?

    I'd like to solve this for making this post useful for fellows how may want to compile Heekscad in the future.

  7. #7
    Join Date
    Sep 2008
    Posts
    2,997

    Default Re: Can't compile HeeksCAD

    I'd say see the spec file from home:/bmwiedemann:
    and see if you have the needed packages
    https://build.opensuse.org/package/v....spec?expand=1
    from that file I don't think it's a gcc issue but a wxWidgets-wxcontainer-devel
    https://software.opensuse.org/packag...ontainer-devel (you'd need wxWidgets-wxcontainer which is not included in the OSS repo not sure why)
    https://software.opensuse.org/packag...ts-wxcontainer
    maybe you'd be better off downloading the src.rpm and building with rpmbuild
    http://download.opensuse.org/reposit...2-4.73.src.rpm
    download and install that rpm as an ordinary user (NOT ROOT)
    Code:
    rpm -i http://download.opensuse.org/repositories/home:/bmwiedemann:/cnc/openSUSE_Tumbleweed/src/HeeksCAD-1.0.1712-4.73.src.rpm
    then go in ~/rpmbuild/SPEC and execute
    Code:
    rpmbuild -bb HeeksCAD.spec
    the output rpm can be found in ~/rpmbuild/RPMS/x86_64
    rpmbuild will report on missing dependencies that ./configure && make would ignore

  8. #8

    Default Re: Can't compile HeeksCAD

    I finally compiled Heekscad. Here's a resume of my experience. I donwgraded wx packages to version 2.8 and installed additional packages.

    Wx stuff installed:
    libwx_baseu-2_8-0-compat-lib-wxcontainer
    libwx_baseu-2_8-0-wxcontainer
    libwx_baseu-suse-nostl3
    libwx_baseu-suse3
    libwx_baseu_net-2_8-0-compat-lib-wxcontainer
    libwx_baseu_net-suse-nostl3
    libwx_baseu_net-suse3
    libwx_baseu_xml-2_8-0-compat-lib-wxcontainer
    libwx_baseu_xml-2_8-0-wxcontainer
    libwx_baseu_xml-suse-nostl3
    libwx_baseu_xml-suse3
    libwx_gtk2u_adv-2_8-0-compat-lib-wxcontainer
    libwx_gtk2u_adv-suse-nostl3
    libwx_gtk2u_adv-suse3
    libwx_gtk2u_aui-2_8-0-compat-lib-wxcontainer
    libwx_gtk2u_aui-2_8-0-wxcontainer
    libwx_gtk2u_aui-suse3
    libwx_gtk2u_core-2_8-0-compat-lib-wxcontainer
    libwx_gtk2u_core-2_8-0-wxcontainer
    libwx_gtk2u_core-suse-nostl3
    libwx_gtk2u_core-suse3
    libwx_gtk2u_fl-2_8-0-compat-lib-wxcontainer
    libwx_gtk2u_fl-2_8-0-wxcontainer
    libwx_gtk2u_gizmos-2_8-0-compat-lib-wxcontainer
    libwx_gtk2u_gl-2_8-0-compat-lib-wxcontainer
    libwx_gtk2u_gl-2_8-0-wxcontainer
    libwx_gtk2u_gl-suse3
    libwx_gtk2u_html-2_8-0-compat-lib-wxcontainer
    libwx_gtk2u_html-suse-nostl3
    libwx_gtk2u_html-suse3
    libwx_gtk2u_media-suse3
    libwx_gtk2u_mmedia-2_8-0-compat-lib-wxcontainer
    libwx_gtk2u_ogl-2_8-0-compat-lib-wxcontainer
    libwx_gtk2u_plot-2_8-0-compat-lib-wxcontainer
    libwx_gtk2u_propgrid-suse3
    libwx_gtk2u_qa-2_8-0-compat-lib-wxcontainer
    libwx_gtk2u_qa-2_8-0-wxcontainer
    libwx_gtk2u_qa-suse-nostl3
    libwx_gtk2u_qa-suse3
    libwx_gtk2u_richtext-2_8-0-compat-lib-wxcontainer
    libwx_gtk2u_richtext-suse3
    libwx_gtk2u_stc-2_8-0-compat-lib-wxcontainer
    libwx_gtk2u_stc-suse-nostl3
    libwx_gtk2u_stc-suse3
    libwx_gtk2u_svg-2_8-0-compat-lib-wxcontainer
    libwx_gtk2u_webview-suse3
    libwx_gtk2u_xrc-2_8-0-compat-lib-wxcontainer
    libwx_gtk2u_xrc-suse3
    libwxlua
    wxWidgets-docs
    wxWidgets-wxcontainer-compat-lib-config
    wxWidgets-wxcontainer-devel

    And
    libXmu-devel
    boost_1_64-devel
    libboost_python-py2_7-1_64_0-devel
    libboost_python-py3-1_64_0-devel
    oce
    oce-DRAWEXE
    oce-devel

    libarea must be compiled from source
    git clone https://github.com/Heeks/libarea.git

    After compiling heekscad
    Copy or symlink
    /usr/lib/libheekstinyxml* to /usr/lib64/libheekstinyxml*
    /usr/lib/libarea* to /usr/lib64/libarea*

    After that I compiled Heekscnc because I need it for CAM work. Heekscad starts OK but... (there's always a "but")... when I load a big file (i.e. 9MB) Heekscad becomes incredibly unresponsive, it takes several minutes for responding to a simple click in the menu bar. It also happened in Manjaro KDE current version but it doesn't happen on Fedora or Ubuntu precompiled packages.

    The only warning when launching it from the console is this (right after opening a file):

    Code:
    ** (heekscad:2950): WARNING **: Invalid borders specified for theme pixmap:
            /usr/share/themes/Breeze/gtk-2.0/../assets/line-h.png,
    borders don't fit within the image
    Any idea?

    This is the application I use the most and if I can't use it with OpenSUSE I'll be forced to move to Fedora or Ubuntu or an Ubuntu derivative.

    Thank you very much in advance

  9. #9
    Join Date
    Sep 2008
    Posts
    2,997

    Default Re: Can't compile HeeksCAD

    using old libraries on TW is a bad idea and will potentially break your system if you want a stable release (not rolling) you can use LEAP (42.3 just came out)
    did you try building it with the spec file, as you can see from that file (link bellow) there are different dependencies for *suse and fedora and as far as I can tell Fedora 26 is alpha software not comparable to TW TW is more like Arch
    https://build.opensuse.org/package/v....spec?expand=1
    imo if you want a stable distro use LEAP
    if you can deal with the latest and greatest (which might have a hiccup here and there) use TW
    update TW to the current release by running
    Code:
    zypper dup --no-allow-vendor-change
    use the prebuild package of HeeksCAD or use the spec file to build it (does that loading error occur with the binary rpm?)
    Code:
    man rpmbuild
    you can also build it with ./configure && make
    but see the spec file for the needed dependencies

    ps
    the warning
    Code:
    ** (heekscad:2950): WARNING **: Invalid borders specified for theme pixmap:
            /usr/share/themes/Breeze/gtk-2.0/../assets/line-h.png,
    borders don't fit within the image
    can be ignored Breeze is a plasma 5 theme ported to gtk2 and gtk3 it might have issues with them you can ignore that warning or use a different gtk theme (how to change the gtk2 theme depends on the desktop you use)

  10. #10
    Join Date
    Sep 2008
    Posts
    2,997

    Default Re: Can't compile HeeksCAD

    if the program builds with wxWidgets 2.8.0 but fails with 2.8.12 you should open a bug report at
    http://bugzilla.opensuse.org/
    you might get better help there
    you should report that your app builds with 2.8.0 but fails with 2.8.12

Page 1 of 2 12 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •