boost regex 编译问题: boost 成功编译了,可 regex 没有通过?

JCJC错别字检测-田春峰
博客专家认证
2007-01-04 10:09:32
boost regex 编译问题: boost 成功编译了,可 regex 没有通过?

我的环境: vs 2005

没有改动过boost的源代码,可是提示下面的错误信息

D:\c++\boost\boost_1_33_1\libs\regex\build>nmake vc8.mak

Microsoft (R) 程序维护实用工具 8.00.50727.42 版
版权所有 (C) Microsoft Corporation。保留所有权利。

Building Boost.Regex without ICU / Unicode support:
Hint: set ICU_PATH on the nmake command line to point
to your ICU installation if you have one.
cl /nologo /MT /W3 /EHsc /O2 /GF /Gy /I..\..\..\ /D_MT /DWIN32 /DNDEBU
G /D_MBCS /D_LIB /FD /Zc:wchar_t /c -Y- -Fo./vc80/libboost_regex-vc80-mt-s-1_3
3_1/ -Fdvc80/libboost_regex-vc80-mt-s-1_33_1.pdb ../src/regex_traits_defaults.cp
p
regex_traits_defaults.cpp
../src/regex_traits_defaults.cpp : warning C4819: 该文件包含不能在当前代码页(936
)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
../src/regex_traits_defaults.cpp(670) : warning C4819: 该文件包含不能在当前代码
页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
../src/regex_traits_defaults.cpp(690) : fatal error C1071: 在注释中遇到意外的文
件结束
NMAKE : fatal error U1077: “"C:\Program Files\Microsoft Visual Studio 8\VC\BIN\
cl.EXE"”: 返回代码“0x2”
Stop.


...全文
837 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
a114778761 2009-09-21
  • 打赏
  • 举报
回复
学习了
hhapp0728 2007-01-04
  • 打赏
  • 举报
回复
由于regex_traits_defaults.cpp文件中有西欧Windows编码的字符,所以在中文下不能被
正确识别。
解决方法:
方法1、用MS word打开regex_traits_defaults.cpp,会弹出对话框让选择编码,选择西欧Windows
编码;把此文件再存成Unicode编码的文件,替换掉原来的regex_traits_defaults.cpp。

方法2、把系统的默认语言改成英语(美国),重启动;把VS2005的International Settings设置成和windows设置一致(Tools--〉Options--〉Environment--〉International Settings);
这样编译时便没有那些讨厌的Warning,也可以正常编译Regex
lyskyly 2007-01-04
  • 打赏
  • 举报
回复
可能你下载的那个文件中
regex_traits_defaults.cpp
好像这个文件中的注释打错了,好像是少打了一个*,/*?*/写成了/*?/,忘了,自己改一下
taodm 2007-01-04
  • 打赏
  • 举报
回复
是nmake -fvc8.mak

64,685

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧