OCCT: what are the modules & toolkits really used by FreeCAD?

Having trouble installing or compiling FreeCAD? Get help here.
User avatar
NormandC
Posts: 12077
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

OCCT: what are the modules & toolkits really used by FreeCAD?

Postby NormandC » Tue Feb 28, 2017 3:57 am

Hey guys,

This question stems from our attempts to package OCCT 7.1.0 for the Ubuntu PPA. https://forum.freecadweb.org/viewtopic.php?f=4&t=17501&start=110#p162301

These are the modules supplied by OCCT, and the toolkits they contain:

FoundationClasses
TKernel TKMath
ModelingData TKG2d TKG3d TKGeomBase TKBRep
ModelingAlgorithms TKGeomAlgo TKTopAlgo TKPrim TKBO TKBool TKHLR TKFillet TKOffset TKFeat TKMesh TKXMesh TKShHealing
Visualization TKService TKV3d TKOpenGl TKMeshVS TKIVtk TKD3DHost
ApplicationFramework TKCDF TKLCAF TKCAF TKBinL TKXmlL TKBin TKXml TKStdL TKStd TKTObj TKBinTObj TKXmlTObj TKVCAF
DataExchange TKXSBase TKSTEPBase TKSTEPAttr TKSTEP209 TKSTEP TKIGES TKXCAF TKXDEIGES TKXDESTEP TKSTL TKVRML TKXmlXCAF TKBinXCAF
Draw TKDraw TKTopTest TKViewerTest TKXSDRAW TKDCAF TKXDEDRAW TKTObjDRAW TKQADraw TKIVtkDraw DRAWEXE

I know FreeCAD needs Foundation, Modeling Data/Algos, Data Exchange. It does not need Visualization nor the Draw Harness (I think?).

What about ApplicationFramework? Are all its toolkits required? Some of them rely on X11 and I think that's the cause for it depending on visualization. I'd like to be able to compile FreeCAD without visualization, but it's a hard dependency of OCAF. If we have no choice we'll turn off visualization building and leave it off from the packages but I'd rather try to see if the hard dependency can be broken somehow.

Last fall an OCCT developer joined the topic I linked and suggested to create as many packages as there are toolkits so we could install only what we need.

It would be great if one of you devs could shed some light on the matter!
wmayer
Site Admin
Posts: 11234
Joined: Thu Feb 19, 2009 10:32 am

Re: OCCT: what are the modules & toolkits really used by FreeCAD?

Postby wmayer » Tue Feb 28, 2017 10:28 am

What about ApplicationFramework? Are all its toolkits required? Some of them rely on X11 and I think that's the cause for it depending on visualization. I'd like to be able to compile FreeCAD without visualization, but it's a hard dependency of OCAF.

Currently we use OCAF in the Import module to extract information beyond pure geometry like colors, labels, assembly structure from STEP or IGES files. Theoretically it's possible to do this with the standard STEP/IGES reader but it is very complicated to get the above information reliably as there are nowhere any usable code example ow to do that.

So, until we don't know how to do otherwise we also need the ApplicationFramework at the moment.
User avatar
NormandC
Posts: 12077
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

Re: OCCT: what are the modules & toolkits really used by FreeCAD?

Postby NormandC » Wed Mar 01, 2017 12:57 am

Thanks Werner. I guess we'll live with the visualization dependency for the time being...