[Qgis-developer] QGIS and Xcode

Tim Sutton tim at linfiniti.com
Sun Feb 1 15:43:17 EST 2009


Hi

On Sunday 01 February 2009 20:08:25 William Kyngesburye wrote:
> On Feb 1, 2009, at 10:39 AM, Gary Sherman wrote:
> > I know there was some discussion on this in the past. Has anyone
> > successfully used Xcode to build QGIS?
> >
> > -gary
>
> It's certainly possible.  I messed around with a Qgis Xcode project
> once upon a time.  There are 2 approaches:
>
> - quick-n-dirty: run the configure/cmake + make + make install from
> Xcode.  This doesn't realy gain much over doing the same from a
> Terminal, but you can run post-processing and bundling scripts in it,
> and it helps to standardize some configuration options that will not
> change for OSX.  Very easy to maintain, since all configuration and
> compilation is external.
>

Did you try ccmake -G XCode (from memory) ccmake --help to verify exact 
keyword)? It generates an xcode project but I never had much joy with what it 
produced....

Regards

Tim


> - the-right-way: completely redo configuration and compilation to
> Xcode methods.  This is what I tried for Qgis.  It requires keeping
> the Xcode project in sync with the cmake method - which source files
> to compile, names of targets, ...  Xcode doesn't have a wildcard
> source specifier - all sources must be explicitly listed in the
> project (Qgis may already do that in cmake?).  There is no way to use
> a list of files from a text file (such as the cmakelists file), except
> to create an amalgamation source to be compiled.  And a non-Mac
> developer couldn't edit the Xcode project file to add or delete
> sources, it's a big XML mess.  This is what made me drop the Xcode
> method.
>
> Dependency configuration is tricky.  I came up with a pretty flexible
> method to specify dependencies, including handling variations of
> framework vs library and static vs dynamic libs, but it still requires
> some manual editing of a configuration file.
>
> The Qt stuff could be messy.  Custom rules could be made to do the Qt
> processing (might be some info in the Qt docs).  Or simply use inline
> scripts (quick-n-dirty but messy).
>
> But it's much easier to do the packaging (automatic), and could take
> care of some of the problematic bits (like bug #768) more reliably.
> Bundling of external stuff like the Qt frameworks would also be quite
> simple.
>
> For developers, the debugger GUI might be of interest.
>
> Other interesting possibilities are 'frameworkizing' the Qgis
> libraries, and otherwise organizing the application package in a more
> Mac way (though some of this would require source changes to account
> for the paths).
>
> If there is interest, and someone willing to maintain it (requires
> keeping track of new/deleted source files), I could work on an Xcode
> project.  (I might be persuaded to maintain it)  Now that the dust has
> settled with 1.0, it may be easier to keep an Xcode project maintained.
>
> One problem would be Xcode versions.  Each OSX system version has its
> own Xcode version.  Early versions are importable into later versions,
> but I don't know if there is an export feature to go back.  I'd be
> doing this in Xcode 3 on Leopard, and at a minimum we should support
> Xcode 2.5 on Tiger.  Though, with their backward compatibility plan
> when they released Xcode 2.5 (it will run on Leopard), it's possible
> v2.5 can open v3 projects.
>
> -----
> William Kyngesburye <kyngchaos*at*kyngchaos*dot*com>
> http://www.kyngchaos.com/
>
> The equator is so long, it could encircle the earth completely once.
>
> _______________________________________________
> Qgis-developer mailing list
> Qgis-developer at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/qgis-developer

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part.
Url : http://lists.osgeo.org/pipermail/qgis-developer/attachments/20090201/1a47b17d/attachment.bin


More information about the Qgis-developer mailing list