kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #33865
Re: [PATCH] Allow OpenCASCADE standard edition
Nick was having an unknown issue but I haven't heard back from him on
whether the issue was resolved by doing a clean cmake. If it isn't then
I'll need to address that.
Nick did you have a chance to test that?
-S
2018-02-10 6:18 GMT-08:00 Wayne Stambaugh <stambaughw@xxxxxxxxx>:
> Seth,
>
> What is the current status of this patch? I would like to get it merged
> before rc1 so the package devs can test it.
>
> Cheers,
>
> Wayne
>
> On 01/30/2018 02:12 PM, Seth Hillbrand wrote:
> > Nick-
> >
> > Thanks for the test. I'm attaching revised patch that allows multiple
> > OpenCASCADE installations on a single machine.
> >
> > I've tested with a few different OpenCASCADE versions down to 6.8 with
> > no issues installed alongside OCE 0.17. You can choose which you want
> > to link by using either "-DKICAD_USE_OCE" or "-DKICAD_USE_OCC". If both
> > are specified, "-DKICAD_USE_OCC" will override.
> >
> > I corrected the cmake message display to be less doubled and correctly
> > show the library location.
> >
> > I've also added the OCC version and type to the about window version
> info.
> >
> > The "Based on" line was taken from
> > (https://github.com/FreeCAD/FreeCAD/blob/master/src/FCConfig.h) when
> > trying to determine how FreeCAD likes to refer to themselves. The
> > actual FindOpenCascade.cmake file did not have a copyright header
> > attached but falls under the license from
> > (https://github.com/FreeCAD/FreeCAD/blob/master/COPYING). I note that I
> > had it written as "FreeCAD CADx development system". I've corrected
> > this to read "FreeCAD CAx development system".
> >
> > I'm not sure to what the "CheckSymbolExists" line is referring. I don't
> > see it on my machine.
> >
> > -Seth
> >
> > 2018-01-29 14:30 GMT-08:00 Nick Østergaard <oe.nick@xxxxxxxxx
> > <mailto:oe.nick@xxxxxxxxx>>:
> >
> > Hi Seth,
> >
> > I just took the patch for a testrun and will state some comments
> below.
> >
> > This looks a bit strange:
> >
> > -- Boost version: 1.66.0
> > -- -- OpenCASCADE Community Edition has been found.
> > -- -- Found OCE/OpenCASCADE version: 6.8.0
> > -- -- OCE/OpenCASCADE include directory:
> > /opt/oce/lib/oce-0.17/../../include/oce
> > -- -- OCE/OpenCASCADE shared libraries directory:
> > -- Check for installed Python Interpreter -- found
> >
> > The messages are with double -- and the shared libs.
> >
> > But an improvement with your patch over what is currently in kicad
> > is that it found OCE on my system without explicitly specifind
> > OCE_DIR. But how do I make it use OCCT when I also have OCE
> installed?
> >
> > What does CADx mean in that header?
> >
> > What is this about?
> > -- Looking for
> > /home/amazingdude/kicad-source-mirror/build_seths_
> occt_patch_occt/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx
> > -- Looking for
> > /home/amazingdude/kicad-source-mirror/build_seths_
> occt_patch_occt/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx
> > - not found
> >
> > I tried to test it with removing oce and just have occt installed
> > and got something like this:
> > -- Found OCC: /opt/opencascade/inc (found version "6.9.1")
> > -- -- Found OCE/OpenCASCADE version: 6.9.1
> > -- -- OCE/OpenCASCADE include directory: /opt/opencascade/inc
> > -- -- OCE/OpenCASCADE shared libraries directory:
> /opt/opencascade/lib
> >
> > It did not build against community/opencascade 6.9.1-7. I got the
> > following error in a clean build dir.
> >
> > $ make kicad2step -j1
> > [ 0%] Linking CXX executable kicad2step
> > /usr/bin/ld: cannot find -lTKMesh
> > /usr/bin/ld: cannot find -lTKernel
> > /usr/bin/ld: cannot find -lTKG2d
> > /usr/bin/ld: cannot find -lTKG3d
> > /usr/bin/ld: cannot find -lTKMath
> > /usr/bin/ld: cannot find -lTKIGES
> > /usr/bin/ld: cannot find -lTKSTL
> > /usr/bin/ld: cannot find -lTKXSBase
> > /usr/bin/ld: cannot find -lTKBin
> > /usr/bin/ld: cannot find -lTKBO
> > /usr/bin/ld: cannot find -lTKCDF
> > /usr/bin/ld: cannot find -lTKBRep
> > /usr/bin/ld: cannot find -lTKTopAlgo
> > /usr/bin/ld: cannot find -lTKGeomAlgo
> > /usr/bin/ld: cannot find -lTKGeomBase
> > /usr/bin/ld: cannot find -lTKPrim
> > /usr/bin/ld: cannot find -lTKSTEP
> > /usr/bin/ld: cannot find -lTKSTEPBase
> > /usr/bin/ld: cannot find -lTKSTEPAttr
> > /usr/bin/ld: cannot find -lTKFeat
> > /usr/bin/ld: cannot find -lTKCAF
> > /usr/bin/ld: cannot find -lTKXCAF
> > /usr/bin/ld: cannot find -lTKLCAF
> > /usr/bin/ld: cannot find -lTKXDESTEP
> > /usr/bin/ld: cannot find -lTKXDEIGES
> > collect2: error: ld returned 1 exit status
> > make[3]: ***
> > [utils/kicad2step/CMakeFiles/kicad2step.dir/build.make:355:
> > utils/kicad2step/kicad2step] Error 1
> > make[2]: *** [CMakeFiles/Makefile2:3007:
> > utils/kicad2step/CMakeFiles/kicad2step.dir/all] Error 2
> > make[1]: *** [CMakeFiles/Makefile2:3019:
> > utils/kicad2step/CMakeFiles/kicad2step.dir/rule] Error 2
> > make: *** [Makefile:979: kicad2step] Error 2
> >
> > But those libs do existm, searched for the last one;
> > $ yaourt -Ql opencascade | grep TKXDEIGES
> > opencascade /opt/opencascade/lib/libTKXDEIGES.so
> > opencascade /opt/opencascade/lib/libTKXDEIGES.so.0
> > opencascade /opt/opencascade/lib/libTKXDEIGES.so.0.0.0
> >
> > I got these variables set in the CMakeCache
> >
> > cat CMakeCache.txt | grep "OCE\|OCC"
> > KICAD_USE_OCE:BOOL=ON
> > OCC_INCLUDE_DIR:PATH=/opt/opencascade/inc
> > OCC_LIBRARY:FILEPATH=/opt/opencascade/lib/libTKernel.so
> > //The directory containing a CMake configuration file for OCE.
> > OCE_DIR:PATH=OCE_DIR-NOTFOUND
> > //Details about finding OCC
> > FIND_PACKAGE_MESSAGE_DETAILS_OCC:INTERNAL=[/opt/
> opencascade/inc][v6.9.1()]
> >
> > This is tested on archlinux.
> >
> > 2018-01-29 19:54 GMT+01:00 Seth Hillbrand <seth.hillbrand@xxxxxxxxx
> > <mailto:seth.hillbrand@xxxxxxxxx>>:
> >
> > Hi All-
> >
> > Currently, the build requires the opencascade community
> > edition. For various reasons, I need to have the current
> > non-community edition of OpenCASCADE installed on my work
> machine.
> >
> > The attached patch allows compiling KiCad with either the
> > OpenCASCADE community edition or standard edition.
> >
> > I've tested on a homebrew-based Mac install as well as Linux but
> > haven't verified MSW, if someone would be willing to test it
> > there, that would be great! The basic search routines are
> > lightly modified from FreeCAD's logic and keep their LGPL
> > copyright on the CMake file.
> >
> > -Seth
> >
> >
> > _______________________________________________
> > Mailing list: https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>
> > Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
> > <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
> > Unsubscribe : https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>
> > More help : https://help.launchpad.net/ListHelp
> > <https://help.launchpad.net/ListHelp>
> >
> >
> >
> >
> >
> > _______________________________________________
> > Mailing list: https://launchpad.net/~kicad-developers
> > Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
> > Unsubscribe : https://launchpad.net/~kicad-developers
> > More help : https://help.launchpad.net/ListHelp
> >
>
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help : https://help.launchpad.net/ListHelp
>
Follow ups
References