[Qgis-developer] Build plugins for use with Mac binary
William Kyngesburye
woklist at kyngchaos.com
Wed Jan 21 10:11:39 EST 2009
On Jan 21, 2009, at 8:09 AM, Peter Ersts wrote:
> I am using the frameworks from the kyngchaos site. I can build QGIS
> ( using Branches/Release-1_0_0 ) just fine and the plugin works just
> fine for my own build of QGIS.
>
> I have attached an otool dump of the v1.0.0 distribution's north
> arrow plugin and my packaged plugin for reference. The only things
> that jump out at me are :
> libnortharrowplugin.so:
> @executable_path/lib/libqgis_core.1.0.dylib (compatibility version
> 0.0.0, current version 0.0.0)
> @executable_path/lib/libqgis_gui.1.0.dylib (compatibility version
> 0.0.0, current version 0.0.0)
> @executable_path/lib/libgeos_c.1.dylib (compatibility version
> 6.0.0, current version 6.2.0)
>
> vs.
>
> libevis.so:
> @executable_path/lib/libqgis_core.1.0.dylib (compatibility version
> 1.0.0, current version 1.0.0)
> @executable_path/lib/libqgis_gui.1.0.dylib (compatibility version
> 1.0.0, current version 1.0.0)
> @executable_path/lib/libgeos_c.1.dylib (compatibility version
> 4.0.0, current version 4.0.3)
>
It looks like maybe something went wrong in Tom's 1.0 compilation so
that it dropped the version numbers. So there is a version mismatch
between your plugin and Qgis.
Also, you say you are using my frameworks - GEOS and GDAL, it looks
like? Then are you using install_name_tool to change the library
references in your plugin? Same problem, though backwards. I build
my GEOS framework with the C++ and C APIs combined, thus they can't
have the two different version numbers, so I use an arbitrary
numbering system. I *think* Apple's runtime linker compatibility
versioning doesn't operate at all across major versions, forwards *or*
backwards (at least, I've had problems in the past trying to do so).
>
> In the past I have problem when the QT libs did not match exactly.
> Any suggestions?
>
Well, since you're using my frameworks to build your plugin, and your
own Qgis, try it out on my Qgis 1.0? No need to change the library
paths for GEOS or GDAL.
If you just want to make sure it will work on distributed Qgis
binaries, Tom may have to try rebuilding to get those version numbers
in there.
-----
William Kyngesburye <kyngchaos*at*kyngchaos*dot*com>
http://www.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