Crash on open OS X "Lion" 10.7 (Apple) #1270

Closed
coppolaemilio opened this Issue Nov 7, 2014 · 20 comments

Projects

None yet

5 participants

@coppolaemilio

I get this error every time I try to run it:

Edited 2014-11-17 @tresf for formatting

Process:         launchd [3050]
Path:            /Applications/LMMS.app/Contents/MacOS/lmms
Identifier:      launchd
Version:         ??? (???)
Code Type:       X86-64 (Native)
Parent Process:  launchd [2617]

Date/Time:       2014-11-07 01:44:23.520 +0100
OS Version:      Mac OS X 10.7.5 (11G63)
Report Version:  9

Interval Since Last Report:          640447 sec
Crashes Since Last Report:           8
Per-App Crashes Since Last Report:   3
Anonymous UUID:                      68B59514-B15A-4BC0-9CE5-5BB921736F82

Crashed Thread:  Unknown

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x00007fff5fc01028

Backtrace not available

Unknown thread crashed with X86 Thread State (64-bit):
  rax: 0x0000000000000055  rbx: 0x0000000000000000  rcx: 0x0000000000000000  rdx: 0x0000000000000000
  rdi: 0x0000000000000000  rsi: 0x0000000000000000  rbp: 0x0000000000000000  rsp: 0x0000000000000000
   r8: 0x0000000000000000   r9: 0x0000000000000000  r10: 0x0000000000000000  r11: 0x0000000000000000
  r12: 0x0000000000000000  r13: 0x0000000000000000  r14: 0x0000000000000000  r15: 0x0000000000000000
  rip: 0x00007fff5fc01028  rfl: 0x0000000000010203  cr2: 0x00007fff5fc01028
Logical CPU: 1

Binary images description not available


External Modification Summary:
  Calls made by other processes targeting this process:
    task_for_pid: 1
    thread_create: 0
    thread_set_state: 0
  Calls made by this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by all processes on this machine:
    task_for_pid: 13922
    thread_create: 2
    thread_set_state: 0

Model: MacBook4,1, BootROM MB41.00C1.B00, 2 processors, Intel Core 2 Duo, 2.1 GHz, 2 GB, SMC 1.31f1
Graphics: Intel GMA X3100, GMA X3100, Built-In, 144 MB
Memory Module: BANK 0/DIMM0, 1 GB, DDR2 SDRAM, 667 MHz, 0xCE00000000000000, 0x4D342037305432393533455A332D43453620
Memory Module: BANK 1/DIMM1, 1 GB, DDR2 SDRAM, 667 MHz, 0xCE00000000000000, 0x4D342037305432383634515A332D43453620
AirPort: spairport_wireless_card_type_airport_extreme (0x14E4, 0x88), Broadcom BCM43xx 1.0 (5.10.131.36.15)
Bluetooth: Version 4.0.8f17, 2 service, 11 devices, 1 incoming serial ports
Network Service: Wi-Fi, AirPort, en1
Network Service: Ethernet, Ethernet, en0
Serial ATA Device: TOSHIBA MK1655GSXF, 160.04 GB
Parallel ATA Device: MATSHITACD-RW  CW-8221
USB Device: Built-in iSight, apple_vendor_id, 0x8501, 0xfd400000 / 2
USB Device: Bluetooth USB Host Controller, apple_vendor_id, 0x8205, 0x1a100000 / 2
USB Device: Apple Internal Keyboard / Trackpad, apple_vendor_id, 0x0229, 0x5d200000 / 3
USB Device: IR Receiver, apple_vendor_id, 0x8242, 0x5d100000 / 2
@tresf tresf changed the title from Running LMMS 1.0.93 on OSX 1.7 to Crash on open OS X 10.7 (Apple) Nov 7, 2014
@tresf tresf self-assigned this Nov 7, 2014
@tresf
Member
tresf commented Nov 7, 2014

We currently don't build the software for OS X 10.7 "Lion" (we build for OS X 10.9 "Mavericks"). We will soon start building for OS X 10.10 "Yosemite". If you have a recommendation for making the build process backwards compatible with older OS X versions, please offer a recommendation to do so.

If there's no easy way to make this backwards compatible we will close the bug as wontfix.

In the mean time, if you have XCode, you may want to try our MacPorts build tutorial and contribute this build yourself. We've made it pretty easy to follow:

https://github.com/LMMS/lmms/wiki/Compiling-lmms-(Apple)

@tresf tresf changed the title from Crash on open OS X 10.7 (Apple) to Crash on open OS X "Lion" 10.7 (Apple) Nov 7, 2014
@soycamo
soycamo commented Dec 16, 2014

Apparently it's available using Cask for Homebrew, though that version seems to crash as well.
It might be helpful to say on the download page that it's for Mavericks and up.

@eagles051387
Contributor

@tres what is the minimum osx version we do support?

On Tue, Dec 16, 2014 at 6:47 AM, Cameron notifications@github.com wrote:

Apparently it's available using (Cask for Homebrew)[http://caskroom.io],
though that version seems to crash as well.
It might be helpful to say on the download page that it's for Mavericks
and up.


Reply to this email directly or view it on GitHub
#1270 (comment).

Jonathan Aquilina

@tresf
Member
tresf commented Dec 16, 2014

@tres

My username is @tresf, you tagged the wrong person.

what is the minimum osx version we do support?

Why are you asking as if you don't use a Mac more than anyone else on this list? I don't know. I explained that above. Read the ****ing bug report and stop being lazy.

-Tres

@tresf
Member
tresf commented Dec 16, 2014

Apparently it's available using Cask for Homebrew, though that version seems to crash as well.

Yeah, they are likely building with a newer version of XCode.

It might be helpful to say on the download page that it's for Mavericks and up.

Well, we don't really know that for sure. We haven't tested it on an abundance of OSX versions. I need a bit of help in that regard. What we have today is a combination of what MacPorts had worked on and a lot of tweaking to our source code to compile with XCode (aka "Clang"). This was no small feat, but it will likely compile without much effort on other OSX versions.

Most languages have a method for compiling with backwards compatibility to a certain OS level. I don't know how to to this but I'm willing to take recommendations.

If we can get verification that the software only works on Mavericks and higher, I'd be happy to add that information to our "known issues" of our release notes.

We could even go as far as labeling the download button, but our site is is very self-maintained in that regard and I'd be hesitant to hard-code something that is so volatile to change with each new OS X release... probably better for the release notes section (which we'll have starting with version 1.1).

@tresf
Member
tresf commented Dec 16, 2014

So it appears CMAKE supports this using the following flag:

$ cmake .. -DCMAKE_INSTALL_PREFIX=../target/ -DCMAKE_OSX_DEPLOYMENT_TARGET=10.7

But it errors with:

CMAKE_OSX_DEPLOYMENT_TARGET is '10.7' but the matching SDK does not exist at:
   "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk"

So this appears to be completely possible with the right build environment, I'm just unsure the proper way to set this all up. My Mavericks VM has run out of disk space, so this will be a timely operation for me to setup (Apple doesn't allow the easy expansion of drives). If someone else (i.e. @eagles051387) has time to build against 10.7, please do.

@soycamo I assume you're on 64-bit hardware, as I don't plan on making multi-arch builds for OSX. 😸

@soycamo
soycamo commented Dec 16, 2014

@tresf Yes! Most Macs that can run Snow Leopard (10.6) can use 64-bit binaries, with a few exceptions (I think the earliest MacBooks can't...)
I spotted this post which might be of some help: http://stackoverflow.com/questions/11424920/how-to-point-xcode-to-my-10-6-sdk-so-it-can-be-used-as-a-base-sdk/11424966

@tresf
Member
tresf commented Dec 16, 2014

Ok, I'll try doing a symlink from a removable drive.

I found XCode 4.6.3 which appears to be the latest available for Lion:

  1. Sign into http://developer.apple.com
  2. Download here: http://adcdownload.apple.com/Developer_Tools/xcode_4.6.3/xcode4630916281a.dmg

Once this is finished downloading and extracting, I'll attempt the Symlink SDK trick from the stackoverflow article:

sudo ln -s  /mnt/drive/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/ \
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/ 
@tresf
Member
tresf commented Dec 16, 2014

So far there are two bugs with XCode 4.6.3 which are related to an ambiguous use of the pow() function in opl2_instrument.cpp and papu_instrument.cpp which we can patch these function calls in our code by passing them 2.0 (float) instead of 2 (int), however libmalletsstk.so won't link the CXX shared module (unsure why).

So for now I've disabled the Mallets using -DWANT_STK=OFF and I have a version you can test out here (please allow a minute for it to finish uploading)

Please test:
https://github.com/tresf/lmms/releases/download/v1.0.100/lmms-1.0.99-lion.dmg

(apologies for the versioning mismatch, I forgot to bump the version prior to build)

For record... copy of stk/mallets error:

Scanning dependencies of target malletsstk
[ 85%] Building CXX object plugins/stk/mallets/CMakeFiles/malletsstk.dir/mallets.o
Linking CXX shared module libmalletsstk.so
Undefined symbols for architecture x86_64:
  "stk::Stk::setRawwavePath(std::string)", referenced from:
      malletsSynth::malletsSynth(double, double, double, double, double, double, double, int, unsigned char, unsigned int) in mallets.o
      malletsSynth::malletsSynth(double, double, int, double, double, double, double, double, unsigned char, unsigned int) in mallets.o
      malletsSynth::malletsSynth(double, double, double, double, double, int, double, double, unsigned char, unsigned int) in mallets.o
  "std::__1::__vector_base_common<true>::__throw_length_error() const", referenced from:
[...]
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [plugins/stk/mallets/libmalletsstk.so] Error 1
make[1]: *** [plugins/stk/mallets/CMakeFiles/malletsstk.dir/all] Error 2
make: *** [all] Error 2
@diizy
Contributor
diizy commented Dec 16, 2014

On 12/16/2014 09:50 PM, Tres Finocchiaro wrote:

So far there are two bugs with XCode 4.6.3 which are related to an
ambiguous use of the |pow()| function
http://bytes.com/topic/c/answers/727736-ambiguous-call-pow in
|opl2_instrument.cpp| and |papu_instrument.cpp|

Can you give me line numbers?

@tresf
Member
tresf commented Dec 16, 2014

Can you give me line numbers?

Sure.... what's interesting is it didn't fall with Mavericks so Apple must have changed something...

OPL2
opl2instrument.cpp#L500
opl2instrument.cpp#L508

PAPU
papu_instrument.cpp#L363
papu_instrument.cpp#L367

@diizy
Contributor
diizy commented Dec 16, 2014

Ok should be fixed now.

@tresf
Member
tresf commented Dec 16, 2014

Ok should be fixed now.

👍

@soycamo
soycamo commented Dec 17, 2014

I got a more interesting failure this time (from the executable in #1270 (comment))

Process:         LMMS [86412]
Path:            /Users/USER/LMMS.app/Contents/MacOS/LMMS
Identifier:      net.sourceforge.lmms
Version:         1.0.99 (1.0.99)
Code Type:       X86-64 (Native)
Parent Process:  launchd [6127]

Date/Time:       2014-12-16 22:39:36.321 -0800
OS Version:      Mac OS X 10.7.5 (11G63)
Report Version:  9

Interval Since Last Report:          458201 sec
Crashes Since Last Report:           13
Per-App Crashes Since Last Report:   2
Anonymous UUID:                      75832A22-872A-4959-87A1-BDC4827A5B3A

Crashed Thread:  0

Exception Type:  EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000002, 0x0000000000000000

Application Specific Information:
dyld: launch, loading dependent libraries

Dyld Error Message:
  Library not loaded: /System/Library/Frameworks/CoreText.framework/Versions/A/CoreText
  Referenced from: /Users/USER/LMMS.app/Contents/MacOS/../Frameworks/QtGui.framework/Versions/4/QtGui
  Reason: image not found

Binary Images:
       0x10238d000 -        0x1024dbfff +net.sourceforge.lmms (1.0.99 - 1.0.99) <FFD103D4-21BF-3AFA-B54A-F842026EAB4C> /Users/USER/LMMS.app/Contents/MacOS/LMMS
       0x1025a2000 -        0x102e0cff7 +QtGui (4.8.5 - compatibility 4.8.0) <E76E0FAD-7BA5-3F35-898B-DBF4A2E95513> /Users/USER/LMMS.app/Contents/Frameworks/QtGui.framework/Versions/4/QtGui
       0x102fb8000 -        0x102fedfff +QtXml (4.8.5 - compatibility 4.8.0) <9D674C7A-0CC4-36A0-9948-F71EBB018AB5> /Users/USER/LMMS.app/Contents/Frameworks/QtXml.framework/Versions/4/QtXml
       0x103001000 -        0x103263ff7 +QtCore (4.8.5 - compatibility 4.8.0) <69F7393B-FA61-3202-A938-DF25C3BD4E15> /Users/USER/LMMS.app/Contents/Frameworks/QtCore.framework/Versions/4/QtCore
       0x1032c9000 -        0x103314ff7 +libSDL-1.2.0.dylib (12.4.0 - compatibility 12.0.0) <2D4BF69E-8211-306A-BBBD-19F695F89372> /Users/USER/LMMS.app/Contents/Frameworks/libSDL-1.2.0.dylib
       0x10332f000 -        0x10333dfff +libportaudio.2.dylib (3.0.0 - compatibility 3.0.0) <8057D86C-46D3-3720-88AC-BB97E7E6E6D1> /Users/USER/LMMS.app/Contents/Frameworks/libportaudio.2.dylib
       0x103345000 -        0x103352fff +libjack.0.dylib (1.28.0 - compatibility 1.0.0) <3463941D-42A1-3DD2-80E8-342109008CBB> /Users/USER/LMMS.app/Contents/Frameworks/libjack.0.dylib
       0x103367000 -        0x10336aff7 +libogg.0.dylib (9.1.0 - compatibility 9.0.0) <B95FDC74-E06C-303A-8718-CEA3078934E9> /Users/USER/LMMS.app/Contents/Frameworks/libogg.0.dylib
       0x103374000 -        0x103398fff +libvorbis.0.dylib (5.7.0 - compatibility 5.0.0) <D698BE61-E7DB-32CB-8107-B2FD8130CC93> /Users/USER/LMMS.app/Contents/Frameworks/libvorbis.0.dylib
       0x10339d000 -        0x1033a2fff +libvorbisfile.3.dylib (7.6.0 - compatibility 7.0.0) <8E3EE67B-8383-3FEB-9C4A-ECB3A373989E> /Users/USER/LMMS.app/Contents/Frameworks/libvorbisfile.3.dylib
       0x1033aa000 -        0x103421ff7 +libvorbisenc.2.dylib (3.10.0 - compatibility 3.0.0) <85613974-CF65-3D44-8D66-8827D196528C> /Users/USER/LMMS.app/Contents/Frameworks/libvorbisenc.2.dylib
       0x103441000 -        0x1035aafff +libsamplerate.0.dylib (2.8.0 - compatibility 2.0.0) <46EA679B-AD20-37FC-BAA6-D294C27A06C7> /Users/USER/LMMS.app/Contents/Frameworks/libsamplerate.0.dylib
       0x1035af000 -        0x1035fbff7 +libsndfile.1.dylib (2.25.0 - compatibility 2.0.0) <FD6AC2C2-2405-3FA6-8DF3-03F12F9F64AB> /Users/USER/LMMS.app/Contents/Frameworks/libsndfile.1.dylib
       0x103606000 -        0x103615ff7 +libz.1.dylib (1.2.8 - compatibility 1.0.0) <EE52BDB8-6083-3F10-A193-2E52AAF555E7> /Users/USER/LMMS.app/Contents/Frameworks/libz.1.dylib
       0x10361f000 -        0x103641fff +libpng16.16.dylib (27.0.0 - compatibility 27.0.0) <F64EEFB2-B4E1-3F35-A730-C203FB51E0C5> /Users/USER/LMMS.app/Contents/Frameworks/libpng16.16.dylib
    0x7fff61f8d000 -     0x7fff61fc1baf  dyld (195.6 - ???) <C58DAD8A-4B00-3676-8637-93D6FDE73147> /usr/lib/dyld
    0x7fff84f8f000 -     0x7fff85005ff7  libc++.1.dylib (28.4.0 - compatibility 1.0.0) <A24FC3DA-4FFA-3DD2-9DCC-2B8D1B3BF97C> /usr/lib/libc++.1.dylib
    0x7fff89767000 -     0x7fff8a36dfff  com.apple.AppKit (6.7.5 - 1138.51) <44417D02-6123-3FC3-A119-CE51BB4C3006> /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit
    0x7fff8a36e000 -     0x7fff8a36efff  com.apple.Cocoa (6.6 - ???) <7EC4D759-B2A6-3A99-AC75-809FED1500C6> /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa
    0x7fff8a629000 -     0x7fff8a69cfff  libstdc++.6.dylib (52.0.0 - compatibility 7.0.0) <6BDD43E4-A4B1-379E-9ED5-8C713653DFF2> /usr/lib/libstdc++.6.dylib
    0x7fff8a6a5000 -     0x7fff8a789e5f  libobjc.A.dylib (228.0.0 - compatibility 1.0.0) <871E688B-CF57-3BC7-80D6-F6476DFF109B> /usr/lib/libobjc.A.dylib
    0x7fff8bca8000 -     0x7fff8bcd5fe7  libSystem.B.dylib (159.1.0 - compatibility 1.0.0) <6E5C8AC3-DBB7-31CB-BEB7-D6ED8E6DE0CE> /usr/lib/libSystem.B.dylib
    0x7fff8d3ef000 -     0x7fff8d5c3ff7  com.apple.CoreFoundation (6.7.2 - 635.21) <62A3402E-A4E7-391F-AD20-1EF20236CE1B> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
    0x7fff8f522000 -     0x7fff8f522fff  com.apple.Carbon (153 - 153) <AF0F9910-E3C3-3922-AA92-A39000655E0F> /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon

Model: MacBook4,1, BootROM MB41.00C1.B00, 2 processors, Intel Core 2 Duo, 2.1 GHz, 4 GB, SMC 1.31f1
Graphics: Intel GMA X3100, GMA X3100, Built-In, 144 MB
Memory Module: BANK 0/DIMM0, 2 GB, DDR2 SDRAM, 667 MHz, 0xAD00000000000000, 0x48594D503132355336344350382D59352020
Memory Module: BANK 1/DIMM1, 2 GB, DDR2 SDRAM, 667 MHz, 0xAD00000000000000, 0x48594D503132355336344350382D59352020
AirPort: spairport_wireless_card_type_airport_extreme (0x14E4, 0x88), Broadcom BCM43xx 1.0 (5.10.131.36.15)
Bluetooth: Version 4.0.8f17, 2 service, 11 devices, 1 incoming serial ports
Network Service: AirPort, AirPort, en1
Serial ATA Device: Hitachi HTS542525K9SA00, 250.06 GB
Parallel ATA Device: MATSHITACD-RW  CW-8221
USB Device: Built-in iSight, apple_vendor_id, 0x8501, 0xfd400000 / 2
USB Device: Bluetooth USB Host Controller, apple_vendor_id, 0x8205, 0x1a100000 / 2
USB Device: Apple Internal Keyboard / Trackpad, apple_vendor_id, 0x0229, 0x5d200000 / 3
USB Device: IR Receiver, apple_vendor_id, 0x8242, 0x5d100000 / 2
@tresf
Member
tresf commented Dec 17, 2014

Thanks for trying.

Yeah, I think I need to build on Lion directly or do a full MacPorts update using the Lion compiler (something that takes several hours and would completely wipe out the Mavericks dependent libraries)

To explain what's happening... Although LMMS was properly build against XCode 3.6.x, the QT libraries it uses are but against and they are still trying to talk to Mavericks. This is likely the same problem that we're seeing with STK/Mallets.

@tresf
Member
tresf commented Dec 17, 2014

I contacted the MacPorts team and to summarize our conversation, what we're trying to achieve with cross-compilation is not officially supported and also not recommended.

... So we have to setup a Lion machine.

VirtualBox doesn't support Lion very well, so:

  • 30-day trial of VMWare Fusion installed (will cost $69.99 USD)
  • OS X 10.7 Lion is installed in Fusion
  • XCode 4.6.3 is installed on Lion
  • MacPorts is installed on Lion

LMMS dependencies are downloading now. This will take the majority of the afternoon.

I will post my progress here.

@tresf
Member
tresf commented Dec 17, 2014

@soycamo @Coppolaemilio please try this version:

https://github.com/tresf/lmms/releases/download/v1.0.100/lmms-1.0.100-mac10.7.dmg

@eagles051387 can you test this on Yosemite? We can target Lion for a while if it's forward compatible with newer OSs.

image

@soycamo
soycamo commented Dec 18, 2014

Wow, it's running!!! Thank you so much @diizy @tresf !!

@tresf
Member
tresf commented Dec 18, 2014

Great, I'll close this out. I'd also like some testing on Mavericks and Yosemite @eagles051387. If we can get away with making a Lion build for all OSs that may be ideal.

@tresf
Member
tresf commented Dec 18, 2014

Oh and @eagles051387 since you only seem to read the last post in a bug report, here's the link to the Lion installer:

https://github.com/tresf/lmms/releases/download/v1.0.100/lmms-1.0.100-mac10.7.dmg

@tresf tresf closed this Dec 18, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment