|
我用svn把osg的最新源码下载下来,然后建了一个OSG_VS2005_INC的环境变量表示头文件的根路径,然后再使用VS 2005建了OpenThreads、osg等十几个空的win32 dll工程,再把相关的头文件和源码文件加进去(我没使用CMake,不太会用,后来才发现王锐大侠写了一篇《Win32编译OSG》,狂晕)。我编译OpenThreads工程时出现一个问题:
fatal error C1083: 无法打开包括文件:“OpenThreads/Config”: No such file or directory
我找到OpenThreads/Config这个头文件,发现貌似是MAC系统的配置头文件。而在OpenThreads\Exports这个文件它是这样包含OpenThreads/Config的:- #ifndef _OPENTHREAD_EXPORTS_H_
- #define _OPENTHREAD_EXPORTS_H_
- #include <OpenThreads/Config>
- #ifndef WIN32
- #define OPENTHREAD_EXPORT_DIRECTIVE
- #else
- #if defined( OT_LIBRARY_STATIC )
- #define OPENTHREAD_EXPORT_DIRECTIVE
- #elif defined( OPENTHREADS_EXPORTS )
- #define OPENTHREAD_EXPORT_DIRECTIVE __declspec(dllexport)
- #else
- #define OPENTHREAD_EXPORT_DIRECTIVE __declspec(dllimport)
-
- #if 0 // Commented out for now
- #ifdef _MSC_VER
- #ifdef _DEBUG
- #pragma comment(lib ,"OpenThreadsWin32d")
- #else
- #pragma comment(lib, "OpenThreadsWin32")
- #endif
- #endif
- #endif
- #endif
- #endif
- #endif
复制代码 我想这里应该有问题吧,我感觉应该在定义mac系统的宏,如
#if defined(MAC_OS_X_VERSION_10_5)
下才能包含OpenThreads/Config吧。我把#include <OpenThreads/Config>注释掉就能把工程编译通过了。 |
|