AMNS / Nightingale

Nightingale music notation software.
Mozilla Public License 2.0
11 stars 3 forks source link

Nightingale

Development environment requirements

Downloads require an Apple Developer account; they should not require a paid iOS or MacOS subscription.

curl -O https://raw.github.com/thinkyhead/Legacy-XCode-Scripts/master/restore-with-xcode3.sh
chmod 744 restore-with-xcode3.sh
./restore-with-xcode3.sh
curl -O https://raw.github.com/thinkyhead/Legacy-XCode-Scripts/master/restore-with-xcode4.sh

The last "curl" may fail, but (for one person) resulted in Xcode 4.2 doing what we want.

Running and Debugging

It's probably not possible to attach a debugger on an Intel machine (due to Rosetta translation requirements), but it should be possible on a PowerPC.

Xcode 2.x and 3.x put debug build products in a directory with a path like:

~/NightingaleDev/build/Debug

XCode 4.x and above put debug build products in a directory with a totally unguessable path like:

~/Library/Developer/Xcode/DerivedData/Nightingale-dghtzivoyrfkjudiupfaqdqicrev/Build/Products/Debug/

That path can be found (in a terminal window, of course) using:

find ~/* -name Nightingale.app

...or -- much, much faster! -- by control-clicking on "Nightingale" at the bottom in the folder view (leftmost icon(?)) of the project, then choosing "Show in Finder" in the pop-up menu.

The built application can be run via:

open -a ~/Library/.../Build/Products/Debug/Nightingale.app

or simply:

Nightingale.app/Contents/MacOS/Nightingale

The latter is somewhat helpful, since stderr/out will be printed to the command line. But either way, logging information will be written to system.log, which can be viewed with the Console utility.

NB: The same logging information will appear in system.log even when a normal (non-debug) build of Nightingale is run in the standard way, via opening the icon in the Finder.

NB2: You can run Nightingale inside Xcode 2.x in the obvious way from the Build menu. But with Xcode 3.x, that doesn't seem to work; we have no idea why!