
正文
使用ACE遇到无法打开包括文件:“inttypes.h”的解决方案
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
本来想使用ACE_Get_Opt类来做一个命令行解析的功能,但是当项目中配置好了ACE库的路径后,编译时遇到“无法打开包括文件: inttypes.h : No such file or directory ”的错误。
下面是我的目录配置

由于是编译错误,所以和库目录的设置没关系。
下面是代码
// GetOptTest.cpp : 定义控制台应用程序的入口点。
//#include "stdafx.h"
#include "Get_Opt.h"int _tmain(int argc, _TCHAR* argv[])
{
ACE_Get_Opt opt(argc, argv, "s:p:u:p:", 1, 1);
//opt.long_option()
return 0;
}
因为目录中设置了”..\ace\”,所以代码中引用头文件直接是文件名
#include "Get_Opt.h"
但是这样写直接就导致了编译上述的编译错误。
经过查资料后,目录设置中应该设置ACE_Wrapper的根目录,不能设置为ace目录,应该如下设置

引用头文件的问题,没有使用ace目录,正确的引用头文件的方式为
#include "ace\Get_opt.h"
这样引用头文件后,项目可以正常编译了。
代码如下
// GetOptTest.cpp : 定义控制台应用程序的入口点。
//#include "stdafx.h"
#include "ace/Get_Opt.h"int _tmain(int argc, _TCHAR* argv[])
{
ACE_Get_Opt opt(argc, argv, "s:p:u:p:", 1, 1);
//opt.long_option()
return 0;
}





