New short wiki pages on Debian & packaging

Discussions about the wiki documentation of FreeCAD and its translation.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
User avatar
sgrogan
Veteran
Posts: 6499
Joined: Wed Oct 22, 2014 5:02 pm

Re: New short wiki pages on Debian & packaging

Post by sgrogan »

vocx wrote: Wed Dec 11, 2019 11:25 pm You can just edit the page itself. It doesn't matter if it's a work in progress.
Thanks, I'm shy.
I'll start with this

Code: Select all

Windows Packaging

Because windows doesn't have a consistent package manager, the biggest challenge to packaging FreeCAD, is maintaining and distributing the FreeCAD dependency stack. And then building FreeCAD against these dependencies. There are a few methods to do this, I think they fall into 3 categories;

1. Use the Libpack 12.x versions from apeltauer and then build with some tool (Cmake/VS2015+ for ex., but other build chains are possible)
2. Use Conda/MiniConda as a package manager/dependency solver (substitute to the Libpack), then external tools. Here you will need to utilize CMake
3.  Use Conda/MiniConda as an environment, then use Conda's native build tools.

On Windows, it can not be assumed that the dependencies are available, very similar to AppImage, So all the relevant .dll's and pyd's (.so's on Linux) must be included in the bundle. 

There is some utility in packaging FreeCAD from the build directory rather than the install directory (this is mostly for people who compile themselves without installation). 

Beginning in 0.19 there are some CMake switches that allow to copy specific stuff and not everything from Libpack/bin to build/bin or install/bin. At the moment you just need to know what has to be copied.  Help here is requested, whitelist/blacklist seems hard to maintain.

After the structure is set up its just a matter of .7z that directory or compiling with NSIS(more details required)
WinPackaging.odt
(13.05 KiB) Downloaded 15 times
"fight the good fight"
Post Reply