Opened 9 years ago

Closed 9 years ago

#45583 closed defect (fixed)

Gnuradio-companion Bus Error:10 on 10.10 Yosemite

Reported by: edouard@… Owned by: michaelld (Michael Dickens)
Priority: Normal Milestone:
Component: ports Version: 2.3.2
Keywords: yosemite Cc: ben@…
Port: gnuradio

Description (last modified by ryandesign (Ryan Carsten Schmidt))

When building gnuradio-companion on OS X 10.10 ('Yosemite'), the build succeeds, but as soon as I try to save anything in gnuradio-companion, it crashes with the following error from Python (see below).

I reproduced this on a brand new macports install (uninstalled everything, rebooted, reinstalled macports, did only port install gnuradio.

Attachments (2)

crash.log (80.2 KB) - added by ryandesign (Ryan Carsten Schmidt) 9 years ago.
crash_macbook_gnuradio_save (77.6 KB) - added by ben@… 9 years ago.
crash log

Download all attachments as: .zip

Change History (11)

comment:1 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)
Keywords: yosemite added
Owner: changed from macports-tickets@… to michaelld@…

I've removed the crash log from the ticket description and moved it to an attachment.

Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Attachment: crash.log added

comment:2 in reply to:  description Changed 9 years ago by ben@…

Hi, same problem here. Updated macports. Updated Xcode. built gnuradio and crash on save.

I also have this error when trying to run the 'filter design tool' do you think this is related to the same bug?

This example requires a Numerical Python Extension, but failed to import either NumPy, or numarray, or Numeric. NumPy is available at http://sourceforge.net/projects/numpy

kind of frustrating, was working really well before yosomite.,

Replying to edouard@…:

When building gnuradio-companion on OS X 10.10 ('Yosemite'), the build succeeds, but as soon as I try to save anything in gnuradio-companion, it crashes with the following error from Python (see below).

I reproduced this on a brand new macports install (uninstalled everything, rebooted, reinstalled macports, did only port install gnuradio.

Changed 9 years ago by ben@…

Attachment: crash_macbook_gnuradio_save added

crash log

comment:3 Changed 9 years ago by ben@…

Cc: ben@… added

Cc Me!

comment:4 Changed 9 years ago by edouard@…

Could this be linked to libxml2 ? Looks like there are multiple versions on the system, between /opt/local/lib and /use/lib ...

comment:5 Changed 9 years ago by ben@…

I also have with xcode.. /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/libxml2

should I remove macports one and try recompile gnuradio?

not really sure why i need 2 versions!

comment:6 Changed 9 years ago by michaelld (Michael Dickens)

This is the issue I brought up on the MP dev discussion list. I am no closer to fixing it than I was back then, though I also haven't spent a lot of hours on it since the trail grew thin pretty quickly.

The basic issue seems to be that on 10.10 the system libxml2 is loaded -before- MacPorts' libxml2; on 10.9 and prior the opposite is true (you can verify this via using DYLD_PRINT_LIBRARIES=1 before executing "gnuradio-companion").

My guess is that on 10.10, the function "xmlCharEncOutput" is called from within an Apple-loaded library, which results in the system libxml2 being loaded first and this function being "registered" with the DYLD manager. Later, GRC indirectly calls the function "xmlOutputBufferFlush", which loads MacPorts' libxml2 ... but for some reason when this latter calls "xmlCharEncOutput" the Apple-loaded libxml2's symbol is used instead of that within the MacPorts' libxml2 library. It might be that this issue is with some changes to the DYLD manager in 10.10, or it could be that it is only manifesting in 10.10 because of the way library loading happens -- I'm guessing the former since it seems very likely that someone would have encountered this issue in 10.9 or earlier if it existed there.

That said, all of the above after "my guess" is just speculation; the actual issue might be something entirely different. I welcome thoughts on how to do further debugging / testing on this issue.

comment:7 Changed 9 years ago by kgarrels

Dear all,

doing

DYLD_INSERT_LIBRARIES=/opt/local/lib/libxml2.2.dylib gnuradio-companion

fixes the bug for me.

kai

comment:8 in reply to:  7 Changed 9 years ago by edouard@…

Same here, seems to fix it for me! Definitely a conflict between the OSX libxml2 and the macports libxml2 load order. Tricky to fix... Well the alias is a stopgap measure for now, thanks for finding this!

Replying to kai.garrels@…:

Dear all,

doing

DYLD_INSERT_LIBRARIES=/opt/local/lib/libxml2.2.dylib gnuradio-companion

fixes the bug for me.

kai

comment:9 Changed 9 years ago by michaelld (Michael Dickens)

Resolution: fixed
Status: newclosed

Fixed in r127681. Please do:

sudo port selfupdate
sudo port upgrade outdated

and all of GNU Radio and UHD should now work on 10.10.

Note: See TracTickets for help on using tickets.