Compiling (Speeding up)/es

This page is for archival purposes only, see the relevant section of the Developers Handbook for up-to-date information.

Vista general

FreeCAD es una aplicación grande que puede tardar entre 10 minutos y una hora en compilarse completamente desde el código fuente. Esto depende principalmente de la CPU y del número de núcleos utilizados en el proceso de compilación. A continuación, le ofrecemos algunos consejos para acortar este proceso y reducir los tiempos de compilación.

CCache

Instale ccache para almacenar en caché las compilaciones.

Ccache acelera la recompilación almacenando en caché compilaciones anteriores y detectando cuándo se realiza la misma compilación nuevamente. Ccache es software libre, distribuido bajo la licencia GPLv3 o posterior.

En la mayoría de los sistemas, ccache se detectará y habilitará automáticamente; puede usar la opción FREECAD_USE_CCACHE cmake para controlar este comportamiento.

Deshabilitar módulos

Al usar cmake para configurar la compilación, puede deshabilitar la compilación de ciertos entornos de desarrollo que no necesite en este momento. Esto es útil si solo necesita probar unos pocos entornos de desarrollo.

Por ejemplo, para evitar la creación de los Entornos de Trabajo FEM y Mesh:

cmake -DBUILD_FEM=OFF -DBUILD_MESH=OFF ../freecad-source

Utilice cmake-gui, cmake-curses-gui o cmake-qt-gui para visualizar todas las variables posibles que se pueden editar en la configuración; mediante estas interfaces, puede activar o desactivar fácilmente diferentes entornos de trabajo.

Número de trabajos en paralelo

Tras configurar cmake, el programa make inicie el compilador de C++ para procesar los archivos del código fuente. Puede acelerar la compilación trabajando con varios archivos simultáneamente. Esto se logra con la opción -j de make, que indica el número de tareas o comandos de compilación que se ejecutan al mismo tiempo. Esta opción es un número entero.

Ejecute cuatro comandos de compilación en paralelo:

make -j4

Compile en paralelo tantos archivos como núcleos de CPU tenga su sistema. Esto es útil si tiene muchos núcleos y quiere usarlos todos para compilar el software.

make -j$(nproc)

Compile en paralelo tantos archivos como núcleos de CPU tenga su sistema, menos dos. Esto permite que su sistema siga respondiendo para realizar otras tareas; por ejemplo, dos núcleos le permitirán usar un navegador mientras el resto compila el software en segundo plano.

make -j$(nproc --ignore=2)

distcc

El programa distcc se puede utilizar para realizar la compilación distribuida de código C y C++ en varias máquinas de una red.

Distcc (https://www.distcc.org/) siempre debería generar los mismos resultados que una compilación local. Es gratuito, fácil de instalar y usar, y a menudo es dos o más veces más rápido que compilar localmente.

El desarrollador de FreeCAD, 'etrombly', ha publicado una breve explicación en sobre cómo instalar distcc para compilar FreeCAD en una red de ordenadores usando Docker.