Hi, Please forgive my ignorance of cmake, but I am running into trouble on OSX with 2.8.10 and cmake-2.8.10.20121101-gafe0-Darwin64-universal (but not 2.8.9).
In fact I am trying to compile PySide-1.1.2 : http://pypi.python.org/pypi/PySide http://pypi.python.org/packages/source/P/PySide/PySide-1.1.2.tar.gz#md5=885f8cf2e4c0c46b76568f0c1eae5c43 (if you want to try this you need something like the appended patch to get started. To compile I am doing: tar xxvf PySide-1.1.2.tar.gz patch -p0 < the-attached-patch cd PySide-1.1.2.tar.gz python setup.py install - with Python.org Python 2.7 ) For cmake 2.8.9 and with no OSX related env variables, the compilation proceeds (with unrelated errors later on). For cmake 2.8.10 I get this: Creating module build folder /Users/mb312/tmp/pyside2/PySide-1.1.2/pyside_build/py2.7-qt4.8.3-64bit-release/shiboken... Configuring module shiboken (/Users/mb312/tmp/pyside2/PySide-1.1.2/sources/shiboken)... cmake -G Unix Makefiles -DQT_QMAKE_EXECUTABLE=/usr/bin/qmake -DBUILD_TESTS=False -DDISABLE_DOCSTRINGS=True -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/Users/mb312/tmp/pyside2/PySide-1.1.2/pyside_install/py2.7-qt4.8.3-64bit-release /Users/mb312/tmp/pyside2/PySide-1.1.2/sources/shiboken -DPYTHON_EXECUTABLE=/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python -DPYTHON_INCLUDE_DIR=/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -DPYTHON_LIBRARY=/Library/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=yes -- The C compiler identification is GNU 4.2.1 -- The CXX compiler identification is GNU 4.2.1 CMake Error at /Applications/CMake 2.8-10.app/Contents/share/cmake-2.8/Modules/Platform/Darwin.cmake:189 (message): CMAKE_OSX_DEPLOYMENT_TARGET is '10.6' but CMAKE_OSX_SYSROOT: "" is not set to a MacOSX SDK with a recognized version. Either set CMAKE_OSX_SYSROOT to a valid SDK or set CMAKE_OSX_DEPLOYMENT_TARGET to empty. Call Stack (most recent call first): /Applications/CMake 2.8-10.app/Contents/share/cmake-2.8/Modules/CMakeSystemSpecificInformation.cmake:36 (include) CMakeLists.txt:2 (project) -- Configuring incomplete, errors occurred! error: Error configuring shiboken I should clarify that: $ echo $CMAKE_OSX_DEPLOYMENT_TARGET $ echo $CMAKE_OSX_SYSROOT $ echo $MACOSX_DEPLOYMENT_TARGET If I do: export CMAKE_OSX_SYSROOT=/Developer/SDKs/MacOSX10.6.sdk/ and then run from a fresh install, I get the same error including: CMake Error at /Applications/CMake 2.8-10.app/Contents/share/cmake-2.8/Modules/Platform/Darwin.cmake:189 (message): CMAKE_OSX_DEPLOYMENT_TARGET is '10.6' but CMAKE_OSX_SYSROOT: "" is not set to a MacOSX SDK with a recognized version. Either set CMAKE_OSX_SYSROOT to a valid SDK or set CMAKE_OSX_DEPLOYMENT_TARGET to empty If I: $ unset CMAKE_OSX_SYSROOT $ export MACOSX_DEPLOYMENT_TARGET=10.5 and restart _from a freshly unpacked directory as above_ I get the following error: Creating module build folder /Users/mb312/tmp/pyside2/PySide-1.1.2/pyside_build/py2.7-qt4.8.3-64bit-release/shiboken... Configuring module shiboken (/Users/mb312/tmp/pyside2/PySide-1.1.2/sources/shiboken)... cmake -G Unix Makefiles -DQT_QMAKE_EXECUTABLE=/usr/bin/qmake -DBUILD_TESTS=False -DDISABLE_DOCSTRINGS=True -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/Users/mb312/tmp/pyside2/PySide-1.1.2/pyside_install/py2.7-qt4.8.3-64bit-release /Users/mb312/tmp/pyside2/PySide-1.1.2/sources/shiboken -DPYTHON_EXECUTABLE=/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python -DPYTHON_INCLUDE_DIR=/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -DPYTHON_LIBRARY=/Library/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=yes error: $MACOSX_DEPLOYMENT_TARGET mismatch: now "10.5" but "10.6" during configure If I: $ unset MACOSX_DEPLOYMENT_TARGET $ export CMAKE_OSX_DEPLOYMENT_TARGET=10.5 I get the same error message as originally, including: -- The CXX compiler identification is GNU 4.2.1 CMake Error at /Applications/CMake 2.8-10.app/Contents/share/cmake-2.8/Modules/Platform/Darwin.cmake:189 (message): CMAKE_OSX_DEPLOYMENT_TARGET is '10.6' but CMAKE_OSX_SYSROOT: "" is not set to a MacOSX SDK with a recognized version. Either set CMAKE_OSX_SYSROOT to a valid SDK or set CMAKE_OSX_DEPLOYMENT_TARGET to empty. If I grep for 'DEPLOYMENT' in the PySide sources, I find nothing - so I do not believe these variables are being set by PySide. So, in my situation at least, I believe cmake 2.8.10 (not 2.8.9) is ignoring CMAKE_OSX_DEPLOYMENT_TARGET and CMAKE_OSX_SYSROOT, and setting CMAKE_OSX_DEPLOYMENT_TARGET unconditionally without setting CMAKE_OSX_SYSROOT. Is that possible? Is there something else I can do to debug? Best, Matthew diff -u PySide-1.1.2-orig/setup.py PySide-1.1.2/setup.py --- PySide-1.1.2-orig/setup.py 2012-09-07 06:51:47.000000000 -0700 +++ PySide-1.1.2/setup.py 2012-11-03 18:45:18.000000000 -0700 @@ -245,11 +245,12 @@ py_abiflags = getattr(sys, 'abiflags', None) py_library = os.path.join(py_libdir, "libpython%s%s.so" % \ (py_version, py_abiflags)) - else: + else: # Python 2 py_library = os.path.join(py_libdir, "libpython%s%s.so" % \ (py_version, dbgPostfix)) if not os.path.exists(py_library): py_library = py_library + ".1" + py_library = '/Library/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib' if not os.path.exists(py_library): raise DistutilsSetupError( "Failed to locate the Python library %s" % py_library) -- 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