Python Forum

Full Version: Finding the correct Python framework with cmake
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I am using the macports version of python on a Snow Leopard computer, and using cmake to build a cross-platform extension to it. I search for the python interpreter and libraries on the system using the following commands in CMakeLists.txt

include(FindPythonInterp)
include(FindPythonLibs)

However, while cmake identified the correct interpreter in /opt/local/bin, it tries to link against the wrong framework - namely the system Python framework.

Found PythonInterp: /opt/local/bin/python2.6

Found PythonLibs: -framework Python

And this causes the following runtime error

Fatal Python error: Interpreter not initialized (version mismatch?)
As soon as I replace -framework Python with /opt/local/Library/Frameworks/Python.framework/Python things seem to work as expected.

How can I make cmake link against the correct Python framework found in

/opt/local/Library/Frameworks/Python.framework/Python

rather than the system one in

/System/Library/Frameworks/Python.framework/Python
?