Gdb 不能单步进入opencv 的源代码

各位好,我想用 opencv 抓取 MJPEG-Streamer 的摄像头数据,在 windows 平台下能成功打开,但是 opensuse 下不可以,代码:
VideoCapture cap;
cap.open(“http://127.0.0.1:8080/?action=stream&type=.mjpg”);
找了很久没有解决,视频数据没问题,gst-launch 可以看到。所以只能想 gdb 单步调试下 opencv 的函数看看。
重新编译了 Debug 版本的 opencv, 然后想单步调试下简单的程序:
makefile:

OpencvDebugLibDir=/home/ry/lib
CFLAGS = -g -I$(OpencvDebugLibDir)/include/opencv -I$(OpencvDebugLibDir)
LIBS = $(OpencvDebugLibDir)/lib/*.so

target : main.cpp
	g++ $(CFLAGS) $(LIBS) -o $@ $<

main.cpp:

	VideoCapture cap;
	cap.open(0);

gdb 进去,s 命令却直接跳过去,没有任何提示。
如果修改 main.cpp:

  Mat image;
    image = imread( argv[1], 1 );

提示:

main (argc=2, argv=0x7fffffffdda8) at test.cpp:32
32          image = imread( argv[1], 1 );
(gdb) s
std::allocator<char>::allocator (this=0x7fffffffdc6f)
    at /usr/src/debug/gcc-4.8.1-20130909/obj-x86_64-suse-linux/x86_64-suse-linux/libstdc++-v3/include/bits/allocator.h:113
113     /usr/src/debug/gcc-4.8.1-20130909/obj-x86_64-suse-linux/x86_64-suse-linux/libstdc++-v3/include/bits/allocator.h: No such file or directory.

大家有什么建议吗?怎么才能解决问题,让 gdb 能调试 opencv? 或者最初的问题,opencv 打开 MJPEG-Streamer 的摄像头数据?
谢谢 ~~

我自己回复吧:
gdb 进入了字符串的构造函数,所以用 finish 命令可以完成,然后再用 s 命令。可能要重复几次之后,就可以进入 opencv 的源代码了。
参考:
stackoverflow.com/questions/26571789/gdb-can-step-into-some-opencv-function-but-can-not-step-into-some-other-opencv-f
之前不能打开 MJPEG_Streamer 视频的问题,是因为编译 Opencv 时没有找到 FFMPEG 库,所以要先安装 libffmpeg-devel 这个库
参考:
stackoverflow.com/questions/26560149/opencv-videocapture-cant-open-mjpeg-stream