Compile on Windows/fr

Cette page explique étape par étape comment compiler FreeCAD 0.19 ou plus récent sous Windows en utilisant le compilateur MSVC de Microsoft. Pour des informations sur l'utilisation de MSYS2/MinGW voir Compiler sous MinGW. Pour les autres plateformes, voir Compiler.

Prérequis
La compilation de FreeCAD sous Windows nécessite plusieurs outils et bibliothèques.

Requis

 * Un compilateur. FreeCAD est testé avec Visual Studio (MSVC). D'autres compilateurs peuvent fonctionner, mais les instructions d'utilisation ne sont pas incluses ici. Plus de détails dans, ci-dessous.


 * Git (Il existe également des interfaces GUI disponibles pour Git, voir la section suivante.)


 * CMake version 3.11.x ou plus récente. Astuce : Choisir l'option Ajouter CMake au chemin du système pour tous les utilisateurs lors de l'installation de CMake rendra CMake accessible depuis l'invite de commande Windows, ce qui peut être utile.


 * LibPack (également appelé FreeCADLibs). Il s'agit d'un package unique contenant toutes les bibliothèques nécessaires à la compilation de FreeCAD sous Windows. Téléchargez la version du LibPack qui correspond à la version de FreeCAD que vous voulez compiler. Pour compiler FreeCAD 0.19 ou la dernière version en développement 0.20, téléchargez LibPack for 0.19/0.20 (64-bit seulement). Extrayez le LibPack à un endroit approprié. (Si votre ordinateur ne reconnaît pas l'extension .7z, vous devez installer le programme 7-zip). Remarque : Il est fortement recommandé de compiler FreeCAD avec la version du compilateur pour laquelle le LibPack est conçu. Par exemple, vous pourriez rencontrer des problèmes pour compiler FreeCAD 0.19 avec MSVC 15 parce que le LibPack pour 0.19 est conçu pour être construit avec MSVC 17.

Programmes optionnels

 * Une interface graphique pour Git. Plusieurs interfaces sont disponibles, voir cette liste. L'avantage principal d'une interface est qu'il n'est pas nécessaire d'apprendre les commandes Git pour obtenir le code source de FreeCAD ou pour envoyer des correctifs au référentiel GitHub de FreeCAD.

Nous décrivons ci-après la gestion du code source à l'aide de l'interface TortoiseGit. Cette interface s'intègre directement dans l'explorateur de fichiers Windows et dispose d'une large communauté d'utilisateurs pour obtenir de l'aide en cas de problème.


 * NSIS est utilisé pour générer le programme d'installation de FreeCAD Windows.

Code source
Vous pouvez maintenant obtenir le code source de FreeCAD :

Utiliser une interface
Lorsque vous utilisez le Git frontend TortoiseGit :
 * 1) Créez un nouveau dossier dans lequel le code source sera téléchargé.
 * 2) Cliquez avec le bouton droit de la souris sur ce dossier dans l'explorateur de fichiers Windows et sélectionnez Git Clone dans le menu contextuel.
 * 3) Une boîte de dialogue apparaîtra. Dans celui-ci, entrez l'URL du dépôt FreeCAD Git

https://github.com/FreeCAD/FreeCAD.git

et cliquez sur OK.

Le dernier code source sera téléchargé à partir du dépôt FreeCAD Git et le dossier sera suivi par Git.

Utiliser la ligne de commande
Pour créer une branche locale et télécharger le code source, vous devez ouvrir un terminal (invite de commande) et entrez dans le répertoire ou vous désirez placer le code source, puis tapez :

Compiler
Le compilateur par défaut (recommandé) est MS Visual Studio (MSVC). Bien qu'il soit possible d'utiliser d'autres compilateurs, par exemple gcc via Cygwin ou MinGW, cela n'est pas testé ni couvert ici.

Vous pouvez obtenir une version gratuite de MSVC (pour un usage individuel) en téléchargeant l 'édition Community de MS Visual Studio.

Pour ceux qui ne veulent pas installer l'énorme MSVC uniquement pour avoir un compilateur, voir CompileOnWindows - Réduire l'espace disque.

Remarque : Bien que l'édition Community de MSVC soit gratuite, pour utiliser l'EDI pendant plus de 30 jours, vous devez créer un compte Microsoft. Si vous ne compilez qu'en utilisant la ligne de commande, vous n'avez pas besoin de l'EDI et donc pas de compte Microsoft.

Comme alternative gratuite et OpenSource IDE, vous pouvez utiliser KDevelop. Vous pouvez utiliser KDevelop pour modifier et écrire du code C ++, mais vous devez utiliser la ligne de commande pour compiler.

Chemin de Configuration Système optionnel
Vous pouvez éventuellement inclure les chemins d'accès à certains dossiers de la variable système PATH. Ceci est utile si vous souhaitez accéder aux programmes de ces dossiers à partir de la ligne de commande/powershell ou si vous souhaitez que des programmes spéciaux soient trouvés par le compilateur ou CMake. En outre, l’ajout de dossiers à PATH peut s’avérer nécessaire si vous n’utilisez pas les options correspondantes lors de l’installation du programme.


 * Vous pouvez inclure le dossier de votre LibPack dans votre variable système PATH. Ceci est utile si vous envisagez de créer plusieurs configurations/versions de FreeCAD.
 * Si vous n'avez pas utilisé l'option permettant d'ajouter CMake à PATH lors de son installation, ajoutez son dossier d'installation

C:\Program Files\CMake\bin à PATH.
 * Si vous n'avez pas utilisé l'option permettant d'ajouter TortoiseGit à PATH lors de son installation, ajoutez son dossier d'installation

C:\Program Files\TortoiseGit\bin à PATH.

Pour ajouter à votre chemin au système :
 * 1) Dans le menu Démarrer de Windows, cliquez avec le bouton droit de la souris sur Ordinateur et choisissez Propriétés.
 * 2) Dans la boîte de dialogue qui apparaît, cliquez sur Paramètres système avancés.
 * 3) Une autre boîte de dialogue s'ouvrira. Cliquez sur l'onglet Avancé sur Variables d'environnement.
 * 4) Encore une autre boîte de dialogue s'ouvrira. Sélectionnez ensuite la variable Path et cliquez sur Editer.
 * 5) Une autre boîte de dialogue s'ouvrira. Cliquez ici sur Nouveau et ajoutez le chemin d'accès au dossier de Git ou du LibPack.
 * 6) Enfin, appuyez sur OK et fermez toutes les boîtes de dialogue en appuyant sur OK.

Configuration
Une fois que vous avez tous les outils, bibliothèques et code source FreeCAD nécessaires, vous êtes prêt à commencer le processus de configuration et de compilation. Ce processus se déroulera en cinq étapes :
 * 1) Exécutez CMake une fois pour examiner votre système et commencer la progression de la configuration (cela signalera qu'il a échoué).
 * 2) Ajustez les paramètres CMake nécessaires pour définir les emplacements du LibPack et activer Qt5.
 * 3) Relancez CMake pour finaliser la configuration (cette fois, cela devrait réussir).
 * 4) Utilisez CMake pour générer le système de build Visual Studio.
 * 5) Utilisez Visual Studio pour créer FreeCAD.

CMake
Tout d'abord, configurez l'environnement de construction à l'aide de CMake :
 * 1) Ouvrez l'interface graphique de CMake
 * 2) Spécifiez le dossier source de FreeCAD.
 * 3) Spécifiez un dossier de compilation (n'utilisez pas le dossier source - CMake créera ce dossier s'il n'existe pas).
 * 4) Cliquez sur Configure.
 * 5) Dans la boîte de dialogue qui apparaît, spécifiez le générateur que vous souhaitez utiliser: dans la plupart des cas, vous utiliserez les valeurs par défaut de cette boîte de dialogue. Pour le MS Visual Studio standard, utilisez Visual Studio xx 2yyy où xx est la version du compilateur et 2yyy l'année de sa sortie. Il est recommandé d'utiliser l'option par défaut Use default native compilers.

Remarque: Il est important de spécifier la variante de bit correcte. Si vous avez la variante 64 bits de LibPack, vous devez également utiliser le compilateur x64.

Cela commencera la configuration et échouera à cause de paramètres manquants. C'est normal, vous n'avez pas encore spécifié l'emplacement du LibPack. Cependant, d'autres problèmes peuvent survenir et nécessiter une action supplémentaire de votre part.

S'il échoue avec le message "Visual Studio est introuvable", la prise en charge de CMake dans MSVC n'est pas encore installée. Pour l'installer :
 * 1) Ouvrez l'EDI MSVC
 * 2) Utilisez le menu Outils → Obtenir les outils et fonctionnalités
 * 3) Dans l'onglet Workloads, activez Développement de bureau avec C++
 * 4) Sur le côté droit, vous devriez maintenant voir que le composant Outils Visual C++ pour CMake sera installé.
 * 5) Installez-le.

Si cela échoue avec un message sur la mauvaise version de Python ou Python manquant, alors :
 * 1) Utilisez la case "Search:" dans CMake pour rechercher la chaîne "Python"
 * 2) Si vous y voyez un chemin comme C:/Program Files/Python38/python.exe, CMake a reconnu le Python qui est déjà installé sur votre PC, mais cette version n'est pas compatible avec le LibPack. Étant donné que le LibPack inclut une version compatible de Python, modifiez les paramètres Python suivants dans CMake sur ses chemins (en supposant que le LibPack se trouve dans le dossier D:\FreeCAD-build\FreeCADLibs_12.5.2_x64_VC17) :

S'il n'y a pas d'erreur à propos de Visual Studio ou Python, tout va bien, mais CMake ne connaît pas encore tous les paramètres nécessaires. Donc maintenant :
 * 1) Recherchez dans CMake la variable FREECAD_LIBPACK_DIR et spécifiez l'emplacement du dossier LibPack que vous avez téléchargé précédemment.
 * 2) Seulement si vous compilez FreeCAD 0.19, cherchez la variable BUILD_QT5 et activez cette option.
 * 3) Cliquez à nouveau sur Configure.

Il ne devrait plus y avoir d’erreurs. Si vous continuez à rencontrer des erreurs que vous ne pouvez pas diagnostiquer, allez sur le Forum Install/Compile de FreeCAD. Si CMake a procédé correctement, cliquez sur Generate. Une fois cela fait, vous pouvez fermer CMake et démarrer la compilation de FreeCAD à l'aide de Visual Studio. Cependant, pour la première compilation, gardez-le ouvert au cas où vous voudriez ou auriez besoin de changer certaines options pour le processus de construction.

Remarque : Lors de la compilation de FreeCAD 0.19, la variable CMake BUILD_ENABLE_CXX_STD sera fixée à C++14 alors que pour FreeCAD 0.20 elle sera fixée à C++17. Ceci est dû au fait que FreeCAD 0.20 requiert au moins la version 17 du standard du langage C++. Donc quand vous avez compilé la dernière fois FreeCAD 0.19, il est nécessaire de relancer CMake pour FreeCAD 0.20 pour changer le standard du langage C++.

Options pour le procédé de compilation
Le système de compilation CMake vous permet de contrôler certains aspects du processus de compilation. En particulier, vous pouvez activer et désactiver certaines fonctionnalités ou modules à l'aide des variables CMake.

Voici la description de certaines de ces variables :

Compilation de FreeCAD
En fonction de votre compilateur, le processus de construction de FreeCAD sera légèrement différent. Dans les sections suivantes, vous décrivez les flux de travail connus. Si vous construisez avec Qt Creator, passez à Compiler avec Qt Creator, sinon, procédez directement :

Version de Build
Cela va prendre pas mal de temps.
 * 1) Démarrez l'IDE Visual Studio. Cela peut être effectué en appuyant sur le bouton Ouvrir un projet dans l'interface graphique de CMake ou en double-cliquant sur le fichier FreeCAD.sln que vous trouvez dans votre dossier de construction.
 * 2) Dans la barre d’outils de l’EDI MSVC, assurez-vous que vous utilisez pour la première compilation Release.
 * 3) Il y a une fenêtre appelée Solution Explorer. Elle répertorie toutes les cibles de compilation possibles. Pour démarrer une compilation complète, faites un clic droit sur la cible ALL_BUILD puis choisissez Build.

Pour compiler un FreeCAD prêt à l’emploi, compilez la cible INSTALL, voir la section Exécution et installation de FreeCAD.

Si vous n'obtenez aucune erreur, vous avez terminé. Félicitations ! Vous pouvez quitter MSVC ou le garder ouvert.

Remarque : FreeCAD 0.20 nécessite au moins la version 17 du langage standard C++ mais le composant tiers flann du LibPack n'est pas encore prêt pour cela. Par conséquent, vous aurez des erreurs de compilation pour la cible ReverseEngineering. Pour résoudre ce problème, faites un clic droit sur cette cible dans l'explorateur de solutions MSVC et sélectionnez dans le menu contextuel la dernière entrée Properties. Dans la boîte de dialogue qui apparaît, changez le C++ Language Standard en ISO C++14. Enfin, recompilez la cible ALL_BUILD.

Build de débogage
Pour une version de débogage, il est nécessaire d'utiliser le Python inclus dans le LibPack. Pour assurer cela :
 * 1) Recherchez "Python" dans l'interface graphique de CMake
 * 2) Si vous y voyez un chemin comme 'C:/Program Files/Python38/python.exe, CMake a reconnu le Python qui est installé sur votre PC et non celui du LibPack. Dans ce cas, adaptez ces différents paramètres Python dans CMake à cela (en supposant que le LibPack se trouve dans le dossier D:\FreeCAD-build\FreeCADLibs_12.5.2_x64_VC17'') :

Maintenant Cela prendra maintenant beaucoup de temps. S'il n'y a pas eu d'erreurs de compilation, vous pouvez démarrer la compilation de débogage :
 * 1) Démarrez l'IDE de Visual Studio. Cela peut être fait en appuyant sur le bouton Open Project dans l'interface graphique de CMake ou en double-cliquant sur le fichier «FreeCAD.sln» que vous trouvez dans votre dossier de construction.
 * 2) Dans la barre d'outils de MSVC IDE, assurez-vous que vous utilisez pour la première compilation Debug.
 * 3) Il existe une fenêtre appelée Solution Explorer. Il répertorie toutes les cibles de compilation possibles. Pour démarrer une compilation complète, faites un clic droit sur la cible ALL_BUILD puis choisissez Build dans le menu contextuel.
 * 1) Faites un clic droit sur la cible FreeCADMain puis choisissez Set as Startup Project  dans le menu contextuel.
 * 2) Cliquez enfin dans la barre d'outils sur le bouton avec le triangle vert nommé Local Windows Debugger.

Cela lancera la version de débogage de FreeCAD et vous pourrez utiliser MSVC IDE pour le déboguer.

Ressource vidéo
Tutoriel en anglais qui commence par la configuration dans CMake Gui et continue jusqu'à la commande `Build` dans Visual Studio 16 2019 est disponible non répertorié sur YouTube à Tutorial: Build FreeCAD from source on Windows 10.

Installation et configuration de Qt Creator

 * Téléchargez et installez Qt Creator
 * Outils → Options → Editeur Texte → Behavior tab:
 * File Encodings → Default Encodings:
 * Set to: ISO-8859-1 /...csISOLatin1 (Certain caracteres créent une errors/warnings avec Qt Creator if left set to UTF-8. Cela semble pour corrigé.)
 * Tools → Options → Build & Run:
 * CMake tab
 * Fill Executable box with path to cmake.exe
 * Kits tab
 * Name: MSVC 2008
 * Compiler: Microsoft Visual C++ Compiler 9.0 (x86)
 * Debugger: Détection automatique ...
 * Qt version: None
 * General tab
 * Uncheck: Toujours compiler et déployer le projet
 * Uncheck: Toujours déployer le projet avant de l'exécuter

Importer un projet et compiler

 * File → Open File or Project
 * Open CMakeLists.txt qui est dans le plus haut niveau de la source
 * Ceci démarre CMake
 * Choisissez créer le répertoire et cliquez sur suivant
 * Ensemble de générateurs de NMake Generator (MSVC 2008)
 * Cliquez sur Démarrer CMake. Suivez les instructions décrites ci-dessus pour configurer CMake à votre convenance.

Maintenant FreeCAD est construit
 * Build → Build All
 * Ceci peut prendre du temps...

Une fois terminé, il peut être exécuté: Il y a 2 triangles verts en bas à gauche. Un est pour la mise au point. L'autre est pour l'exécution. Faites votre choix.

Compilation en ligne de commande
Les étapes pour compiler à partir de la ligne de commande dépendent du compilateur. Pour MSVC 2017, les étapes sont les suivantes:
 * 1) Dans le menu Démarrer de Windows, accédez à  et choisissez Invite de commande du développeur pour VS 2017.
 * 2) Allez dans votre dossier de construction.
 * 3) Exécute la commande

ou

Ces étapes peuvent également être automatisées. Voici par exemple une solution pour MSVC 2017 :
 * 1) Téléchargez le script compile-FC.txt.
 * 2) Le renommer en compile-FC.bat
 * 3) Dans l'explorateur de fichiers de Windows, faites Shift+Cliquez-droit sur votre dossier de construction et utilisez-le dans le menu contextuel Invite de commandes ici.
 * 4) Exécute la commande

Au lieu d'appeler compile-FC avec l'option installer, vous pouvez aussi utiliser déboguer ou release :

déboguer  - compiler FreeCAD dans la configuration de débogage

release - compiler FreeCAD dans la configuration de release

install  - compiler FreeCAD dans la configuration de la version et créer une installation

Exécution et installation de FreeCAD
Il existe 2 méthodes pour exécuter la compilation de FreeCAD :

Method 1 : Vous exécutez FreeCAD.exe que vous trouvez dans votre dossier de construction qui se trouve dans le sous-dossier bin

Method 2 : Vous construisez la cible INSTALL

La méthode 2 est la plus simple, car elle assure automatiquement que toutes les bibliothèques requises pour exécuter FreeCAD.exe se trouvent dans le bon dossier. FreeCAD.exe et les bibliothèques seront sortis dans le dossier que vous avez spécifié dans la variable CMake CMAKE_INSTALL_PREFIX.

Pour la méthode 1, vous devez placer les bibliothèques dans le dossier bin de votre dossier de construction (où se trouve FreeCAD.exe). Cela peut être facilement fait en utilisant les variables CMake en option :
 * 1) Ouvrez l'interface graphique de CMake.
 * 2) Recherchez et cochez la variable FREECAD_COPY_DEPEND_DIRS_TO_BUILD. S'il n'y a pas une telle option, les bibliothèques ont déjà été copiées, voir la description des options.
 * 3) Recherchez et cochez la variable FREECAD_COPY_LIBPACK_BIN_TO_BUILD.
 * 4) Recherchez et cochez la variable FREECAD_COPY_PLUGINS_BIN_TO_BUILD.
 * 5) Cliquez sur Configurer. A la fin de la configuration, CMake copiera automatiquement les bibliothèques nécessaires du dossier LibPack.

Troubleshooting
When running FreeCAD you may encounter missing DLLs when using certain workbenches or features of workbenches. The error message in FreeCAD's console will not tell you what DLL is missing. To find this out you must use an external tool:

import os os.system(r"~\DependenciesGui.exe") Note: Instead of the ~ you must specify the full path to the DependenciesGui.exe on your system.
 * Download the latest release of the program Dependencies: https://github.com/lucasg/Dependencies/releases (choose the file Dependencies_x64_Release.zip)
 * In the FreeCAD Python console execute these commands:
 * Now drag in the *.pyd file of the workbench with which you get missing DLLs reported.

Mise à jour de la compilation
FreeCAD est très activement développé. Par conséquent, son code source change presque quotidiennement. De nouvelles fonctionnalités sont ajoutées et des bugs corrigés. Pour bénéficier de ces modifications du code source, vous devez reconstruire votre FreeCAD. Cette reconstruction se fait en deux étapes:
 * 1) Mise à jour du code source
 * 2) Recompilation

Utiliser une interface
Lorsque vous utilisez le Git frontend TortoiseGit :
 * 1) Dans l'explorateur de fichiers Windows faites clic droit sur le dossier de code source FreeCAD et sélectionnez dans le menu contextuel Pull.
 * 2) Une boîte de dialogue apparaîtra. Sélectionnez la branche de développement que vous souhaitez obtenir. master est la branche principale. Par conséquent, utilisez la sauf si vous voulez compiler une nouvelle fonctionnalité spéciale à partir d'une branche qui n'a pas encore été fusionnée avec maître. (Pour plus d'informations sur les branches Git, consultez Processus de développement Git).

Cliquez enfin sur OK.

Utiliser la ligne de commande
Ouvrez un terminal (invite de commande) et accédez au répertoire source. Puis tapez :

où master est le nom de la branche principale du développement. Si vous voulez obtenir le code d’une autre branche, utilisez son nom au lieu de master.

Recompilation

 * 1) Ouvrez l'EDI MSVC en double-cliquant sur le fichier FreeCAD.sln ou sur le fichier ALL_BUILD.vcxproj dans votre dossier de construction.
 * 2) Continuer à l'étape 2 de la section Construire avec Visual Studio 15 2017.

Outils
Pour rejoindre le développement FreeCAD, vous devez compiler et installer les outils suivants :

Le plugin Qt Designer
FreeCAD utilise Qt comme boîte à outils pour son interface utilisateur. Toutes les boîtes de dialogue sont configurées dans des fichiers UI qui peuvent être modifiés à l'aide du programme Qt Designer. Il fait partie de toute installation Qt et également inclus dans le LibPack. FreeCAD a son propre ensemble de widgets Qt pour fournir des fonctionnalités spéciales comme l'ajout d'une unité aux champs de saisie et pour définir les propriétés des préférences.

Compilation
La DLL ne peut pas être chargée en tant que plug-in si elle a été compilée en utilisant une autre version de Qt que celle sur laquelle est basé Qt Designer/Qt Creator. Dans ce cas, vous devez compiler vous-même la DLL. Cela se fait de la manière suivante :


 * In the CMake options (see this section above) enable the option BUILD_DESIGNER_PLUGIN and reconfigure.
 * open MSVC and build the target FreeCAD_widgets

As result you will get the plugin file 'FreeCAD_widgets.dll in the folder ~\src\Tools\plugins\widget\Release

Installation

 * 1) Téléchargez le fichier ZIP. (Compilé en utilisant Qt 5.15, voir ci-dessous.)
 * 2) Extraire le fichier DLL du ZIP.
 * Si vous utilisez le LibPack : dans le dossier ~\FreeCADLibs_12.5.4_x64_VC17\bin\designer Puisqu'il n'y aura qu'un dossier bin et que vous devez d'abord créer le sous-dossier designer.
 * Si vous avez une installation complète de Qt : vous pouvez choisir entre le dossier C:\Qt\5.15.2\msvc2019_64\plugins\designer ou C:\Qt\5.15.2\msvc2019_64\bin\designer (vous devez d'abord créer le sous-dossier designer.) (adaptez les chemins à votre installation !).

(Re)démarrez Qt Designer et vérifiez son menu. Si le plugin FreeCAD_widgets.dll est répertorié comme étant chargé, vous pouvez maintenant concevoir et modifier les fichiers .ui de FreeCAD, sinon vous devez compiler vous-même la DLL.

Si vous préférez utiliser Qt Creator au lieu de Qt Designer, la DLL doit être placée dans ce dossier : C:\Qt\Qt5.15.2\Tools\QtCreator\bin\plugins\designer (Re)démarrez Qt Creator, passez en mode Design puis vérifiez le menu. Si le plugin FreeCAD_widgets.dll est répertorié comme étant chargé, vous pouvez maintenant concevoir et modifier les fichiers .ui de FreeCAD. Sinon, vous devez compiler vous-même la DLL.

Fournisseur de vignettes (Thumbnail)
FreeCAD a la fonctionnalité de fournir des vignettes d'aperçu pour les fichiers *.FCStd. Cela signifie que dans l'explorateur de fichiers Windows, les fichiers *.FCStd sont affichés avec une capture d'écran du modèle qu'il contient. Pour fournir cette fonctionnalité, FreeCAD doit avoir le fichier FCStdThumbnail.dll installé sur Windows.

Installation
La DLL est installée de cette façon :
 * 1) Téléchargez ce fichier ZIP et extrayez-le.
 * 2) Ouvrez une invite de commande Windows avec des privilèges d'administrateur (ces privilèges sont obligatoires).
 * 3) Accédez au dossier où se trouve la DLL.
 * 4) Exécutez cette commande

Vérifiez donc si cela fonctionne, assurez-vous que dans FreeCAD, l'option de préférences Enregistrer la miniature dans le fichier de projet lors de l'enregistrement du document est activée et enregistre un modèle. Affichez ensuite dans l'Explorateur Windows le dossier du modèle enregistré à l'aide d'une vue de symboles. Vous devriez maintenant voir une capture d'écran du modèle dans la vue des dossiers.

Compilation
Pour compiler le FCStdThumbnail.dll
 * 1) Accédez au dossier source FreeCAD ~\src\Tools\thumbs\ThumbnailProvider
 * 2) Ouvrez l'interface graphique de CMake
 * 3) Spécifiez là comme dossier source celui dans lequel vous vous trouvez actuellement.
 * 4) Utilisez le même dossier que le dossier de construction.
 * 5) Cliquez sur Configure
 * 6) Dans la boîte de dialogue qui apparaît, spécifiez le générateur en fonction de celui que vous souhaitez utiliser. Pour le MS Visual Studio standard, utilisez Visual Studio xx 2yyy où xx est la version du compilateur et 2yyy l'année de sa sortie. Il est recommandé d'utiliser l'option par défaut Use default native compilers. Remarque: Il est important de spécifier la variante de bit correcte. Si vous avez la variante 64 bits de LibPack, vous devez également utiliser le compilateur x64.
 * 7) Cliquez sur Generate.
 * 8) Vous devriez maintenant avoir le fichier ALL_BUILD.vcxproj dans le dossier ~\src\Tools\thumbs\ThumbnailProvider. Double-cliquez dessus et l'IDE MSVC s'ouvrira.
 * 9) Dans la barre d'outils de l'EDI MSVC, assurez-vous que vous utilisez la cible de compilation Release.
 * 10) Il y a une fenêtre appelée Solution Explorer. Faites un clic droit là-bas sur ALL_BUILD puis choisissez Build.
 * 11) En conséquence, vous devriez maintenant avoir un FCStdThumbnail.dll dans le dossier ~\src\Tools\thumbs\ThumbnailProvider\release que vous pouvez installer comme décrit ci-dessus.

Compiler OpenCASCADE
Libpack standard est livré avec une version d'OpenCASCADE qui convient à un usage général. Cependant, dans certaines circonstances, vous pouvez souhaiter compiler avec une version alternative d'OpenCASCADE, comme une de leurs versions officielles, ou un fork patché. Notez qu'il n'y a aucune garantie que FreeCAD fonctionnera avec toutes les versions d'OpenCASCADE, et l'utilisation d'une version autre que celle de Libpack est réservée aux utilisateurs avancés. Notez également que si vous utilisez la bibliothèque Netgen, elle utilise OpenCASCADE pour certaines de ses fonctionnalités et doit être compilée avec la même version d'OpenCASCADE que celle que vous utilisez lors de la compilation de FreeCAD.

When compiling Open Cascade for FreeCAD note that there is no guarantee that FreeCAD will work with all versions of Open Cascade. Note also that when you are using the Netgen library, you must use the a NetGen version that it approved to compile with the Open Cascade version you like to compile.

Obtenez d'abord le code source d'OpenCASCADE, soit directement à partir de la page de publication à OpenCASCADE.org, via /occt.git git ou en clonant le fork de quelqu'un d'autre, comme le fork "blobfish" maintenu par le membre du forum FreeCAD tanderson69.

Ensuite, utilisez CMake pour configurer le système de compilation de la même manière que pour la compilation de FreeCAD. Les principales options de CMake pour OpenCASCADE sont les suivantes :
 * 3RDPARTY_DIR - L'emplacement de vos bibliothèques tierces, généralement dans le répertoire Libpack de FreeCAD
 * INSTALL_DIR - Où installer les bibliothèques terminées. Une bonne pratique consiste à utiliser un répertoire isolé sur votre système, plutôt que d'installer globalement ou d'écraser la version du Libpack.


 * Open the project in Visual Studio and first build the ALL_BUILD and then INSTALL targets in the Release mode.
 * Repeat building the two targets in the Debug mode.

To build FreeCAD using the self-compiled Open Cascade, you must do the following:
 * Copy all folders from the INSTALL_DIR to your LibPack folder (overwrite the existing files)
 * Switch to the LibPack folder and go there to the subfolder cmake
 * Open there the file OpenCASCADEDrawTargets.cmake with a text editor
 * Search there for absolute paths to your LibPack folder and remove them. So e.g. the absolute path D:/FreeCADLibs_12.5.4_x64_VC17/lib/freetype.lib becomes just freetype.lib
 * Do the same for the file OpenCASCADEVisualizationTargets.cmake

Compiling Netgen
The LibPack comes with a version of Netgen that will was tested to be build with the Open Cascade version of the LibPack. The problem is that every new release of Netgen changes the API. Also every new release of Open Cascade does the same. Therefore one cannot just easily change the Netgen version.

However, you might build Netgen nevertheless. This is an easy task:


 * First obtain the Netgen source code, either directly from Netgen 's git repository.
 * Then open the CMake GUI to configure the build system in a similar manner to building FreeCAD. These CMake options have to be set:

name: CMAKE_DEBUG_POSTFIX, type: string, content: _d This assures that he file names of the debug libraries get another name than the release libraries and can later not be accidentally exchanged.
 * Additionally you need to add a new CMake entry:


 * Press the Configure button in CMake to generate the *.cmake files.
 * Only necessary if older CPU should be supported that don't have the AVX2 instruction set:
 * Search your Netgen build folder for the file netgen-targets.cmake and open it with a text editor. Remove the setting ;/arch:AVX2 in the Option INTERFACE_COMPILE_OPTIONS.
 * Press the Configure button in CMake again.
 * Press the Generate button in CMake.
 * Open the project in Visual Studio and first build the ALL_BUILD and then INSTALL targets in the Release mode.
 * Repeat building the two targets in the Debug mode.

To build FreeCAD using the self-compiled Netgen, you must do the following:
 * Copy all folders from the CMAKE_INSTALL_PREFIX to your LibPack folder (overwrite the existing files)

Références
Voir aussi
 * Compilation (accélération).