- 论坛徽章:
- 0
|
这是我的测试用例 http://trac.lcuc.org.cn/public/t ... tSirURL.cpp?rev=165
我将 http://trac.lcuc.org.cn/public/t ... a/kt-content.rdf.u8 的URL注入到std::list中,然后让libcurl去抓取URL对应的网页内容,终端提示:
Crawling http://www.fairygodmother.com/
Caching ./cache/211374105227bb6b31ab1f80c9657ed4
段错误
我用gdb调试的内容如下:
Starting program: /home/sirtoozee/Projects/Sirch/trunk/libcrawler/test/test_sirurl
Crawling http://www.fairygodmother.com/
Caching ./cache/211374105227bb6b31ab1f80c9657ed4
Program received signal SIGSEGV, Segmentation fault.
0xb7d76ce7 in Curl_multi_canPipeline () from /usr/lib/libcurl.so.4
(gdb) bt
#0 0xb7d76ce7 in Curl_multi_canPipeline () from /usr/lib/libcurl.so.4
#1 0xb7d741a8 in Curl_perform () from /usr/lib/libcurl.so.4
#2 0xb7d74c8e in curl_easy_perform () from /usr/lib/libcurl.so.4
#3 0x0804b223 in SirCurl::_M_SirPerform ()
#4 0x0804b2d1 in SirCurl::SirGetCache ()
#5 0x080496e1 in main ()
可是我根本没有使用libcurl的multi相关API呀,我仅仅使用的是easy相关的API,请看 http://trac.lcuc.org.cn/public/t ... ler/src/SirCurl.cpp
可是,如果,不使用std::list构建URLs,仅仅用只有2个URLs的char** urls作简单测试用例调试时,就没有任何错误,请看
http://trac.lcuc.org.cn/public/t ... est/TestSirCurl.cpp
我的gentoo box的emerge --info,如下:
Portage 2.1.4.4 (default-linux/x86/2007.0, gcc-4.1.2, glibc-2.5-r3, 2.6.20-gentoo-r8 i686)
=================================================================
System uname: 2.6.20-gentoo-r8 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz
Timestamp of tree: Wed, 20 Feb 2008 23:32:01 +0000
app-shells/bash: 3.2_p17
dev-java/java-config: 1.3.7, 2.0.33-r1
dev-lang/python: 2.4.4-r4
dev-python/pycrypto: 2.0.1-r6
sys-apps/baselayout: 1.12.9-r2
sys-apps/sandbox: 1.2.18.1-r2
sys-devel/autoconf: 2.13, 2.61
sys-devel/automake: 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils: 2.17
sys-devel/gcc-config: 1.3.16
sys-devel/libtool: 1.5.23b
virtual/os-headers: 2.6.24
ACCEPT_KEYWORDS="x86 ~x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -mtune=i686 -pipe"
CHOST="i686-pc-linux-gnu"
请大家给出建议,万分感谢
[ 本帖最后由 涩兔子 于 2008-2-22 16:56 编辑 ] |
|