簡體   English   中英

如何在Ubuntu 16.04上使用Python 3.6安裝xapian?

[英]How to install xapian with Python 3.6 on Ubuntu 16.04?

我使用ppa:jonathonf/python-3.6存儲庫在Docker上的Ubuntu 16.04上安裝了Python 3.6。 現在我想安裝xapian所以我可以用它來使用Python。 我還沒有找到任何現成的包,所以我試圖從源代碼構建它。 我將PYTHON3PYTHON3_LIB參數設置為指向Python 3.6。 在構建過程中,我收到以下錯誤:

ImportError:libxapian.so.30:無法打開共享對象文件:沒有這樣的文件或目錄

我試過xapian版本1.3.7和1.4.5沒有運氣。

我該如何安裝xapian?

這是一個重現我的錯誤的Dockerfile:

FROM ubuntu:16.04
RUN apt-get update \
  && apt-get install -y software-properties-common python-software-properties
RUN add-apt-repository ppa:jonathonf/python-3.6
RUN apt-get update \
  && apt-get install -y python3-pip docker.io python3.6 python3.6-dev software-properties-common \
      python-software-properties build-essential wget unzip cmake python3-sphinx \
  && cd /usr/local/bin \
  && ln -s /usr/bin/python3.6 python
RUN python -m pip install --upgrade pip

# install xapian 1.4.5
RUN apt-get update && apt-get install -y curl uuid-dev zlib1g-dev
WORKDIR /root
RUN curl --silent --show-error --fail --next -O https://oligarchy.co.uk/xapian/1.4.5/xapian-core-1.4.5.tar.xz
RUN curl --silent --show-error --fail --next -O https://oligarchy.co.uk/xapian/1.4.5/xapian-bindings-1.4.5.tar.xz
RUN tar xvf xapian-core-1.4.5.tar.xz
RUN tar xvf xapian-bindings-1.4.5.tar.xz
WORKDIR /root/xapian-core-1.4.5
RUN ./configure && make && make install
WORKDIR /root/xapian-bindings-1.4.5
RUN ./configure PYTHON3=/usr/bin/python3.6 PYTHON3_LIB=/usr/lib/python3.6 --with-python3 && make && make install
RUN python -c "import xapian"

問題是默認情況下Xapian庫( libxapian.so.30 )正在安裝到/usr/local/lib ,但是Ubuntu並不知道它已經放在那里了。 你可以通過添加:

RUN ldconfig

安裝核心后(所以在更改WORKDIR以構建綁定之前)。

這個Unix Stackexchange問​​題的答案中,有一些關於Ubuntu上的ldconfig和庫搜索路徑的有用信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM