如何构建 Poco C++ 库
How to build the Poco C++ libraries
我正在尝试在 Android、iOS 和 windows 上手动构建 Poco C++ 库。经过大量努力,我让他们在 Android 上构建,但我在 Windows.
上有点挣扎
我已经不得不手动编辑几个文件来解决未定义的符号——特别是文件和路径没有被 *_WIN32U.cpp 版本正确#included。
我正在研究 "Foundation" 的最后一个编译器问题。这是 Process_WIN32U.cpp:
中的这一行
envChars = getEnvironmentVariablesBuffer(env);
生成的编译器错误是:
"getEnvironmentVariablesBuffer identifier not found"
"getEnvironmentVariablesBuffer" 的声明在 Process.cpp 中,但它不是根 class 的成员,任何地方都没有 EXTERN 引用,也没有头文件包含函数声明。
那么 "Process_WIN32U.cpp" 到底是怎么能够看到那个函数的呢?
谢谢!
So how the heck is "Process_WIN32U.cpp" supposed to be able to see that function?
ProcessWIN32U.cpp(即 ProcessImpl class)能够看到该函数,因为 ProcessWIN32U.cpp 在 POCO Visual Studio 解决方案中是 included from Process.cpp and it was not designed or meant to be used standalone - it is excluded from build。
为了让 ProcessWIN32U.cpp 包含在 Process.cpp 中,必须手动 /D_WIN32 没有被 Visual Studio 定义(它定义了 WIN32)。
我正在尝试在 Android、iOS 和 windows 上手动构建 Poco C++ 库。经过大量努力,我让他们在 Android 上构建,但我在 Windows.
上有点挣扎我已经不得不手动编辑几个文件来解决未定义的符号——特别是文件和路径没有被 *_WIN32U.cpp 版本正确#included。
我正在研究 "Foundation" 的最后一个编译器问题。这是 Process_WIN32U.cpp:
中的这一行 envChars = getEnvironmentVariablesBuffer(env);
生成的编译器错误是: "getEnvironmentVariablesBuffer identifier not found"
"getEnvironmentVariablesBuffer" 的声明在 Process.cpp 中,但它不是根 class 的成员,任何地方都没有 EXTERN 引用,也没有头文件包含函数声明。
那么 "Process_WIN32U.cpp" 到底是怎么能够看到那个函数的呢?
谢谢!
So how the heck is "Process_WIN32U.cpp" supposed to be able to see that function?
ProcessWIN32U.cpp(即 ProcessImpl class)能够看到该函数,因为 ProcessWIN32U.cpp 在 POCO Visual Studio 解决方案中是 included from Process.cpp and it was not designed or meant to be used standalone - it is excluded from build。
为了让 ProcessWIN32U.cpp 包含在 Process.cpp 中,必须手动 /D_WIN32 没有被 Visual Studio 定义(它定义了 WIN32)。