[Scribus] MacOS native version
Craig Ringer
craig
Sat Mar 5 13:10:43 CET 2005
On Sat, 2005-03-05 at 02:22 +0100, Andreas Vox wrote:
> Hi!
>
> I noticed that you still require X11 for the MacOSX version of Scribus.
>
> I managed to compile Scribus 1.2.1 with Qt/Mac native and I wondered
> if you'd like to get some hints how it is done. In fact it was quite
> easy once I solved my libtool problems (screenshot attached :-) )
This does seem extremely interesting. I've been meaning to try an Aqua-
native port of 1.3cvs for a while, but I just don't have the mac
development experience, and there was the gdk-pixbuf issue to consider.
Like Craig Bradney, I'd be very interested in knowing how you handled
fonts and how you worked around the gdk dependencies.
>From what I see in your library list below, I see that you still link to
quite a few fink-supplied libraries. I imagine we'd have to ship
prebuilt copies of those, or statically link them, with any
"installable" Aqua Scribus build. Sound about right?
> 9. Created a rudimentary Scribus.app/ bundle (thanks to Ronald Florence
> who did the same for LyX so I just had to replace a few strings)
That's very, very useful to know.
Did you end up using Xcode for all this, or just tweaked the existing
build to use Qt/Aqua?
> /sw/lib/libjpeg.62.dylib (compatibility version 63.0.0, current
> version 63.0.0)
Does MacOS X not provide libjpeg? That's from fink by the looks...
> /sw/lib/libart_lgpl_2.2.dylib (compatibility version 6.0.0,
> current version 6.16.0)
I imagine we'd have to bundle or statically link libart.
> /usr/local/lib/libfreetype6.dylib (compatibility version 6.2.0,
> current version 6.3.4)
/usr/local/lib . Interesting. Did you compile a Mac-native version of
freetype yourself, or use an installer package or something?
> /usr/lib/libcups.2.dylib (compatibility version 2.0.0, current
> version 2.5.0)
Glad to see we can rely on MacOS/X for CUPS libraries.
> /usr/lib/libssl.0.9.7.dylib (compatibility version 0.9.7,
> current version 0.9.7)
> /usr/lib/libcrypto.0.9.7.dylib (compatibility version 0.9.7,
> current version 0.9.7)
> /sw/lib/liblcms.1.dylib (compatibility version 2.0.0, current
> version 2.12.0)
Fink again. I guess that'd be another static linking candidate.
> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0,
> current version 71.1.1)
Is this MacOS/X's libc equivalent? Or does it provide the core Aqua
routines etc?
> /sw/lib/libtiff.3.dylib (compatibility version 3.6.0, current
> version 3.6.1)
Hmm, you got libtiff from fink too. Again, I'm rather surprised OS/X
doesn't include that.
> libqt-mt.3.dylib (compatibility version 3.3.0, current version
> 3.3.3)
> /sw/lib/libpng.3.dylib (compatibility version 3.0.0, current
> version 3.0.0)
libpng from fink too :-(
> /usr/lib/libz.1.dylib (compatibility version 1.0.0, current
> version 1.0.0)
>
> I still have problems with some plugins and some icons don't show, but
> otherwise
> it's usable.
> Anyone who want's to test and help finishing it to a proper MacOSX
> application?
Me!
Especially if you can give some more detailed info, especially about how
you did the build and where the various libraries are from.
One thing I'm curious about... I know MacOS/X has five different major
APIs:
Carbon (Cleaned up OS/9)
Classic (Virtual OS/9 for unchanged apps)
Cocoa (Native MacOS/X Objective C/Aqua)
Java (duh!)
POSIX/BSD/X11 (unix-style apps, usually console or X11 based)
but I was always under the impression they were rather separate, and one
couldn't for example write a POSIX/BSD app that used Cocoa (Aqua)
graphics. I also thought Cocoa apps had to link to 'Libraries' and
'Frameworks' that were different from the POSIX/BSD style shared
libraries.
Do you know if this distinction is less strict than I thought, and one
can mix and match to an extent? Or is Qt doing some magic to protect us
from these issues? Can we do things like use the MacOS/X font APIs? Have
you built Scribus as a Cocoa application, a POSIX/BSD app, or some
hybrid of the two?
If you know where I can go to find out more about MacOS/X development
and porting from UNIX, that'd be really handy too...
(It's funny - I don't actually like macs. But I still want to help port
Scribus across.)
--
Craig Ringer
More information about the scribus
mailing list