Olá, alguém tentou instalar o Bokeh em um Raspberry Pi?
Recebo este erro quando tento gerar um gráfico em um arquivo html:
python3 test1.py
Traceback (most recent call last):
File "test1.py", line 1, in <module>
from bokeh.plotting import figure, output_file, show
File "/usr/local/lib/python3.5/dist-packages/bokeh/plotting/__init__.py", line 57, in <module>
from . import figure as _figure
File "/usr/local/lib/python3.5/dist-packages/bokeh/plotting/figure.py", line 26, in <module>
from ..core.properties import Any, Auto, Either, Enum, Int, List, Seq, Instance, String, Tuple
File "/usr/local/lib/python3.5/dist-packages/bokeh/core/properties.py", line 255, in <module>
from .property.dataspec import AngleSpec; AngleSpec
File "/usr/local/lib/python3.5/dist-packages/bokeh/core/property/dataspec.py", line 40, in <module>
from .visual import FontSize, MarkerType
File "/usr/local/lib/python3.5/dist-packages/bokeh/core/property/visual.py", line 29, in <module>
import PIL.Image
File "/usr/local/lib/python3.5/dist-packages/PIL/Image.py", line 94, in <module>
from . import _imaging as core
ImportError: libopenjp2.so.7: cannot open shared object file: No such file or directory
Agora está instalado com o pip3, mas também tentei o pip, ele está instalado em uma imagem RPI vanilla.
Para mim parece que falta um pacote, mas não sou especialista em Python e também em Bokeh.
Responder1
Um arquivo .so (objeto compartilhado) é um arquivo de biblioteca compilado no Linux - semelhante aos arquivos DLL (biblioteca vinculada dinâmica) do Windows. Parece que uma das dependências do seu projeto requer a libopenjp2.so.7
biblioteca. Tente verificar se ele está instalado com:
sudo apt-get install libopenjp2-7
Você poderia então tentar verificar o cache da biblioteca compartilhada do Linux para ver se ele está lá.
ldconfig -p | grep 'libopenjp2.so.7'
O que deve lhe dar algo como:
libopenjp2.so.7 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libopenjp2.so.7
Se você não vir nada, tente atualizar o cache com:
sudo ldconfig