虽然我安装了一次 libxml2,又重新安装了几次。我无法编译 c 源代码,因为编译器找不到头文件的位置。我可以找到它的位置(在我下载 tar.gz 包的文件夹中),但我有一种直觉,这个包没有正确安装,因为当我尝试 sudo make install 时,它说
/bin/bash: /home/bfaskiplar/Downloads/tar.gz: No such file or directory
make[2]: *** [install-libLTLIBRARIES] Error 127
make[2]: Leaving directory `/home/bfaskiplar/Downloads/tar.gz packages/libxml2-2.8.0'
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/home/bfaskiplar/Downloads/tar.gz packages/libxml2-2.8.0'
make: *** [install-recursive] Error 1
这就是我安装 synaptic 包管理器并重新安装 libxml2 的原因,但在这种情况下,它不是应该将头文件放在 gcc 通常搜索的默认目录中吗?
目前,我能够使用 -I 选项编译 c 源代码,但我想知道为什么即使我使用 synaptic 进行安装也必须手动复制标题,以及为什么在尝试手动安装包时会出现错误 1 和错误 2。
提前致谢
答案1
我不确定您为什么要尝试编译 libxml2。您需要安装libxml2-dev
才能构建依赖于 libxml2 的源。您sudo apt-get build-dep $package
也可以安装特定源包的构建依赖项。
我不确定你问题中的错误到底是什么。没有足够的上下文来说明确切的问题是什么,但看起来可能是文件路径中的空格问题。
答案2
答案来自Dobey的回答中的评论。我再次写一遍以使其更清楚。
问题是由于路径中有空格。请将其安装在没有空格的路径上。