#include <iostream>
#include <cassert>
#include <string>
#include <boost/regex.hpp>
using namespace std;
using namespace boost;
int main()
{
regex reg("\\w(.+)@(.+)\\.com");
string correct = "boluo1982107@ccc122.com";
assert(regex_match(correct,reg)==true);
return 0;
}
结果都是
Build options aren't compatible with pre-built libraries
感觉好像是库装的有问题。
大家帮小弟看看哪步有误?
环境 VC6.0 + intel compiler9.1 + STLPort5.2.1。 stlport用icl 编译的,没问题。
下载的boost库是最新的 boost1.37
1 解压boost_1_37_0.7z 到D:\Program Files。 D:\Program Files\boost_1_37_0
2 打开一个控制台,(icl 都是配置好的,环境变量等均没问题)
3 进入 D:\Program Files\boost_1_37_0\tools\jam\src
4 运行 build.bat icl
但是提示 Unknown toolset: icl
....
Toolsets supported by this script are: borland, como, gcc, gcc-nocygwin, intel-win32, metrowerks, mingw, msvc, vc7, vc8
....
所以运行 build.bat intel-win32。生成目录 bin.ntx86,里面是 bjam.exe
5 将上一步得到的 bjam.exe 拷贝到D:\Program Files\boost_1_37_0目录 。
6 进到该目录。运行
bjam.exe "-sTOOLS=intel-win32-stlport" "-sINTEL_VERSION=9.1" "-sINTEL_PATH=D:\Program Files\Intel\Compiler\C++\9.1\IA32" "-sSTLPORT_5.2.1_PATH=D:\Program Files\STLport-5.2.1" "-sSTLPORT_VERSION=5.2.1" stage
7 编译完成后测试
在"Include files" 中添加 D:\PROGRAM FILES\BOOST_1_37_0
在"Library files" 中添加 D:\PROGRAM FILES\BOOST_1_37_0\STAGE\LIB
8
输入代码
#include <iostream>
#include <cassert>
#include <string>
#include <boost/regex.hpp>
using namespace std;
using namespace boost;
int main()
{
regex reg("\\w(.+)@(.+)\\.com");
string correct = "boluo1982107@ccc122.com";
assert(regex_match(correct,reg)==true);
return 0;
}
出现最上面所说的错误。
编译器用的 intel compiler,库是 stlport。
各位高手,帮小弟看看是什么问题?哪一步有问题
12 个解决方案
#1
换cl呢?
#3
2 楼。
D:\>cl
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8804 for 80x86
Copyright (C) Microsoft Corp 1984-1998. All rights reserved.
usage: cl [ option... ] filename... [ /link linkoption... ]
D:\>icl
Intel(R) C++ Compiler for 32-bit applications, Version 9.1 Build 20060706Z Pa
ckage ID: W_CC_C_9.1.028
Copyright (C) 1985-2006 Intel Corporation. All rights reserved.
icl: Command line error: no files specified; for help type "icl /help"
D:\>
不少资料都是 vc6,vc8编译的。好像很少 intel 编译的
D:\>cl
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8804 for 80x86
Copyright (C) Microsoft Corp 1984-1998. All rights reserved.
usage: cl [ option... ] filename... [ /link linkoption... ]
D:\>icl
Intel(R) C++ Compiler for 32-bit applications, Version 9.1 Build 20060706Z Pa
ckage ID: W_CC_C_9.1.028
Copyright (C) 1985-2006 Intel Corporation. All rights reserved.
icl: Command line error: no files specified; for help type "icl /help"
D:\>
不少资料都是 vc6,vc8编译的。好像很少 intel 编译的
#4
恩 你说得那个编译器环境确实很少 帮你看一下 都没有太实质的东西
#5
我是用cl的,没出啥问题.
#6
楼主,你这套组合还是老老实实用boost1.33吧。
regex库从1.33起没咋变过。
regex库从1.33起没咋变过。
#7
mark
帮顶~
帮顶~
#8
在你的tools-》options把boost库的位置设置一下,
看看结果如何!!!!!
看看结果如何!!!!!
#9
boost的正则库在一个项目里用过.
我只记得编译后需要改一下dll名字,
好像是要把小版本号去掉.
boost的正则库很强大,
但是什么都抛异常,
处理时要注意下.
我只记得编译后需要改一下dll名字,
好像是要把小版本号去掉.
boost的正则库很强大,
但是什么都抛异常,
处理时要注意下.
#10
另外,网络上有个boost正则测试程序,
是一个开源的东东,可以下载下来做个参考,
也可以做测试正则表达式用,
但是那个程序没处理一个异常,
用几个字符可以让它崩溃,
用的时候要小心.
是一个开源的东东,可以下载下来做个参考,
也可以做测试正则表达式用,
但是那个程序没处理一个异常,
用几个字符可以让它崩溃,
用的时候要小心.
#11
.
#12
不明,帮顶
#1
换cl呢?
#2
http://www.yuanma.org/data/2007/0521/article_2606.htm
这有一个XP下 VC6的安装加测试
这有一个XP下 VC6的安装加测试
#3
2 楼。
D:\>cl
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8804 for 80x86
Copyright (C) Microsoft Corp 1984-1998. All rights reserved.
usage: cl [ option... ] filename... [ /link linkoption... ]
D:\>icl
Intel(R) C++ Compiler for 32-bit applications, Version 9.1 Build 20060706Z Pa
ckage ID: W_CC_C_9.1.028
Copyright (C) 1985-2006 Intel Corporation. All rights reserved.
icl: Command line error: no files specified; for help type "icl /help"
D:\>
不少资料都是 vc6,vc8编译的。好像很少 intel 编译的
D:\>cl
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8804 for 80x86
Copyright (C) Microsoft Corp 1984-1998. All rights reserved.
usage: cl [ option... ] filename... [ /link linkoption... ]
D:\>icl
Intel(R) C++ Compiler for 32-bit applications, Version 9.1 Build 20060706Z Pa
ckage ID: W_CC_C_9.1.028
Copyright (C) 1985-2006 Intel Corporation. All rights reserved.
icl: Command line error: no files specified; for help type "icl /help"
D:\>
不少资料都是 vc6,vc8编译的。好像很少 intel 编译的
#4
恩 你说得那个编译器环境确实很少 帮你看一下 都没有太实质的东西
#5
我是用cl的,没出啥问题.
#6
楼主,你这套组合还是老老实实用boost1.33吧。
regex库从1.33起没咋变过。
regex库从1.33起没咋变过。
#7
mark
帮顶~
帮顶~
#8
在你的tools-》options把boost库的位置设置一下,
看看结果如何!!!!!
看看结果如何!!!!!
#9
boost的正则库在一个项目里用过.
我只记得编译后需要改一下dll名字,
好像是要把小版本号去掉.
boost的正则库很强大,
但是什么都抛异常,
处理时要注意下.
我只记得编译后需要改一下dll名字,
好像是要把小版本号去掉.
boost的正则库很强大,
但是什么都抛异常,
处理时要注意下.
#10
另外,网络上有个boost正则测试程序,
是一个开源的东东,可以下载下来做个参考,
也可以做测试正则表达式用,
但是那个程序没处理一个异常,
用几个字符可以让它崩溃,
用的时候要小心.
是一个开源的东东,可以下载下来做个参考,
也可以做测试正则表达式用,
但是那个程序没处理一个异常,
用几个字符可以让它崩溃,
用的时候要小心.
#11
.
#12
不明,帮顶