[CMake] Configure Mac OS X for 32-bit
Mike Jackson
mike.jackson at bluequartz.net
Sun May 2 15:45:07 EDT 2010
Actually the gcc flags for OS X are:
-arch i386
-arch x86_64
-arch ppc
-arch ppc64
He should not have to set any environment variables but simply set the
correct CMAKE_OSX_ARCHITECTURES when he uses cmake.
_________________________________________________________
Mike Jackson mike.jackson at bluequartz.net
On Sun, May 2, 2010 at 3:25 PM, Werner Smekal <smekal at iap.tuwien.ac.at> wrote:
> Hi Thomas,
>
> On 5/2/10 5:41 PM, Tron Thomas wrote:
>> Before when I was using an earlier version of CMake, it would configure
>> the project to build a 32-bit version of all the project target's
>> regardless of which version of Mac OS X I was using. It would also
>> build just the platform specific version of the targets for a debug build.
>>
>> Now that I have upgraded to CMake version 2.8.1, CMake wants to
>> configure the project's targets to build for 64-bit on Mac OS X 10.6.
>>
>> The only way I've found so far to make Mac OS X 10.6 build 32-bit, is to
>> modify the CMAKE_OSX_ARCHITECTURES to include i386. However, if I set
>> CMAKE_OSX_ARCHITECTURES to only i386, then it will build create an Intel
>> version of all targets when I build on a PowerPC system. That means I
>> won't be able to run and test the targets on that platform.
>>
>> I'm trying to get things back to where they were before I upgraded to
>> CMake 2.8.1. I want it to configure Xcode to build 32-bit targets, with
>> architecture specific version for debug builds.
>>
>> How can someone accomplish this?
>
> why not set this option when you call cmake? so:
>
> cmake -DCMAKE_OSX_ARCHITECTURES=386 path-to-source
>
> on your 10.6 system and
>
> cmake -DCMAKE_OSX_ARCHITECTURES=ppc path-to-source
>
> on your old system (that is, if you use the command line cmake).
>
> Alternatively you could add the -m32 option to gcc like this
>
> export CC="gcc -m32"
> cmake path-to-source
>
> on your 10.6 system where a 32 bit application should then be build
> (according e.g.
> http://www.cyberciti.biz/tips/compile-32bit-application-using-gcc-64-bit-linux.html
> , which should also be true for Mac OS X 10.6).
>
> Regards,
> Werner
>
>
>>
>> On 05/02/2010 01:58 AM, Michael Wild wrote:
>>> Well, setting CMAKE_OSX_ARCHITECTURES to i386 AND ppc is going to get
>>> you a universal build, both of the architectures being 32-bit. So,
>>> what is it exactly that you want?
>>>
>>> Michael Wild
>>>
>>> On Sun, May 2, 2010 at 8:15 AM, Tron Thomas <tron.thomas at verizon.net
>>> <mailto:tron.thomas at verizon.net>> wrote:
>>>
>>> It looks like:
>>>
>>> set (CMAKE_OSX_ARCHITECTURES "i386 ppc")
>>>
>>> will build a universal binary for a debug build on any platform.
>>> How can someone configure things so that Xcode will build a
>>> platform specific debug version that is 32-bit?
>>>
>>>
>>>
>>> On 05/01/2010 04:55 PM, Mike Jackson wrote:
>>>
>>> You need to set the CMAKE_OSX_ARCHITECTURES to i386. The
>>> default build
>>> on snow leopard is 64bit where as on leopard it is 32 bit.
>>>
>>> -----
>>> Mike Jackson www.bluequartz.net
>>> <http://www.bluequartz.net>
>>> Principal Software Engineer mike.jackson at bluequartz.net
>>> <mailto:mike.jackson at bluequartz.net>
>>> BlueQuartz Software Dayton, Ohio
>>>
>>>
>>> On May 1, 2010, at 15:33, Tron Thomas<tron.thomas at verizon.net
>>> <mailto:tron.thomas at verizon.net>> wrote:
>>>
>>>
>>>
>>> I am writing a cross platform application using CMake that
>>> builds on
>>> Mac OS X. I just upgraded to CMake 2.8-1. When I
>>> configure and
>>> build my project on my Power Mac G5 system running Mac OS
>>> X 10.5.8,
>>> the project builds just fine.
>>>
>>> When I try to configure the project on my MacBook Pro
>>> running Mac OS
>>> X 10.6.3, I get link errors because the project has been
>>> configured
>>> to build 64-bit applications and some of the needed
>>> libraries and
>>> frameworks the project links with are only 32-bit.
>>>
>>> How can I configure my CMake scripts so that the project
>>> will build
>>> a 32-bit application on my MacBook Pro?
>>>
>>> _______________________________________________
>>> Powered by www.kitware.com <http://www.kitware.com>
>>>
>>> Visit other Kitware open-source projects at
>>> http://www.kitware.com/opensource/opensource.html
>>>
>>> Please keep messages on-topic and check the CMake FAQ at:
>>> http://www.cmake.org/Wiki/CMake_FAQ
>>>
>>> Follow this link to subscribe/unsubscribe:
>>> http://www.cmake.org/mailman/listinfo/cmake
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Powered by www.kitware.com <http://www.kitware.com>
>>>
>>> Visit other Kitware open-source projects at
>>> http://www.kitware.com/opensource/opensource.html
>>>
>>> Please keep messages on-topic and check the CMake FAQ at:
>>> http://www.cmake.org/Wiki/CMake_FAQ
>>>
>>> Follow this link to subscribe/unsubscribe:
>>> http://www.cmake.org/mailman/listinfo/cmake
>>>
>>>
>>
>>
>>
>> _______________________________________________
>> Powered by www.kitware.com
>>
>> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>>
>> Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ
>>
>> Follow this link to subscribe/unsubscribe:
>> http://www.cmake.org/mailman/listinfo/cmake
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake
>
More information about the CMake
mailing list