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

Line 123: Line 123:
* When Octave is running, clicking on Octave's icon in the dock has no effect. This is because the App bundle runs a shell script which launches Terminal.app which runs Octave. To locate the Octave session, click on the Terminal.app.
* When Octave is running, clicking on Octave's icon in the dock has no effect. This is because the App bundle runs a shell script which launches Terminal.app which runs Octave. To locate the Octave session, click on the Terminal.app.
* Only one instance of the App may be run by clicking on the app.  Multiple instances may be run from the command line.
* Only one instance of the App may be run by clicking on the app.  Multiple instances may be run from the command line.
* In some instances, the Octave binary attempts to load an library whose version number is older than the one it intended to link to (at build time).  This will produce an error like to one below.
* The Octave binary may attempt to load an library whose version number is older than the one it intended to link to (at build time).  This will produce an error like to one below. If this happens, please report the error.
  <nowiki>dyld: Library not loaded: /opt/local/libiconv.2.dylib</nowiki>
  <nowiki>dyld: Library not loaded: /opt/local/libiconv.2.dylib</nowiki>


Line 214: Line 214:
  <nowiki>dylibs_fix ("bin/octave-3.7.0+", "lib", false)</nowiki>
  <nowiki>dylibs_fix ("bin/octave-3.7.0+", "lib", false)</nowiki>
The script will mirror each of the {{Codeline|otool}} commands to the screen.  Errors and/or warnings are given if any libraries are found to be missing in the bundle.
The script will mirror each of the {{Codeline|otool}} commands to the screen.  Errors and/or warnings are given if any libraries are found to be missing in the bundle.
===Reducing the Size===
The App bundle is large.  It's size may be significantly reduced by deleting the static libraries.
<nowiki>find "Octave-3.7.0+.app/Contents/Resources/lib/." -name "*.a" -exec rm -f {} \;</nowiki>


==Testing==
==Testing==
364

edits