New libpacks for Windows with Qt5.15, OCC7.5

Having trouble installing or compiling FreeCAD? Get help here.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Post Reply
User avatar
apeltauer
Posts: 399
Joined: Fri Aug 11, 2017 2:19 pm

New libpacks for Windows with Qt5.15, OCC7.5

Post by apeltauer »

Hi all,

i have created and uploaded a new LibPack for windows.
The libpack 12.3.1 includes occ 7.4.
The libpack 12.3.2 includes occ 7.4 and Qt 5.12.6

Also a netgen build can be found here. Builded against occ 7.4.
https://github.com/apeltauer/FreeCAD/re ... ack_12.3.1

Modifications to build FC with occ 7.4 were introduced with this pr https://github.com/FreeCAD/FreeCAD/pull/2944

Known issues which have to be fixed:
1. Selftest: TestPartDesignApp

Code: Select all

Traceback (most recent call last):
  File "C:\Work\FreeCAD_dev\bin\bin\lib\unittest\case.py", line 59, in testPartExecutor
    yield
  File "C:\Work\FreeCAD_dev\bin\bin\lib\unittest\case.py", line 605, in run
    testMethod()
  File "C:\Work\FreeCAD_dev\bin\Mod\PartDesign\PartDesignTests\TestHole.py", line 78, in testTaperedHole
    self.assertEqual(len(self.Hole.Shape.Faces), 8)
  File "C:\Work\FreeCAD_dev\bin\bin\lib\unittest\case.py", line 829, in assertEqual
    assertion_func(first, second, msg=msg)
  File "C:\Work\FreeCAD_dev\bin\bin\lib\unittest\case.py", line 822, in _baseAssertEqual
    raise self.failureException(msg)
AssertionError: 7 != 8
2. Fem can not build because the netgen plugin needs some code modifications for occ 7.4
Last edited by apeltauer on Thu Dec 03, 2020 2:26 pm, edited 2 times in total.
User avatar
DeepSOIC
Veteran
Posts: 7896
Joined: Fri Aug 29, 2014 12:45 am
Location: used to be Saint-Petersburg, Russia

Re: New libpacks for Windows with Qt5.12.6, OCC7.4

Post by DeepSOIC »

Great, thanks @apeltauer!
wmayer
Founder
Posts: 20202
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: New libpacks for Windows with Qt5.12.6, OCC7.4

Post by wmayer »

Thanks from me, too!
2. Fem can not build because the netgen plugin needs some code modifications for occ 7.4
Is this because the API of OCCT has changed?
User avatar
apeltauer
Posts: 399
Joined: Fri Aug 11, 2017 2:19 pm

Re: New libpacks for Windows with Qt5.12.6, OCC7.4

Post by apeltauer »

wmayer wrote: Sat Feb 01, 2020 9:31 am Thanks from me, too!
2. Fem can not build because the netgen plugin needs some code modifications for occ 7.4
Is this because the API of OCCT has changed?
I think so. When i use the netgen binaries from the old Libpack it won’t start. I think this happens because of j interface changes... Building fc against the latest netgen (which you can also find next to the Libpack) causes some errors in the netgen plugin...
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: New libpacks for Windows with Qt5.12.6, OCC7.4

Post by looo »

wmayer wrote: Sat Feb 01, 2020 9:31 am Is this because the API of OCCT has changed?
@trelau has already fixed this in the branch here: https://github.com/LaughlinResearch/SME ... its/master
In my eyes we should use this fork instead of using our own fork.
wmayer
Founder
Posts: 20202
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: New libpacks for Windows with Qt5.12.6, OCC7.4

Post by wmayer »

looo wrote: Sat Feb 01, 2020 9:40 am
wmayer wrote: Sat Feb 01, 2020 9:31 am Is this because the API of OCCT has changed?
@trelau has already fixed this in the branch here: https://github.com/LaughlinResearch/SME ... its/master
In my eyes we should use this fork instead of using our own fork.
+1

What do you suggest how to use it? As a git sub-module or providing a separate package for all supported platforms (an updated libpack for Windows, PPA for Ubuntu, ...)?

There once was a PR to update to 8.3 (https://github.com/FreeCAD/FreeCAD/pull/2706) which apparently wasn't building on all platforms. If we used the fork from trelau instead it would save us quite some extra work.

We should think about this after the next release, then.
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: New libpacks for Windows with Qt5.12.6, OCC7.4

Post by looo »

wmayer wrote: Sat Feb 01, 2020 10:29 am What do you suggest how to use it? As a git sub-module or providing a separate package for all supported platforms (an updated libpack for Windows, PPA for Ubuntu, ...)?
For conda we already build the smesh fork from @trelau for all platforms (win, linux, osx). As far as I remember @hobbes (red-hat packages) already use another external smesh-library and therefore switching to the @trelau-fork shouldn't be too much work.
Updating the libpack shouldn't be too much work either. Not sure how the libpack is created, but all that has to be changed is:

1. build the mentioned smesh fork (compare the conda recipe [1])
2. build freecad with -DFREECAD_USE_EXTERNAL_SMESH:BOOL=ON [2]


For ubuntu/ debian, I don't know. I guess it's up to @kkremitzky to create a new package for smesh for debian-testing. In the short run a package can be uploaded also to the ppa. But as far as I know this can't be used for debian.

[1] https://github.com/conda-forge/smesh-fe ... pe/bld.bat
[2] https://github.com/FreeCAD/FreeCAD/blob ... ions.cmake
wmayer
Founder
Posts: 20202
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: New libpacks for Windows with Qt5.12.6, OCC7.4

Post by wmayer »

apeltauer wrote: Sat Feb 01, 2020 9:37 am
wmayer wrote: Sat Feb 01, 2020 9:31 am Thanks from me, too!
2. Fem can not build because the netgen plugin needs some code modifications for occ 7.4
Is this because the API of OCCT has changed?
I think so. When i use the netgen binaries from the old Libpack it won’t start. I think this happens because of j interface changes... Building fc against the latest netgen (which you can also find next to the Libpack) causes some errors in the netgen plugin...
Just using the binaries of an older netgen version of course doesn't work because it's built with OCC 7.3 and thus usually is binary incompatible to OCC 7.4

I recommend to use the sources of the older netgen you used once to build with OCC 7.3 and rebuild it using OCC 7.4. The build failures of the netgen plugin is not because of API changes of OCC but of the newer netgen version. There e.g. the class OCCRefinementSurfaces has been removed and some global variables have become class variables.
Furthermore it seems to use some very recent C++ features causing many build failure when trying to use the platform toolset v141 (VS 2017)
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: New libpacks for Windows with Qt5.12.6, OCC7.4

Post by Kunda1 »

Quick question, would it be possible to add OpenSSL to the libpack? This is because of https://forum.freecadweb.org/viewtopic. ... 48#p370348 (see below)
vejmarie wrote: Wed Feb 19, 2020 9:22 pm fill up the sign up form at the front page ;). You will be needing a FreeCAD 0.19 build with the CLOUD workbench pre-compiled. It works actually on MacOS and Linux. I was not able to make it work on Windows as the libpack need to be updated with OpenSSL to support S3 protocole, and I honestly do not know how to do it !
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
User avatar
vejmarie
Posts: 713
Joined: Mon Jan 04, 2016 4:52 pm
Location: Somewhere between France, USA and Taiwan
Contact:

Re: New libpacks for Windows with Qt5.12.6, OCC7.4

Post by vejmarie »

Kunda1 wrote: Thu Feb 20, 2020 4:18 am Quick question, would it be possible to add OpenSSL to the libpack? This is because of https://forum.freecadweb.org/viewtopic. ... 48#p370348 (see below)
vejmarie wrote: Wed Feb 19, 2020 9:22 pm fill up the sign up form at the front page ;). You will be needing a FreeCAD 0.19 build with the CLOUD workbench pre-compiled. It works actually on MacOS and Linux. I was not able to make it work on Windows as the libpack need to be updated with OpenSSL to support S3 protocole, and I honestly do not know how to do it !
That will be amazing if we could do a Windows build with the Cloud module. We need more testers and following discussions @fosdem I really think we could build something smart. Yorik also met with the blender foundation people who have started a cloud service which is great. I am trying to see if we could build up a model where we could enable our end users community to work together. By the way the Cloud workbench requires also the CURL library. I'll be introducing this work at the next Open Compute Summit in march in California and it will be great to see if we could have a windows build by then.
Post Reply