I tested your modifications
On 2008-January-10 , at 13:09 , Adam Strzelecki wrote: [...]
- I've updated to latest GTK+2 using: (you need to do the same or
Inkscape will be crashing every few seconds) port edit gtk2 version 2.12.5 checksums md5 588c7fb3d9ebadf4f5a1ab4c534e4db5 port install gtk2 +quartz 2) I've downgraded boehmgc to 6.8 (latest 7.0 causes Inkscape to hang (never ending loop) on startup) port edit boehmgc version 6.8 distname ${d_name}${version} checksums sha1 6d5def5ba5d29292ba9c76f04df3ec06d3ab3278
I made new portfiles for those and installed these versions.
- Applied my own-cooked patch
Inkscape_OSX_native_menu_and_toolbars.patch (attached) <Inkscape_OSX_native_menu_and_toolbars.patch>
- src/widgets/toolbox.cpp: removes tb_s, tb_e spacers from the
toolbars to they DON'T have ugly underlines (who did invent this anyway, this produces ugly look in most GTK themes where toolbars are 2x inset in the GUI, I believe this should be removed anyway in all builds (platforms))
I left this away from the patch
- src/ige-mac-menu.[c/h]: sources for native Carbon Mac top menu
wrapper instead of having the menu inside the window (taken from GIMP sources)
- src/interface.cpp: use ige_mac_menu_set_menu_bar on native GTK
(Quartz) for menu and return NULL so no menu is displayed in the Window itself
- configure.ac: add Carbon checking and libs define required ige-
mac-menu
- src/Makefile_insert: add Carbon libs and ige-mac-menu sources
I added this (it's in SVN right now actually)
- then normally built with packaging/macosx/osx-build.sh a c b i p
- fixed Inkscape.app so it is displayed as single Launch bar icon
named "Inkscape" by:
- removing Contents/Resources/getdisplay.sh & Contents/Resources/
inkscape (we don't need those in native !)
- renaming Contents/Resources/inkscape-bin to Contents/Resources/
Inkscape
- replacing Contents/MacOS/Inkscape with simple shell script that
sets cwd to Inkscape.app and runs Contents/Resources/bin/Inkscape:
#!/bin/sh PRG="$0" while [ -h "$PRG" ] ; do ls=`ls -ld "$PRG"` link=`expr "$ls" : '.*-> (.*)$'` if expr "$link" : '/.*' > /dev/null; then PRG="$link" else PRG=`dirname "$PRG"`"/$link" fi done DIR="`dirname $PRG`" cd $DIR cd ../.. exec Contents/Resources/bin/Inkscape
I also did this. Yet Inkscape native still crashes on startup with the crash log below. did this occur to you also? on what platform and os version are you by the way?
Process: Inkscape [84419]
[snip]
Exception Type: EXC_BAD_ACCESS (SIGBUS) Exception Codes: KERN_PROTECTION_FAILURE at 0x0000000000000020 Crashed Thread: 0
Thread 0 Crashed: 0 libobjc.A.dylib 0x954156e8 objc_msgSend + 24 1 com.apple.CoreFoundation 0x915509e2 __CFRunLoopDoObservers + 466 2 com.apple.CoreFoundation 0x91551d45 CFRunLoopRunSpecific + 853 3 com.apple.CoreFoundation 0x91552d38 CFRunLoopRunInMode + 88 4 com.apple.HIToolbox 0x94f9d8a4 RunCurrentEventLoopInMode + 283 5 com.apple.HIToolbox 0x94f9d5f6 ReceiveNextEventCommon + 175 6 com.apple.HIToolbox 0x94f9d531 BlockUntilNextEventMatchingListInMode + 106 7 com.apple.AppKit 0x95f57d5b _DPSNextEvent + 657 8 com.apple.AppKit 0x95f576a0 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 128 9 libgdk-quartz-2.0.0.dylib 0x012cb2b8 gdk_event_prepare + 120 10 libglib-2.0.0.dylib 0x0172795b g_main_context_prepare + 587 11 libglib-2.0.0.dylib 0x0172809f g_main_context_iterate + 191 12 libglib-2.0.0.dylib 0x017287f7 g_main_loop_run + 455 13 libgtk-quartz-2.0.0.dylib 0x00fad1c1 gtk_main + 177 14 libgtkmm-2.4.1.dylib 0x00ad743b Gtk::Main::run() + 27 15 Inkscape 0x00003ebf sp_main_gui(int, char const**) + 511 16 Inkscape 0x0019e572 Inkscape::NSApplication::Application::run() + 178 17 Inkscape 0x00002cfe main + 206 18 Inkscape 0x00002986 start + 54
Thread 1: 0 libSystem.B.dylib 0x95b1992e semaphore_wait_signal_trap + 10 1 libSystem.B.dylib 0x95b4b1e6 _pthread_cond_wait + 1267 2 libSystem.B.dylib 0x95b90c4b pthread_cond_wait + 48 3 libgc.1.dylib 0x01965f25 GC_wait_marker + 37 4 libgc.1.dylib 0x0195ec3d GC_help_marker + 93 5 libgc.1.dylib 0x01964f66 GC_mark_thread + 70 6 libSystem.B.dylib 0x95b4a075 _pthread_start + 321 7 libSystem.B.dylib 0x95b49f32 thread_start + 34
Thread 0 crashed with X86 Thread State (32-bit): eax: 0x17c92ec0 ebx: 0x95f59ba7 ecx: 0x954c7574 edx: 0x00000000 edi: 0x17c93480 esi: 0x17c93480 ebp: 0xbfffe738 esp: 0xbfffe6f8 ss: 0x0000001f efl: 0x00010206 eip: 0x954156e8 cs: 0x00000017 ds: 0x0000001f es: 0x0000001f fs: 0x00000000 gs: 0x00000037 cr2: 0x00000020
Binary Images: [snip]
JiHO --- http://jo.irisson.free.fr/