[wx-dev] Making a Mac PKG for wxWidgets

Anders F Björklund afb at algonet.se
Thu Oct 12 06:05:13 PDT 2006


Vadim Zeitlin wrote:

> AFB> There can only be one main library in a .framework, in any 
> practical
> AFB> way...
>
>  So you are building with --enable-monolithic currently?

I am. Is that a problem ? I kinda thought it was preferred...

./configure --with-mac --with-opengl --enable-monolithic 
--enable-unicode \
--with-png=builtin --with-jpeg=builtin --with-tiff=builtin 
--with-expat=builtin

I see that for wxPython, it also wants the --enable-debug_flag set ?
/usr/local/lib/wxPython-ansi-2.6.3.3/lib/libwx_macd-2.6.0.3.1.dylib

> If correct, this
> is a big problem, we definitely would prefer to use multi library build
> under Mac too. But I wonder what exactly prevents us from putting 
> multiple
> libraries in the same framework?

They just don't work that way... Inside each "Foo.framework"
there is a single "Foo" dynamic library, for the common case.

But there is nothing stopping us putting all of them inside
a "Libraries" sub-directory, like for instance Mono does ?


Depends on whether we want a "pure" framework by the book,
or bend the rules a little - so that it is more convenient...

i.e. do we call it "wx.framework" (convenient) or do we call
it "wxWidgets.framework" (by the book), do we ship a single
monolithic library called "wxWidgets" or do we ship all the
regular multilib libraries with names that mean something ?

Do we ship a "wx-config" script that supplies the parameters,
or do we let each user specify them in their Xcode projects ?
Do we supply static libraries, or do we *require* dynamic ones ?
(frameworks doesn't do automatic configuration or static linking)

One idea is of course doing the wxWidgets.framework "by the book",
and just ship the regular hierarchy like on every other platform ?
(i.e. with an installer that sets it up in for instance /usr/local,
or perhaps just ship the binary installation like a tarball or zip)

A plus side of that is that you can use libs from e.g. DP or Fink.
i.e. you just link to libwx_macu-2.6.0.3.1.dylib, and it doesn't
matter if the user gets it from /usr/local, /opt/local, or /sw ?
A downside is that it is not very accessible from Finder or Xcode.

I can build both (and all) kinds, that is not really the problem.
--anders





More information about the wx-dev mailing list