Create a MacOS X App Bundle Using MacPorts: Difference between revisions
Jump to navigation
Jump to search
Line 21: | Line 21: | ||
===Install an Octave Port=== | ===Install an Octave Port=== | ||
MacPorts' Octave port includes the non-GPL [http://glaros.dtc.umn.edu/gkhome/views/metis METIS]. To avoid license violations do not bundle Metis with Octave and then distribute to others. In order to eliminate the Metis dependency, a local portfile may be used, and edited to remove metis. A second motivation to use a local portfile is that the portfiles for the 3.4.x and 3.6.x series did not include all dependencies for the | MacPorts' Octave port includes the non-GPL [http://glaros.dtc.umn.edu/gkhome/views/metis METIS]. To avoid license violations do not bundle Metis with Octave and then distribute to others. In order to eliminate the Metis dependency, a local portfile may be used, and edited to remove metis. A second motivation to use a local portfile is that the portfiles for the 3.4.x and 3.6.x series did not include all dependencies for the <code>print</code> feature. The missing dependencies are [http://www.macports.org/ports.php?by=name&substr=epstool epstool], [http://www.macports.org/ports.php?by=name&substr=pstoedit pstoedit], and [http://www.macports.org/ports.php?by=name&substr=transfig transfig]. A third motivation for a local portfile is to provide additional flexibility in resolving problems with creating an Octave DMG using the <code>port mdmg ...</code> command . | ||
A [[Prototype MacPorts PortFile|prototype portfile]] which does not depend upon METIS and does depend upon epstool, pstoedit, and transfig has been prepared. After [http://guide.macports.org/chunked/development.local-repositories.html creating a local portfile repository] an Octave portfile may be added to the local repository using the commands below. | A [[Prototype MacPorts PortFile|prototype portfile]] which does not depend upon METIS and does depend upon epstool, pstoedit, and transfig has been prepared. After [http://guide.macports.org/chunked/development.local-repositories.html creating a local portfile repository] an Octave portfile may be added to the local repository using the commands below. | ||
<nowiki>mkdir -p ~/ports/math/octave-local | <nowiki>mkdir -p ~/ports/math/octave-local | ||
cp ~/Desktop/portfile ~/ports/math/octave-local</nowiki> | cp ~/Desktop/portfile ~/ports/math/octave-local</nowiki> | ||
This assumes the Octave portfile had been placed on the user's Desktop, and that the local portfile repository is located in the users home folder and named | This assumes the Octave portfile had been placed on the user's Desktop, and that the local portfile repository is located in the users home folder and named <code>ports</code>. After adding the portfile, the local repository must be indexed for MacPorts to recognize it. | ||
<nowiki>cd ~/ports | <nowiki>cd ~/ports | ||
portindex -f</nowiki> | portindex -f</nowiki> | ||
Line 32: | Line 32: | ||
<nowiki>sudo port install octave-local @3.6.4+atlas+fltk+gcc47</nowiki> | <nowiki>sudo port install octave-local @3.6.4+atlas+fltk+gcc47</nowiki> | ||
The use of the | The use of the <code>+atlas</code> variant is encouraged as bugs exist for Apple's {{Codeline|accelerate}} framework in both MacOS 10.6 and 10.7. Octave's developers have included a fix for MacOS 10.6, but the fix does not work for MacOS 10.7. There is some commentary on this in various developers discussion forums. For example, see [https://github.com/mxcl/homebrew/issues/6649 this Homebrew thread (Octave 3.4 fails on lion)], [https://stat.ethz.ch/pipermail/r-sig-mac/2011-September/008564.html this R-Sig-Mac thread (R 2.13.1-patched, vecLib problem on Lion)], and [http://list.coin-or.org/pipermail/ipopt/2011-October/002610.html the COIN-OR thread (Ipopt - problems on OS X 10.7 Lion)]. Use of Apple's {{Codeline|accelerate}} framework should also be avoided for {{Codeline|arpack}} and {{Codeline|qrupdate}}. To install the recommended variants, use the {{Codeline|port}} commands below. | ||
<nowiki>port install arpack +atlas+gcc47 | <nowiki>port install arpack +atlas+gcc47 |