gstreamer成功安装后 出现 “未定义的引用”的错误的解决方案
来源:互联网 发布:软件项目质量管理制度 编辑:程序博客网 时间:2024/06/05 05:19
首先我是按照 点击打开链接 中的方法一安装的gstreamer;
但是当我在测试自己写的一个小代码的时候,出现了 对‘gst_init’未定义的引用 ;对‘gst_version’未定义的引用
....等错误,很明显是未链接到gstreamer库;
我是用以下命令进行的编译:
gcc -Wall $(pkg-config --cflags --libs gstreamer-0.10) -g mygst_test.c -o hello
网络查询了gcc参数顺序相关的问题,发现问题在于此:
对于C/C++编译而言,读取编译选项是按照从左到右的顺序执行的 。那么当编译器遇到源文件的时候,就开始对源文件中用到的函数进行解析,找到相对应的函数的函数体或者说是定义(Definition of Function)。这个过程是按照先遇到不能解析的函数(unresolved function),然后在源文件选项后面的一些选项中寻找可能的函数体的信息,是这样的一个顺序进行的。那么我们可以发现对于Makefile A,由于包含函数体或者函数定义信息的编译选项出现在源文件之前,那么当编译器在源文件中遇到不能解析的函数时,在源文件之后的选项中寻找相关的信息,那 么就出现了编译错误,也就是无法找到相关的函数定义。所以 gcc编译时依赖库的顺序是很重要的。比如说,liba.a依赖于libb.a,则必须写成-la -lb,这点不能搞错
鉴于这个解释,我使用以下命令顺利编译通过了
gcc -Wall mygst_test.c -o testgstream $(pkg-config --cflags --libs gstreamer-0.10)
作为新手 需要记录下来
0 0
- gstreamer成功安装后 出现 “未定义的引用”的错误的解决方案
- gstreamer成功安装后 出现 “未定义的引用”的错误的解决方案
- __flash__removeCallback未定义错误的解决方案
- 诡异的未定义错误--超前引用
- OpenCV 编译错误 ‘未定义的引用’
- 一些ubuntu 出现错误后的解决方案
- express安装成功创建项目的时候出现错误的解决方案
- make menuconfig出现一大堆未定义的错误
- make menuconfig出现一大堆未定义的错误
- pthread_create 未定义的引用
- assert 未定义的引用
- "cblas_ddot"未定义的引用
- 引用未定义的控件
- pthread_create 未定义的引用
- C#自己编写的Window服务安装成功后启动出现错误
- dlopen dlerror dlclose dlsym 未定义的引用的解决方案
- VS2010 的插件安装后,出现的ActivityLog.xml 日记错误的解决方案
- VS2012 的插件安装后,出现的ActivityLog.xml 日记错误的解决方案
- Grub2修复步骤
- android如何默认系统时间
- Kruskal算法求图的最小生成树的完整C代码
- Win7设置定时自动执行程序或脚本
- STL之list测试
- gstreamer成功安装后 出现 “未定义的引用”的错误的解决方案
- IOS 屏幕做一个最上层全屏幕的layer
- 选择、插入、归并、希尔、快速排序算法性能比较总结
- oracle的启动方式
- android:windowSoftInputMode属性详解
- 【Linux】学Linux的建议
- Win32 API对多线程编程的支持--显示时间(一)
- 高通平台android kernel 开机logo显示和传统linux一样
- nsstream