当我试图编译一个需要libgee的vala或genie程序时,我得到了gee\u array\u list\u new等未定义的引用;它的.so文件就在/usr/local/lib中,它的其他文件应该是这样的。但是当我用发行版的包管理器安装libgee时,vala程序链接良好!我想用不同的方式来解释这一点,但我被难住了。这些库的版本略有不同,但差别不大。
valac是不是在/usr/local/lib中找不到?可能的解释是什么?
很可能,你 pkg-config --libs gee-1.0 不包括-L/usr/local/lib`。
pkg-config --libs gee-1.0
一定要有 PKG_CONFIG_PATH=/usr/local/lib/pkgconfig 如果希望valac链接到/usr/local/lib库。
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig