使用Homebrew安装SOUNDEX for SQLite

时间:2012-11-17 20:05:53

标签: sqlite homebrew

我正在尝试使用SQLite的SOUNDEX功能。我可以用自制软件安装它,还是需要从源代码编译?

我试过

brew install --fresh sqlite --with-functions

似乎安装了扩展功能,但我的查询仍然收到Error: no such function: SOUNDEX条消息。

我还尝试修改sqlite公式,添加以下编译选项

ENV.append 'CPPFLAGS', "-DSQLITE_SOUNDEX"

基于http://www.sqlite.org/lang_corefunc.html,但仍然失败。

理想情况下,我希望避免从源代码手动编译SQLite,即使这意味着我需要编写自定义自制程序公式。

1 个答案:

答案 0 :(得分:0)

这是正确的标志,但你可能没有运行正确的sqlite。

你的方法是正确的。添加ENV.append 'CPPFLAGS', "-DSQLITE_SOUNDEX"将使用soundex编译它。我刚刚使用SQLite 3.7.16.2和我的OS X 10.8.3系统上的自制程序进行了测试。或者,为了更多的控制,像这样。

  option 'with-soundex', 'Enable the SOUNDEX function'

  def install
    [ ... ]
    ENV.append 'CPPFLAGS', "-DSQLITE_SOUNDEX" if build.include? "with-soundex"

您确定在安装后正在调用正确的sqlite3程序吗? SQLite是一个“keg-only”公式;也就是说,与大多数自制程序公式不同,它不会链接到/ usr / local / bin,以避免与OS X提供的sqlite冲突。您需要使用完整路径调用自制程序,如/usr/local/Cellar/sqlite/3.7.16.2/bin/sqlite3

$ /usr/local/Cellar/sqlite/3.7.16.2/bin/sqlite3
SQLite version 3.7.16.2 2013-04-12 11:52:43
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> select soundex('Hello, world!');
H464

在主自制sqlite公式中添加--with-soundex选项很容易,因此您不必维护单独的公式。如果你认为有足够的人会使用它,请转到the Homebrew issue tracker on GitHub并提出请求。

相关问题