I've discovered a few things:
- _ctypes depends on pythoncore.
- other projects that depend on pythoncore are not built by msbuild.
- If I remove the dependency of _ctypes on pythoncore and then do the build with msbuild, _ctypes is built and I can import ctypes.
- If instead I explicitly specify _ctypes as a target, it gets built (and along with a regular build, I can import ctypes).
I see why that ctypes does depend on pythoncore, because it needs python33.lib to link.
In trying to discover how to have msbuild attempt to build the entire solution, I ran across [this article](http://blogs.msdn.com/b/visualstudio/archive/2010/12/21/incorrect-solution-build-ordering-when-using-msbuild-exe.aspx) which says that best practice is not to declare project dependencies in a solution file at all but instead declare project dependencies in the project files themselves (so _ctypes should <Include> pythoncore, for example).
I plan to look into this issue more later. |