Create a MacOS X App Bundle Using MacPorts: Difference between revisions

Line 23: Line 23:
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 .
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 <code>epstool</code>, <code>pstoedit</code>, and <code>transfig</code> 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>
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 <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.
The use of the <code>+atlas</code> variant is encouraged as bugs exist for Apple's 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 <code>arpack<\code> and <code>qrupdate<\code>.  To install the recommended variants, use the <code>port</code> commands below.


  <nowiki>port install arpack +atlas+gcc47
  <nowiki>port install arpack +atlas+gcc47
364

edits