我无法找到可能的证据。在经历了40个小时的疯狂之后,我剩下的情况是我无法构建本地化项目,该项目据称会建立一个名为AllInOne项目(构建Xalan-C.lib,natch)所需的头文件。如何用Visual Studio 2010创建Xalan-C?
这个库是软件弊端令人沮丧的,我渴望得到答案,因为它是另一个库中的依赖项,我没有其他选择使用。
我无法找到可能的证据。在经历了40个小时的疯狂之后,我剩下的情况是我无法构建本地化项目,该项目据称会建立一个名为AllInOne项目(构建Xalan-C.lib,natch)所需的头文件。如何用Visual Studio 2010创建Xalan-C?
这个库是软件弊端令人沮丧的,我渴望得到答案,因为它是另一个库中的依赖项,我没有其他选择使用。
我已经在Visual Studio 2010中设法构建了Xalan-C 1.11版本,与最新版本的Xerces-C(v3.1.1)兼容。我不知道是否可以使用早期版本,但是这些是我遵循的顺序步骤来建立与1.11版本:
的Xerces-C已建成一个动态库,获得了Xerces-c_3_1D.dll文件,该文件MsgCreator.exe依赖。
克隆github repository获取Xalan-C版本1.11的源代码。
在windows(不在Visual Studio中)中设置环境变量XERCESCROOT
和XALANCROOT
。
XERCESCROOT The Xerces-C/C++ installation directory
XALANCROOT The Xalan-C/C++ source directory
打开VS2010中的Xalan-C的解决方案,并建立了MsgCreator
项目。
将Xerces-C构建中的xerces-c_3_1D.dll
文件复制到Xalan-C构建文件夹中,该文件夹位于MsgCreator.exe
所在的同一文件夹中。
现在可以生成打造的“ALLINONE”项目所需要的“失踪”头文件(LocalMsgIndex.hpp和LocalMsgData.hpp)。
运行MsgCreator.exe在cmd中与所提供的路径XalanMsg_en_US.xlf
它位于$(XALANCROOT)\src\xalanc\NLS\en_US
什么method建设现场消息时使用。
MsgCreator.exe $(XALANCROOT)\src\xalanc\NLS\en_US\XalanMsg_en_US.xlf -TYPE=inmem
(我用-TYPE=inmem
,但检查,看看有什么方法最适合您的解决方案)
的头文件现在生成,位于build目录(其中MsgCreator .exe驻留)。复制或移动它们到$(XALANCROOT)\src
,他们现在应该能够被定位。
现在构建XalanMsgLib
项目。
而在最终构建之前要做的最后一件事是处理afxres.h
包括AllInOne.rc
文件(位于$(XALANCROOT)\Projects\Win32\Res\AllInOne
)。 Visual Studio Express版本不包含包含afxres.h
标头的MFC库。我只是将它改为#include "windows.h"
。
现在应该可以成功构建“AllInOne”。