[Qgis-developer] Questions and suggestion on build setup

William Kyngesburye woklist at kyngchaos.com
Mon Dec 4 18:25:46 EST 2006

On Dec 4, 2006, at 4:53 PM, Tom Elwertowski wrote:

>> - the scalebar plugin is the only one that has 'lib' prefixed to  
>> its name, and has mixed case:
>> libScaleBarplugin
> libwfsprovider also has the prefix but is not mixed case. My  
> preference is not to include 'lib' if 'plugin' or 'provider' is  
> part of the name.
Makes more sense.  I didn't notice about wfs provider - preview 2  
didn't enable that by default, so I skipped it.

>> The plugins is an odd one, because 'plugins' is the name of the Qt  
>> plugins folder, and 'PlugIns' is the standard OSX plugins folder  
>> name.  Qt plugins I think needs to be in the samme place relative  
>> to the qt frameworks, but I don't know for sure, and there is  
>> probably some way to set that at runtime.  On a normal OSX file  
>> system, the case difference in the name shouldn't be a problem,  
>> but it would be on a case-sensitive HFS+ or UFS disk.

I found where Qgis initializes the Qt plugin path if Qt frameworks  
are embedded.  So I can adjust this as necessary (I put them in with  
Qgis plugins for now in my experiment).

>> The only changes needed are the resources and plugins path  
>> functions, and in the help app for locating the help data.
> Personally, I like using the same paths as *nix so that changes  
> made by a *nix developer are likely to work on a Mac with no extra  
> effort.
> Most, maybe all, path names are encapsulated in accessor functions  
> in the QgsApplication class. You can try reorganizing the  
> directories yourself to see how feasible it is. If you get it  
> working, you can give us the changes.
I found those.  But the 'same paths as nix' is countered in these  
because they have #ifdefs for whether it's a nix, mac or win build.   
I was able to change these with no trouble.

> A related issue are the helper applications. If really going the  
> Mac path route, they probably should be in a 'Utilities' folder  
> alongside QGIS rather then inside the bundle, especially apps like  
> msexport, gridmaker and spit.
Except that, if they link to Qgis libraries in the Qgis app, that's a  
bad thing to do.  But don't those (havn't built msexport yet) build  
as plugins?  At one time they may have built as executable variants,  
I recall seeing these once, maybe in 0.7.

> Also, Qt 4.2 is now available as a dmg file so you might want to  
> try that as well. (Look in the 'previous versions' link which is  
> actually the complete Qt distribution directory.)
I'm starting the Xcode thing with the preview 2 source for now - can  
that build with Qt 4.2 as is?  Once I get the bulk of the Xcode  
project settled (actually, almost done), I'll switch over to SVN  
source and Qt 4.2.

> I'm more interested in rearranging dialog boxes (Qt 4.2 does  
> support Mac ordering of OK and Cancel buttons) than bundle  
> directories but you should feel free to try this yourself.

One big plus with Xcode is that a universal build is super easy.  And  
the app bundle packaging is automatic.

William Kyngesburye <kyngchaos at kyngchaos.com>

"This is a question about the past, is it? ... How can I tell that  
the past isn't a fiction designed to account for the discrepancy  
between my immediate physical sensations and my state of mind?"

- The Ruler of the Universe

More information about the Qgis-developer mailing list