[Qgis-developer] Building universal binary on Leopard for Tiger
Gary Sherman
sherman at mrcc.com
Sat Apr 26 18:40:19 EDT 2008
On Apr 26, 2008, at 2:12 PM, William Kyngesburye wrote:
> I've found that the -mmacosx-version-min can miss in configuration
> (at least in libtool-based configures), so I always set
> MACOSX_DEPLOYMENT_TARGET to make sure.
>
> How did you specify the SDK option?
>
It detected it automatically -- in ccmake it is displayed as /
Developer/SDKs/MacOSX10.4u.sdk under CMAKE_OSX_SYSROOT.
If I don't specify -mmacosx-version-min=10.4, it tries to link with
the 10.5 sdk when linking libqgis_core.
Using your method of specifying MACOSX_DEPLOYMENT_TARGET=10.4 didn't
seem to help, although the build does seem to get farther before the
IOKit related errors:
Scanning dependencies of target qgis
[ 46%] Building CXX object src/app/CMakeFiles/qgis.dir/main.o
/System/Library/Frameworks/IOKit.framework/Headers/
OSMessageNotification.h:85: error: ‘io_user_reference_t’ was not
declared in this scope
/System/Library/Frameworks/IOKit.framework/Headers/
OSMessageNotification.h:87: error: ‘io_user_reference_t’ does not name
a type
/System/Library/Frameworks/IOKit.framework/Headers/
OSMessageNotification.h:92: error: ‘OSAsyncReference64’ does not name
a type
/System/Library/Frameworks/IOKit.framework/Headers/
OSMessageNotification.h:103: error: ‘io_user_reference_t’ does not
name a type
/System/Library/Frameworks/IOKit.framework/Headers/
OSMessageNotification.h:85: error: ‘io_user_reference_t’ was not
declared in this scope
/System/Library/Frameworks/IOKit.framework/Headers/
OSMessageNotification.h:87: error: ‘io_user_reference_t’ does not name
a type
/System/Library/Frameworks/IOKit.framework/Headers/
OSMessageNotification.h:92: error: ‘OSAsyncReference64’ does not name
a type
/System/Library/Frameworks/IOKit.framework/Headers/
OSMessageNotification.h:103: error: ‘io_user_reference_t’ does not
name a type
lipo: can't figure out the architecture type of: /var/folders/v-/
v-30qCWIFX0akWgqelP9lk+++TI/-Tmp-//ccaL5BYd.out
I'm not building with Python if that makes a difference.
-gary
> Big warning when compiling Qgis *for* Tiger *on* Leopard - you need
> to install the python.org Python framework and compile SIP and PyQt
> against that. But installing Python on Leopard will mess up your
> PATH for using Leopard's Python when you need it. Make usre to do a
> custom install and uncheck the "UNIX CLI tools" and "Shell profile
> updater" packages. And double-check your .bash_profile after to
> make sure it didn't add itself to the PATH. Then you temporarily
> add the framework to your PATH when needed for SIP, PyQt and Qgis
> (see below). Disable the Python framework when done (create a /
> Library/Frameworks (disabled) folder and move it there).
>
> Here is my configuration I use on Leopard to make my Tiger build
> (adjust lib deps for your system) -
>
> export MACOSX_DEPLOYMENT_TARGET=10.4
> export PATH="/Library/Frameworks/Python.framework/Versions/2.5/bin:
> $PATH"
> cmake -D CMAKE_INSTALL_PREFIX=/Applications -D
> CMAKE_BUILD_TYPE=Release -D CMAKE_OSX_ARCHITECTURES="ppc;i386" -D
> CMAKE_OSX_SYSROOT="/Developer/SDKs/MacOSX10.4u.sdk" -D
> SQLITE3_INCLUDE_DIR=/Library/Frameworks/SQLite3.framework/Headers -D
> SQLITE3_LIBRARY=/Library/Frameworks/SQLite3.framework/unix/lib/
> libsqlite3.dylib -D EXPAT_INCLUDE_DIR=/Users/Shared/unix/expat-tig/
> include -D EXPAT_LIBRARY=/Users/Shared/unix/expat-tig/lib/libexpat.a
> -D GSL_CONFIG=/Users/Shared/unix/gsl-tig/bin/gsl-config -D
> GEOS_INCLUDE_DIR=/Library/Frameworks/geos.framework/unix/include -D
> GEOS_LIBRARY=/Library/Frameworks/GEOS.framework/unix/lib/
> libgeos.dylib -D PROJ_INCLUDE_DIR=/Library/Frameworks/PROJ.framework/
> Headers -D PROJ_LIBRARY=/Library/Frameworks/PROJ.framework/unix/lib/
> libproj.dylib -D GRASS_INCLUDE_DIR=/Applications/GRASS-6.3.app/
> Contents/MacOS/include -D GRASS_PREFIX=/Applications/GRASS-6.3.app/
> Contents/MacOS ..
>
> On Apr 26, 2008, at 4:44 PM, Gary Sherman wrote:
>
>> Mac gurus,
>> I'm trying to build a universal binary for QGIS that will run on
>> both Leopard and Tiger. If I build using the 10.5 SDK it doesn't
>> run on Tiger. If I attempt to build using the 10.4 SDK, the build
>> fails with:
>>
>> /System/Library/Frameworks/IOKit.framework/Headers/
>> OSMessageNotification.h:85: error: ‘io_user_reference_t’ was not
>> declared in this scope
>> /System/Library/Frameworks/IOKit.framework/Headers/
>> OSMessageNotification.h:87: error: ‘io_user_reference_t’ does not
>> name a type
>> /System/Library/Frameworks/IOKit.framework/Headers/
>> OSMessageNotification.h:92: error: ‘OSAsyncReference64’ does not
>> name a type
>> /System/Library/Frameworks/IOKit.framework/Headers/
>> OSMessageNotification.h:103: error: ‘io_user_reference_t’ does not
>> name a type
>> /System/Library/Frameworks/IOKit.framework/Headers/
>> OSMessageNotification.h:85: error: ‘io_user_reference_t’ was not
>> declared in this scope
>> /System/Library/Frameworks/IOKit.framework/Headers/
>> OSMessageNotification.h:87: error: ‘io_user_reference_t’ does not
>> name a type
>> /System/Library/Frameworks/IOKit.framework/Headers/
>> OSMessageNotification.h:92: error: ‘OSAsyncReference64’ does not
>> name a type
>> /System/Library/Frameworks/IOKit.framework/Headers/
>> OSMessageNotification.h:103: error: ‘io_user_reference_t’ does not
>> name a type
>> lipo: can't figure out the architecture type of: /var/folders/v-/
>> v-30qCWIFX0akWgqelP9lk+++TI/-Tmp-//ccKA5jqP.out
>>
>>
>> I've passed -mmacosx-version-min=10.4 as a CXX flag during the
>> configuration process.
>>
>> Ideas?
>
> -----
> William Kyngesburye <kyngchaos*at*kyngchaos*dot*com>
> http://www.kyngchaos.com/
>
> "Those people who most want to rule people are, ipso-facto, those
> least suited to do it."
>
> - A rule of the universe, from the HitchHiker's Guide to the Galaxy
>
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
Gary Sherman
Chair, QGIS Project Steering Committee
-Micro Resources: http://mrcc.com
*Geospatial Hosting
*Web Site Hosting
-Desktop GIS Book:
*http://desktopgisbook.com
"We work virtually everywhere"
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
More information about the Qgis-developer
mailing list