Compile on MacOS/es

Ya que Mac OS X está basado en BSD (UNIX), la compilación de FreeCAD en Mac no es muy diferente a la Compilación en Unix, sin embargo existen algunos detalles específicos para Mac que son críticos para tener todo funcionando correctamente. Estas instrucciones se han probado en Lion (10.7), pero también deberían funcionar en Intel Macs utilizando (Snow) Leopard.

Descargar las fuentes de FreeCAD
Comprueba la última versión del árbol de código fuente de FreeCAD del repositorio de subversion en Sourceforge:

svn co http://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk free-cad

Instalar dependencias
En Mac OS X 10.7, las siguientes dependencias NO están incluidas con el sistema y por tanto deben ser instaladas antes de construir FreeCAD:


 * sip
 * fortran
 * xerces-c
 * boost
 * eigen
 * ftgl
 * coin3d
 * OpenCASCADE
 * Qt
 * pyqt
 * soqt

Opción 1: Homebrew
Nota: Esta sección está en proceso de construcción! Mira en el foro de ayuda para conocer las últimas novedades.


 * https://sourceforge.net/apps/phpbb/free-cad/viewtopic.php?f=4&t=2064&p=15405

Descarga e instala el gestor de paquetes Homebrew:


 * http://mxcl.github.com/homebrew/

Luego compila e instala la mayoría de dependencias de FreeCAD:

brew install sip gfortran xerces-c boost eigen coin qt pyqt soqt ftgl

Ve a CompileOnMac/es.

Opción 2: MacPorts/Fink
Nota: Esta sección necesita actualizarse.

Instala MacPorts, si aún no lo tienes. MacPorts es un sistema que permite descargar, compilar, e instalar muchas aplicaciones de código libre con un simple comando. Aplicaciones similares en el mundo UNIX/Linux son PKGSRC y APT. Para instalar, simplemente descarga la imagen del disco desde la web de MacPorts y sigue las instrucciones:


 * http://www.macports.org/install.php

Hubieras instalado MacPorts o no, probablemente querrás asegurarte de que está actualizado. Ejecuta:

sudo port selfupdate Ahora que MacPorts está instalado y actualizado, puedes comenzar a instalar algunos paquetes requeridos por FreeCAD:

El comando siguiente compilará/instalará todas las bibliotecas de arriba. Si MacPorts produce errores, puedes tratar de instalarlos uno a uno.
 * xercesc
 * boost
 * py-sip
 * ftlg
 * f2c
 * eigen3
 * py-pyqt4

sudo port install xercesc boost ftgl f2c eigen3 py-sip py-pyqt4

Ten en cuenta que para los paquetes de Python como py-sip y py-pyqt4, existen múltiples paquetes, uno para cada versión de MacPorts de Python.

Ten en cuenta que boost es un paquete bastante grande, y py-pyqt4 depende de qt4-mac, que también es un paquete bastante grande. Puedes querer ejecutar port -v install así tendrás una idea de lo que va sucediendo durante estas construcciones largas.

Instalar un compilador de Fortran

También necesitas un compilador de FORTRAN. El de Apple de gcc en OSX no viene con FORTRAN. Un instalador de GFortran se puede encontrar aquí: http://gcc.gnu.org/wiki/GFortranBinaries#MacOS

Si estas utilizando fink, otro método es utilizar los siguientes comandos (intentado por Shaneyfelt 2100.Nov.14)

sudo fink selfupdate sudo fink install gcc46

''Esto instala otra colección del compilador gcc con el nombre gcc-4 para evitar un conflicto de nombres con el de Apple. Por supuesto esto asume que también tienes fink instalado. Quizá exista un modo más simple?''

Los paquete de gcc4x para MacPorts también incluyen compiladores de FORTRAN, así que esto también debería funcionar:

sudo port install gcc46

Otro paquete posible para MacPorts es g95. Este parece tener un compilador válido para FORTRAN90 y pasará los test de configuración del cmake de FreeCAD, pero la construcción actual parece preguntar por opciones de gcc-specific, así que probablemente se más sencillo pegarlo a gcc4x.

Instalar Eigen3

Descarga y descomprime la última versión de la biblioteca eigen3 aquí: http://eigen.tuxfamily.org/index.php?title=Main_Page Es necesario para la funcionalidad del solucionador. Una vez descomprimido, el directorio denominado 'Eigen' se puede mover dentro de /usr/local/include/eigen3/

Construir OpenCASCADE
Actualmente, el modo más simple de construir OpenCASCADE en OS X es a partir de la (oce). Descarga el código fuente o comprueba el repositorio de Git aquí:


 * https://github.com/tpaviot/oce

Luego, en un terminal:

mkdir build cd build cmake .. cd .. make make install/strip

Descargar e 'instalar' la plantilla de FreeCAD.app
El siguiente archivo contiene una plantilla empaquetada de la aplicación para FreeCAD. No es estrictamente necesario, pero hace el trabajo con FreeCAD más conveniente que la configuración por defecto de la instalación. La recomendada por la instalación está en el directorio /Applications, pero deberías poder ponerla donde quieras -- simplemente recuerda que el paquete no puede moverse después de que FreeCAD es compilado e instalado (sin algunas modificaciones más). Ejecutando make install utilizando la configuración de abajo se instalará en este paquete.


 * http://dl.getdropbox.com/u/103808/FreeCAD/FreeCAD_bundle_template_20091128.tar.gz

Compilar
Ahora configurar, compilar, e instalar FreeCAD utilizando los siguientes comandos desde el directorio raíz de FreeCAD. Si pones el paquete FreeCAD.app en un sitio diferente a /Applications (o si no estas utilizando este paquete), cambia el argumento 'PREFIX' en consecuencia.

./autogen.sh PREFIX=/Applications/FreeCAD.app/Contents

Si instalaste las dependencias según la opción 1 (Homebrew):

Nota: Esta línea de configuración no ha sido verificada y podría contener errores! ./configure --with-xercesc-lib=/usr/local/lib --with-xercesc-include=/usr/local/include \ --with-boost-lib=/usr/local/lib --with-boost-include=/usr/local/include \ --with-qt4-dir=/usr/local--with-qt4-lib=/usr/local/lib --with-qt4-include=/usr/local/include \ --with-qt4-framework=/usr/local/lib --with-qt4-bin=/usr/local/bin --with-occ-lib=/usr/local/lib \ --with-occ-include=/usr/local/include/oce --with-coin=/usr/local/lib --with-soqt=/usr/local/lib \ --prefix=/Applications/FreeCAD.app/Contents --bindir=/Applications/FreeCAD.app/Contents/MacOS \ --libdir=/Applications/FreeCAD.app/Contents/Frameworks/FreeCAD \ --includedir=/Applications/FreeCAD.app/Contents/Resources/include \ --datarootdir=/Applications/FreeCAD.app/Contents/Resources/share --enable-debug=no \ --with-python-include=/System/Library/Frameworks/Python.framework/Versions/2.5/Headers

O si instalaste las dependencias utilizando la opción 2 (MacPorts/Fink):

./configure --with-xercesc-lib=/opt/local/lib --with-xercesc-include=/opt/local/include \ --with-boost-lib=/opt/local/lib --with-boost-include=/opt/local/include \ --with-qt4-dir=/usr/local/Trolltech/Qt-4.8.0 --with-qt4-lib=/usr/local/Trolltech/Qt-4.8.0/lib \ --with-qt4-include=/usr/local/Trolltech/Qt-4.8.0/include --with-qt4-framework=/Library/Frameworks \ --with-qt4-bin=/usr/local/Trolltech/Qt-4.8.0/bin --with-occ-lib=/usr/local/lib \ --with-occ-include=/usr/local/include/oce --with-coin=/Library/Frameworks \ --with-soqt=/Library/Frameworks --prefix=/Applications/FreeCAD.app/Contents \ --bindir=/Applications/FreeCAD.app/Contents/MacOS --libdir=/Applications/FreeCAD.app/Contents/Frameworks/FreeCAD \ --includedir=/Applications/FreeCAD.app/Contents/Resources/include \ --datarootdir=/Applications/FreeCAD.app/Contents/Resources/share --enable-debug=no \ --with-python-include=/System/Library/Frameworks/Python.framework/Versions/2.5/Headers

Luego: make make install

Dependiendo de tu equipo, el paso de make puede tardar bastante.

Ejecutar
Si todo ha ido correctamente, doble clic en el paquete .app debería iniciar FreeCAD. Si tienes algún inconveniente, escribe los detalles en el foro de ayuda.

PyQt4
Algunos usuarios han informado de un mensaje de error indicando "No hay ningún módulo llamado PyQt4" en el inicio de FreeCAD. Este es un método para corregirlo:

cd /Library/Python/2.6/site-packages sudo ln -s /contrib/lib/python2.6/site-packages/PyQt4. sudo ln -s /contrib/lib/python2.6/site-packages/sip*. cd /volatile/FreeCAD-r5443-ser/bin/pivy cp _coin.dylib _coin.so cd /volatile/FreeCAD-r5443-ser/lib for i in *.dylib; do j=`basename $i .dylib`; cp $i $j.so; done

Pivy
Algunos componentes de FreeCAD no funcionarán sin Pivy. Mira aquí para ver instrucciones parciales de instalación.