我正在尝试从源代码构建 pgadmin 1.20。我已经安装了 1.20.0。
无论如何,我按照 INSTALL 文件中的脚本进行操作。这是我遇到的问题:
make
./pgadmin/ui/embed-xrc
Rebuilding xrcdialogs.cpp...
wxrc: error while loading shared libraries: libwx_baseu_xml-2.8.so.0: cannot open shared object file: No such file or directory
diff: ./pgadmin/ui/xrcDialogs.cpp.new: No such file or directory
mv: cannot stat ‘./pgadmin/ui/xrcDialogs.cpp.new’: No such file or directory
Makefile:1024: recipe for target 'xrc' failed make: *** [xrc] Error 1
我尝试重新配置为 wxGTK-2.8.12 版本
./configure –prefix=/usr/local/WX --with-gtk --enable-gtk2 --enable-unicode.
我收到了同样的消息。我尝试删除所有内容并从头开始,使用 pgadmin 1.20。我尝试重新安装 wxGTK 2.8.12。一切都徒劳无功。
有什么想法我应该从哪里开始寻找?
答案1
如果尚未安装,libxml2
请安装。libxslt
您应该确保您的计算机中或某处有库文件libwx_baseu_xml
。/usr/local/lib
还要确保这个位置libwx_baseu_xml
位于库搜索路径中/etc/ld.so.conf
您只需执行以下命令即可更新库:
sudo ldconfig
大多数情况下这应该可以解决问题。
答案2
除了罗恩的回答,您还可以使用LD_LIBRARY_PATH
环境变量临时设置附加路径,以便动态链接器在非标准位置搜索共享库:
LD_LIBRARY_PATH
A list of directories in which to search for ELF libraries at
execution-time. The items in the list are separated by either
colons or semicolons. Similar to the PATH environment vari‐
able. This variable is ignored in secure-execution mode.
(改编自ld.so(8)
手册页)
因此,以下命令应该可以工作,无需ldconfig
以超级用户身份运行:
env LD_LIBRARY_PATH=/usr/local/WX/lib ./configure --prefix=/usr/local/WX --with-gtk --enable-gtk2 --enable-unicode