求教:关于动态共享库的问题
程序中调用了自己编写的一个动态共享库。Qt中使用x11版本编译,以及使用x86版本编译(在qvfb)时都木有问题,但是使用embedded arm版本编译时就出现 “-L xx.so找不到”这样的错误。
请问:
1.动态共享库的使用方法在Linux和嵌入式arm的Linux上有什么区别么?
2. 是不是动态共享库也得用embedded Qt 编译才可以呢? --------------------编程问答-------------------- --------------------编程问答--------------------
求指导的说啊~~。。。。 --------------------编程问答-------------------- 必须啊。如果X86,ARM都运行不了。 --------------------编程问答--------------------
求您再说的详细点可以吗?谢谢谢谢!
意思是共享库也得是qte编译的是么?
现在是X86可以成功,arm不行... --------------------编程问答-------------------- 恩。你编译后,可以用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