当前位置:编程学习 > wap >>

求教:关于动态共享库的问题

程序中调用了自己编写的一个动态共享库。
Qt中使用x11版本编译,以及使用x86版本编译(在qvfb)时都木有问题,但是使用embedded arm版本编译时就出现 “-L xx.so找不到”这样的错误。
请问:
1.动态共享库的使用方法在Linux和嵌入式arm的Linux上有什么区别么?
2. 是不是动态共享库也得用embedded Qt 编译才可以呢? --------------------编程问答-------------------- --------------------编程问答--------------------
引用 1 楼 xarandy 的回复:


求指导的说啊~~。。。。 --------------------编程问答-------------------- 必须啊。如果X86,ARM都运行不了。 --------------------编程问答--------------------
引用 3 楼 ying_593254979 的回复:
必须啊。如果X86,ARM都运行不了。

求您再说的详细点可以吗?谢谢谢谢!
意思是共享库也得是qte编译的是么?
现在是X86可以成功,arm不行... --------------------编程问答-------------------- 恩。你编译后,可以用file命令查看平台信息。确保是ARM的。 --------------------编程问答--------------------
引用 5 楼 ying_593254979 的回复:
恩。你编译后,可以用file命令查看平台信息。确保是ARM的。


用qte编译了,file 查看确实是arm平台的,可是还是说 cannot find....
之前是将x11平台的so放在/usr/local/lib下,并在程序pro中写 LIB += -L. -lxx 可以正常运行的
为什么现在不可以了呢。。好纠结啊! --------------------编程问答-------------------- export set LD_LIBRARY_PATH= 动态库路径 --------------------编程问答-------------------- 1. 你的Qt库需要用交叉编译器编译成为embedded
2. 用编译好的embedded库编译你的程序.
3. 按照你x86的发布形式,复制好对应的库以及其软链
4. 打包扔开发版 --------------------编程问答-------------------- 我是在QtAndroid上遇到这样的问题,不知道在arm上是否一样。
在动态库的.pro里面添加这个:
unix:!symbian {
    maemo5 {
        target.path = /opt/usr/lib
    } else {
        target.path = /usr/lib
    }
    INSTALLS += target
} --------------------编程问答-------------------- 看下你对应目录下是否有那个库。。
这个提示是库找不到。
补充:移动开发 ,  Qt
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,