OpenPGM问题让gstreamer启动并运行

时间:2013-11-21 12:24:26

标签: ubuntu gstreamer

最近开始研究openPGM实施,作为在我的家庭网络中实现可靠多播的解决方案。我已经下载了各种OpenPGM实现,甚至使用了环回示例。

然后我想看看openPGM如何与gstreamer一起工作。所以我从链接(http://code.google.com/p/openpgm/downloads/detail?name=gstpgm-2.0.4.tar.bz2&can=2&q=)下载了包含gsteamer插件的gstpgm zip,此时开始出现问题并开始运行。

当我使用默认的SConstruct运行scons时,我收到以下错误:

halford@ubuntu:~/gstp_heiher$ scons
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
gcc -o libgstpgm.so -pipe -pthread -shared gstpgm.os gstpgmsrc.os gstpgmsink.os -lpgm -lgstbase-0.10 -lgstreamer-0.10 -lgobject-2.0 -lgmodule-2.0 -lxml2 -lgthread-2.0 -lrt -lglib-2.0
/usr/bin/ld: cannot find -lpgm
collect2: ld returned 1 exit status
scons: *** [libgstpgm.so] Error 1
scons: building terminated because of errors.

当我在SConstruct文件中注释掉LIB = [libpgm]语句时,事物会编译,但是当我运行./smokesrc.sh脚本时,我收到以下错误:

halford@ubuntu:~/gstp_heiher$ scons
WARNING: erroneous pipeline: no element "pgmsink"
halford@ubuntu:~/gstp_heiher$ gedit SConstruct 
halford@ubuntu:~/gstp_heiher$ scons
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
gcc -o libgstpgm.so -pipe -pthread -shared gstpgm.os gstpgmsrc.os gstpgmsink.os -lgstbase-0.10 -lgstreamer-0.10 -lgobject-2.0 -lgmodule-2.0 -lxml2 -lgthread-2.0 -lrt -lglib-2.0
scons: done building targets.

halford@ubuntu:~/gstp_heiher$ ./smokesrc.sh 
(gst-plugin-scanner:3991): GStreamer-WARNING **: Failed to load plugin './libgstpgm.so': ./libgstpgm.so: undefined symbol: pgm_gsi_create_from_addr

(gst-plugin-scanner:3991): GStreamer-WARNING **: Failed to load plugin '/usr/lib/gstreamer-0.10/libgstpgm.so': /usr/lib/gstreamer-0.10/libgstpgm.so: undefined symbol: g_thread_new
WARNING: erroneous pipeline: no element "pgmsink"

有人可以帮助我吗?

PS:我已将此消息传达给openPGM论坛,但没有回复。它似乎多年来一直处于非活动状态。

2 个答案:

答案 0 :(得分:0)

似乎您需要安装libpgm的开发版本:sudo apt-get install libpgm-dev 并取消注释LIB=[libpgm]

答案 1 :(得分:0)

我最近完成了openPGM的裸构建,启用了标志和调试选项。 BUt我在ubuntu 12.04上有它,但也不应该与早期版本一样。

如果您不想更改代码中的任何内容,我建议您选择可用的包。 或者可以轻松地用scons构建.. 除非在Mac上运行,否则scons在没有对脚本进行任何更改的情况下工作正常。 Lemme知道你面临的错误(不要浪费时间解决与以前相同的问题)