昨天我下载了一款名为 mvPod 的应用程序,它压缩包。
我以为,如果我有任何程序不是由包管理器安装的,它们应该放在/usr/local
而不是 中/usr
。但如果我将可执行文件放在 中/usr/local/bin
,并将 jar 文件放在 中/usr/local/lib
,我会收到无法加载 Java 类的运行时错误。因此,我只能将程序放在/usr/bin
和/usr/lib
中,这样就没问题了。
这是否只能通过不同的编译来纠正,或者我是否错过了安装步骤?
我正在运行 Ubuntu Karmic。
答案1
把手动安装放进去/usr
而/usr/local
不是
- 你不会立即知道某些东西是如何安装的,这使得以后解决问题变得更加困难
- 有些包可能会崩溃部分您的安装或反之亦然(只是部分是很多比一切都糟糕,相信我)
安装无法正常工作的原因/usr/local
几乎肯定与某个搜索路径或其他搜索路径有关。这些可以为执行搜索的每个程序配置或存储在环境变量中,或者经常同时使用这两种方法。对于所有类型的程序,您需要确保PATH
、LD_LIBRARY_PATH
和MAN_PATH
环境变量已更新。Java 可能涉及CLASS_PATH
或类似的东西。也许您会在这里得到更具体的答案,或者作为最后的手段,总是有文档。
还有一件事:一些 unix 期望本地安装在/opt
而不是/usr/local
。始终值得检查本地约定。
答案2
您可以使用--prefix
选项使用 configure、make 或两者。
./configure --prefix=/usr
或者
使前缀= / usr 安装
这将安装在/usr
而不是默认的/usr/local
。