我需要安装带有regexp_filter选项的狮身人面像。
我已经用pacman安装了re2包。
在文档中,我可以使用sphinx选项编译--with-re2包。但当我这样做的时候我会犯错。

checking whether to compile with RE2 library support... configure: error: missing re2 sources

我也试过设置make选项,比如here
--with-re2-libs=/usr/lib/libre2.so --with-re2-includes=/usr/include/re2/

但我又犯了一个错误
checking whether to compile with RE2 library support... configure: error: missing re2 headers

这里我的输出ls /usr/include/re2
ls /usr/include/re2/
  filtered_re2.h
  re2.h
  set.h
  stringpiece.h
  variadic_function.h

有人安装这个吗?谢谢你的帮助!

最佳答案

我找到了解决问题的办法。
我刚换了

--with-re2-libs=/usr/lib/libre2.so --with-re2-includes=/usr/include/re2/

带着这个
--with-re2-libs=/usr/lib/ --with-re2-includes=/usr/include/re2/

这里是完整的pkgbuild文件:
# Maintainer: Isaac Aronson <i at linux dotcom>
# Contributor: Dan Serban
# Contributor: Jim Casteel
# Contributor: dryes <joswiseman@gmail>
# Contributor: Vishnevsky Roman <aka dot x0x01 at gmail dot com>
# Contributor: Massimiliano Torromeo <[email protected]>
# Contributor: Aldo Culquicondor <[email protected]>
# Contributor: Florijan Hamzic <[email protected]>
pkgname='sphinx'
pkgver=2.2.10
pkgrel=2
pkgdesc='Free open-source SQL full-text search engine.'
arch=('i686' 'x86_64')
url='http://www.sphinxsearch.com/'
license=('GPL')
depends=('unixodbc' 'expat' 'libmysqlclient' 'postgresql-libs' 're2')
optdepends=('postgresql')
backup=('etc/conf.d/sphinx')
install='sphinx.install'
source=("http://sphinxsearch.com/files/${pkgname}-${pkgver}-release.tar.gz"
    'sphinx.conf.d'
    'sphinx.rc.d'
    'sphinx.service'
    'sphinx.tmpfiles.conf')

build() {
  sed -i '15199,15199 s/x00/x21/' "${srcdir}/${pkgname}-${pkgver}-release/src/searchd.cpp"

  cd "${srcdir}/${pkgname}-${pkgver}-release"
  ./configure --prefix=/usr --exec-prefix=/usr --localstatedir=/var/lib/sphinx \
    --sysconfdir=/etc/sphinx --with-pgsql --enable-id64 --with-re2 --with-re2-include=/usr/include/re2 --with-re2-libs=/usr/lib/libre2.so

  make
}

package() {
  cd "${srcdir}/${pkgname}-${pkgver}-release"

  make DESTDIR="${pkgdir}" install

  for _f in "${pkgdir}/usr/bin/"*; do
    ln -s "/usr/bin/${_f##*/}" "${pkgdir}/usr/bin/sphinx-${_f##*/}"
  done

  install -Dm755 "${srcdir}/sphinx.rc.d" "${pkgdir}/etc/rc.d/sphinx"
  install -Dm644 "${srcdir}/sphinx.conf.d" "${pkgdir}/etc/conf.d/sphinx"
  install -Dm644 "${srcdir}/sphinx.service" "${pkgdir}/usr/lib/systemd/system/sphinx.service"
  install -d "${pkgdir}/usr/share/sphinx/lib"
  install -Dm644 api/sphinxapi.php "${pkgdir}/usr/share/sphinx/lib/sphinxapi.php"
  install -Dm644 api/sphinxapi.py "${pkgdir}/usr/share/sphinx/lib/sphinxapi.py"
  install -Dm644 "${srcdir}/sphinx.tmpfiles.conf" "${pkgdir}/usr/lib/tmpfiles.d/sphinx.conf"
}
md5sums=('dda52b24d8348fc09e26d8a649a231d2'
         '48e3e1857919d26d5104a48caffb531b'
         'faaa8310af97ff1dbdaf08612e442020'
         'fe06a8aff0520a6f75596ee43d2e5935'
         '22ec4cd0471a1d52702d57d78614b8d8')

关于linux - 在Arch Linux上安装sphinx + re2,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36336217/

10-11 18:49