1.linux库的命名规则是:动态库和静态库的名字前家lib前缀,也就是自己制作的库的名字为“lib名字.so”或"lib名字.a";但比较诡异的是gcc在编译的时候命令是没有前缀lib和后缀.so和a。比如gcc -l名字 -0 main main.c。2.在QT编译构建的过程中,经常发现/usr/bin/ldd:error,can not find lXX.在QT软件的下方,打开编译输出小窗口会看到一坨gcc编译指令,然后能定位到哪一步出问题了。3.解决方法: #updatedb
#locate libXX.so
#
上面可以定位到libXX.so的所在位置,然后看看gcc默认搜索路径是否包含了该位置,一般都会包含。
今天我解决的问题是通过locate libXX.so定位出的libXX..so.1 ,而没有找到libXX.so,这样我们就使用软连接命令
#ln -s /usr/libXX.so.1 /usr/libXX.so
然后再构建一下QT,程序成功构建完成。