如何从源代码完成程序的安装?

如何从源代码完成程序的安装?

我从源代码编译了 sqlite3,版本 3.6.16。我将其用作--prefix=/usr/bin唯一的编译选项。

二进制文件已正确编译并安装,但位于目录/usr/bin/sqlite3/bin。因此应用程序位于/usr/bin/sqlite3/bin/sqlite3

现在,我该如何“告诉 Linux” sqlite3 已安装到那里?那么当我运行时which sqlite3它会打印/usr/bin/sqlite3/bin/sqlite3吗?

我特别需要这个版本来sqlite3编译 RubyGem;sqlite3-ruby,v1.3.0 或更高版本。

我假设我将添加PATH或某些内容到我的~/.profile,然后运行source .profile以重新加载更改。什么是“告诉 Linux”应用程序安装到哪里symlinks??

答案1

尝试编辑~/.bashrc以包含此行:

export PATH=$PATH:/usr/bin/sqlite3/bin/

不修改路径的另一种方法是创建符号链接:

sudo ln -s /usr/bin/sqlite3/bin/sqlite3 /usr/local/bin/sqlite3

请注意,如果您安装了sqlite3的包,其可执行文件将与您新编译的版本冲突。您必须/usr/bin/sqlite3/bin/sqlite3明确运行。

顺便说一句,用作--prefix=/usr/bin编译选项不是一个好主意,我建议--prefix=/usr/local这样做。

答案2

通常,在编译源代码时,我会使用类似以下内容:

--prefix=/usr

我认为这会让一切如你所愿。

相关内容