[CMake] Build doesn't work with Mac OS X Lion...

Daniel Dekkers d.dekkers at cthrough.nl
Thu Dec 8 11:49:42 EST 2011


Hi,

And which one is which?
In Xcode (4.2), Lion, 64 bit Intel platform, a standard Xcode Mac OS X "template" will give these build settings in the Architectures section:

Architectures
  Additional SDKs
  Architectures					64-bit Intel - $(ARCHS_STANDARD_64_BIT) (this last value is grayed out)
  Base SDK						Latest Mac OS X (Mac OS X 10.7)
  Build Active Architecture Only		<Multiple values>
  Supported Platforms				macosx
  Valid Architectures				i386 x86_64

I always thought that the CMAKE_OSX_ARCHITECTURES value corresponded with the "first" Architectures Xcode field. So I set:
set(CMAKE_OSX_ARCHITECTURES "$(ARCHS_STANDARD_64_BIT)") in my CMake builds.
But with your last mail i'm confused if it corresponds to the Valid Architectures field instead. 
Or are these fields related? 64-bit Intel *implies* i386 and x86_64, although you could remove one of the two.

For an iOS "template" on the same system I get this:

Architectures
  Additional SDKs
  Architectures					Standard (armv7) - $(ARCHS_STANDARD_32_BIT) (this last value is grayed out)
  Base SDK						/Developer/[blabla]/iPhoneOS5.0.sdk
  Build Active Architecture Only		No
  Supported Platforms				iphonesimulator iphoneos
  Valid Architectures				armv6 armv7

Thanks,
Daniel

On Dec 8, 2011, at 3:35 PM, Nicolas Rannou wrote:

> What about moving to 64 bits?
> (which I guess is more relevant for Lion apps)
> 
> In your build directory:
> ccmake .
> Then modify:
> CMAKE_OSX_ARCHITECTURES          x86_64                                       
>  CMAKE_OSX_DEPLOYMENT_TARGET      10.7                                         
>  CMAKE_OSX_SYSROOT                /Developer/SDKs/MacOSX10.7.sdk
> 
> Nicolas
> 
> On Tue, Dec 6, 2011 at 5:35 PM, Dick Munroe <munroe at csworks.com> wrote:
> Yes I'm using 2.8.6.  Best,  Dick Munroe
> 
> 
> On 11/26/11 11:18 AM, David Cole wrote:
> Are you using CMake 2.8.6...? Older CMake versions have not been used
> much on Lion. It wouldn't surprise me if 2.8.6 works, but earlier
> versions have issues...
> 
> 
> HTH,
> David
> 
> 
> On Sat, Nov 26, 2011 at 6:37 AM, Daniel Dekkers<d.dekkers at cthrough.nl>  wrote:
> This:
> 
> SET(CMAKE_OSX_ARCHITECTURES "$(ARCHS_STANDARD_32_BIT)")
> seems to result in a "standard" Xcode setting (armv7 (standard)) which is also set when you let Xcode create a fresh iOS app (from its own templates).
> 
> But you also see this a lot on the fora:
> SET(CMAKE_OSX_ARCHITECTURES "$(ARCHS_UNIVERSAL_IPHONE_OS)")
> 
> Not sure.
> 
> On Nov 26, 2011, at 4:38 AM, Michael Jackson wrote:
> 
> There is a cmake variable that you set during  onfiguration time.
> Something like os_x_architectures. There you can add the specific arch
> that you want to build for.
> 
> -----
> Mike Jackson                     www.bluequartz.net
> Principal Software Engineer       mike.jackson at bluequartz.net
> BlueQuartz Software               Dayton, Ohio
> ____________________________
> Sent from my mobile device. Please excuse the shortness of the reply.
> 
> On Nov 25, 2011, at 14:47, Dick Munroe<munroe at csworks.com>  wrote:
> 
> I've got a build that works just fine with Leopard.
> 
> For reasons I won't get into, I had to upgrade one of my systems to Lion and now (I've installed XCode 4.2) the build won't work.  I get the following error:
> 
> [  0%] Reaping winning child 0x10260c510 PID 1009
> Live child 0x10260c510 (libxp/CMakeFiles/xp.dir/Users/munroe/Documents/My_SVN/ESPlanner_Computation_Engine.U2011-11-01/Common/xmllib/print/libxp.cpp.o) PID 1010
> Building CXX object libxp/CMakeFiles/xp.dir/Users/munroe/Documents/My_SVN/ESPlanner_Computation_Engine.U2011-11-01/Common/xmllib/print/libxp.cpp.o
> Reaping winning child 0x10260c510 PID 1010
> Live child 0x10260c510 (libxp/CMakeFiles/xp.dir/Users/munroe/Documents/My_SVN/ESPlanner_Computation_Engine.U2011-11-01/Common/xmllib/print/libxp.cpp.o) PID 1011
> llvm-g++-4.2: Invalid arch name : -O2
> Reaping losing child 0x10260c510 PID 1011
> make[2]: *** [libxp/CMakeFiles/xp.dir/Users/munroe/Documents/My_SVN/ESPlanner_Computation_Engine.U2011-11-01/Common/xmllib/print/libxp.cpp.o] Error 1
> Removing child 0x10260c510 PID 1011 from chain.
> Reaping losing child 0x10c20c290 PID 1008
> make[1]: *** [libxp/CMakeFiles/xp.dir/all] Error 2
> Removing child 0x10c20c290 PID 1008 from chain.
> Reaping losing child 0x10940e730 PID 996
> 
> If I dig around, I find the CXX flags to be:
> 
> -arch  -O2 -fPIC
> 
> and for some reason the Lion g++ compiler is choking thinking that there should be and arch value.  Which if I dig around in the Leopard build I find:
> 
> -Dxp_EXPORTS  -arch i386 -O2 -g -fPIC
> 
> Which brings up the questions, (1) with the same CMakeLists.txt file, why am I getting different values and (2) how do I get the arch to be i386 on the Lion build.
> 
> Best,
> 
> Dick Munroe
> 
> --
> 
> 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
> --
> 
> 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
> 
> --
> 
> 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

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20111208/791d2e5a/attachment-0001.htm>


More information about the CMake mailing list