Boost iostreams symbol not found only in conda-packaged version
Hello,
I am running Conda 4.11.0, this is my conda info
:
active environment : optimisation
active env location : /home/alberto/.conda/envs/optimisation
shell level : 2
user config file : /home/alberto/.condarc
populated config files : /home/alberto/.condarc
conda version : 4.11.0
conda-build version : not installed
python version : 3.9.5.final.0
virtual packages : __linux=5.16.3=0
__glibc=2.33=0
__unix=0=0
__archspec=1=x86_64
base environment : /opt/miniconda3 (read only)
conda av data dir : /opt/miniconda3/etc/conda
conda av metadata url : None
channel URLs : http://conda.anaconda.org/gurobi/linux-64
http://conda.anaconda.org/gurobi/noarch
https://conda.anaconda.org/conda-forge/linux-64
https://conda.anaconda.org/conda-forge/noarch
https://repo.anaconda.com/pkgs/main/linux-64
https://repo.anaconda.com/pkgs/main/noarch
https://repo.anaconda.com/pkgs/r/linux-64
https://repo.anaconda.com/pkgs/r/noarch
package cache : /opt/miniconda3/pkgs
/home/alberto/.conda/pkgs
envs directories : /home/alberto/.conda/envs
/opt/miniconda3/envs
platform : linux-64
user-agent : conda/4.11.0 requests/2.27.1 CPython/3.9.5 Linux/5.16.3-arch1-1 arch/ glibc/2.33
UID:GID : 1000:1000
netrc file : /home/alberto/.netrc
offline mode : False
I installed graph-tool
from Conda Forge. For reference, here are all the packages I have installed in my environment, with the respective versions:
# packages in environment at /home/alberto/.conda/envs/optimisation:
#
# Name Version Build Channel
_libgcc_mutex 0.1 conda_forge conda-forge
_openmp_mutex 4.5 1_llvm conda-forge
alsa-lib 1.2.3 h516909a_0 conda-forge
argon2-cffi 21.3.0 pyhd8ed1ab_0 conda-forge
argon2-cffi-bindings 21.2.0 py38h497a2fe_1 conda-forge
asttokens 2.0.5 pyhd8ed1ab_0 conda-forge
at-spi2-atk 2.38.0 h0630a04_3 conda-forge
at-spi2-core 2.40.3 h0630a04_0 conda-forge
atk-1.0 2.36.0 h3371d22_4 conda-forge
attrs 21.4.0 pyhd8ed1ab_0 conda-forge
backcall 0.2.0 pyh9f0ad1d_0 conda-forge
backports 1.0 py_2 conda-forge
backports.functools_lru_cache 1.6.4 pyhd8ed1ab_0 conda-forge
black 22.1.0 pyhd8ed1ab_0 conda-forge
bleach 4.1.0 pyhd8ed1ab_0 conda-forge
boost 1.74.0 py38h2b96118_5 conda-forge
boost-cpp 1.74.0 h359cf19_6 conda-forge
brotli 1.0.9 h7f98852_6 conda-forge
brotli-bin 1.0.9 h7f98852_6 conda-forge
bzip2 1.0.8 h7f98852_4 conda-forge
ca-certificates 2021.10.8 ha878542_0 conda-forge
cairo 1.16.0 ha00ac49_1009 conda-forge
cairomm 1.12.2 ha770c72_4 conda-forge
cairomm-1.0 1.12.2 h96a316c_4 conda-forge
certifi 2021.10.8 py38h578d9bd_1 conda-forge
cffi 1.15.0 py38h3931269_0 conda-forge
click 8.0.3 py38h578d9bd_1 conda-forge
colorama 0.4.4 pyh9f0ad1d_0 conda-forge
cycler 0.11.0 pyhd8ed1ab_0 conda-forge
dataclasses 0.8 pyhc8e2a94_3 conda-forge
dbus 1.13.6 h5008d03_3 conda-forge
debugpy 1.5.1 py38h709712a_0 conda-forge
decorator 5.1.1 pyhd8ed1ab_0 conda-forge
defusedxml 0.7.1 pyhd8ed1ab_0 conda-forge
dill 0.3.4 pyhd8ed1ab_0 conda-forge
entrypoints 0.4 pyhd8ed1ab_0 conda-forge
epoxy 1.5.9 h7f98852_0 conda-forge
executing 0.8.2 pyhd8ed1ab_0 conda-forge
expat 2.4.4 h9c3ff4c_0 conda-forge
flit-core 3.6.0 pyhd8ed1ab_0 conda-forge
font-ttf-dejavu-sans-mono 2.37 hab24e00_0 conda-forge
font-ttf-inconsolata 3.000 h77eed37_0 conda-forge
font-ttf-source-code-pro 2.038 h77eed37_0 conda-forge
font-ttf-ubuntu 0.83 hab24e00_0 conda-forge
fontconfig 2.13.94 ha180cfb_0 conda-forge
fonts-conda-ecosystem 1 0 conda-forge
fonts-conda-forge 1 0 conda-forge
fonttools 4.29.1 py38h497a2fe_0 conda-forge
freetype 2.10.4 h0708190_1 conda-forge
fribidi 1.0.10 h36c2ea0_0 conda-forge
gdk-pixbuf 2.42.6 h04a7f16_0 conda-forge
gettext 0.19.8.1 h73d1719_1008 conda-forge
giflib 5.2.1 h36c2ea0_2 conda-forge
glib-tools 2.70.2 h780b84a_1 conda-forge
gmp 6.2.1 h58526e2_0 conda-forge
graph-tool 2.44 py38h7041675_2 conda-forge
graph-tool-base 2.44 py38hbc125d9_2 conda-forge
graphite2 1.3.13 h58526e2_1001 conda-forge
gst-plugins-base 1.18.5 hf529b03_3 conda-forge
gstreamer 1.18.5 h9f60fe5_3 conda-forge
gtk3 3.24.31 habab178_3 conda-forge
gurobi 9.5.0 py38_0 gurobi
harfbuzz 3.3.1 hb4a5f5f_0 conda-forge
hicolor-icon-theme 0.17 ha770c72_2 conda-forge
icu 69.1 h9c3ff4c_0 conda-forge
importlib-metadata 4.10.1 py38h578d9bd_0 conda-forge
importlib_resources 5.4.0 pyhd8ed1ab_0 conda-forge
ipykernel 6.8.0 py38he5a9106_0 conda-forge
ipython 8.0.1 py38h578d9bd_0 conda-forge
ipython_genutils 0.2.0 py_1 conda-forge
ipywidgets 7.6.5 pyhd8ed1ab_0 conda-forge
jbig 2.1 h7f98852_2003 conda-forge
jedi 0.18.1 py38h578d9bd_0 conda-forge
jinja2 3.0.3 pyhd8ed1ab_0 conda-forge
jpeg 9e h7f98852_0 conda-forge
jsonschema 4.4.0 pyhd8ed1ab_0 conda-forge
jupyter 1.0.0 py38h578d9bd_7 conda-forge
jupyter_client 7.1.2 pyhd8ed1ab_0 conda-forge
jupyter_console 6.4.0 pyhd8ed1ab_0 conda-forge
jupyter_core 4.9.1 py38h578d9bd_1 conda-forge
jupyterlab_pygments 0.1.2 pyh9f0ad1d_0 conda-forge
jupyterlab_widgets 1.0.2 pyhd8ed1ab_0 conda-forge
kiwisolver 1.3.2 py38h1fd1430_1 conda-forge
krb5 1.19.2 hcc1bbae_3 conda-forge
lcms2 2.12 hddcbb42_0 conda-forge
ld_impl_linux-64 2.35.1 h7274673_9
lerc 3.0 h9c3ff4c_0 conda-forge
libblas 3.9.0 13_linux64_openblas conda-forge
libbrotlicommon 1.0.9 h7f98852_6 conda-forge
libbrotlidec 1.0.9 h7f98852_6 conda-forge
libbrotlienc 1.0.9 h7f98852_6 conda-forge
libcblas 3.9.0 13_linux64_openblas conda-forge
libclang 13.0.1 default_hc23dcda_0 conda-forge
libcups 2.3.3 hf5a7f15_1 conda-forge
libdeflate 1.8 h7f98852_0 conda-forge
libedit 3.1.20191231 he28a2e2_2 conda-forge
libevent 2.1.10 h9b69904_4 conda-forge
libffi 3.4.2 h7f98852_5 conda-forge
libgcc-ng 11.2.0 h1d223b6_12 conda-forge
libgfortran-ng 11.2.0 h69a702a_12 conda-forge
libgfortran5 11.2.0 h5c6108e_12 conda-forge
libgirepository 1.70.0 hb520f89_1 conda-forge
libglib 2.70.2 h174f98d_1 conda-forge
libiconv 1.16 h516909a_0 conda-forge
libimagequant 2.17.0 h7f98852_1 conda-forge
liblapack 3.9.0 13_linux64_openblas conda-forge
libllvm13 13.0.1 hf817b99_0 conda-forge
libnsl 2.0.0 h7f98852_0 conda-forge
libogg 1.3.4 h7f98852_1 conda-forge
libopenblas 0.3.18 pthreads_h8fe5266_0 conda-forge
libopus 1.3.1 h7f98852_1 conda-forge
libpng 1.6.37 h21135ba_2 conda-forge
libpq 14.1 hd57d9b9_1 conda-forge
librsvg 2.52.5 h0a9e6e8_2 conda-forge
libsodium 1.0.18 h36c2ea0_1 conda-forge
libstdcxx-ng 11.2.0 he4da1e4_12 conda-forge
libtiff 4.3.0 h6f004c6_2 conda-forge
libuuid 2.32.1 h7f98852_1000 conda-forge
libvorbis 1.3.7 h9c3ff4c_0 conda-forge
libwebp 1.2.2 h3452ae3_0 conda-forge
libwebp-base 1.2.2 h7f98852_1 conda-forge
libxcb 1.13 h7f98852_1004 conda-forge
libxkbcommon 1.0.3 he3ba5ed_0 conda-forge
libxml2 2.9.12 h885dcf4_1 conda-forge
libzlib 1.2.11 h36c2ea0_1013 conda-forge
llvm-openmp 12.0.1 h4bd325d_1 conda-forge
lz4-c 1.9.3 h9c3ff4c_1 conda-forge
markupsafe 2.0.1 py38h497a2fe_1 conda-forge
matplotlib-base 3.5.1 py38hf4fb855_0 conda-forge
matplotlib-inline 0.1.3 pyhd8ed1ab_0 conda-forge
mistune 0.8.4 py38h497a2fe_1005 conda-forge
multiprocess 0.70.12.2 py38h497a2fe_1 conda-forge
munkres 1.1.4 pyh9f0ad1d_0 conda-forge
mypy_extensions 0.4.3 py38h578d9bd_4 conda-forge
mysql-common 8.0.28 ha770c72_0 conda-forge
mysql-libs 8.0.28 hfa10184_0 conda-forge
nbclient 0.5.10 pyhd8ed1ab_1 conda-forge
nbconvert 6.4.1 py38h578d9bd_0 conda-forge
nbformat 5.1.3 pyhd8ed1ab_0 conda-forge
ncurses 6.3 h7f8727e_2
nest-asyncio 1.5.4 pyhd8ed1ab_0 conda-forge
notebook 6.4.8 pyha770c72_0 conda-forge
nspr 4.32 h9c3ff4c_1 conda-forge
nss 3.74 hb5efdd6_0 conda-forge
numpy 1.22.2 py38h6ae9a64_0 conda-forge
openjpeg 2.4.0 hb52868f_1 conda-forge
openssl 1.1.1l h7f98852_0 conda-forge
packaging 21.3 pyhd8ed1ab_0 conda-forge
pandas 1.4.0 py38h43a58ef_0 conda-forge
pandoc 2.17.1.1 ha770c72_0 conda-forge
pandocfilters 1.5.0 pyhd8ed1ab_0 conda-forge
pango 1.50.3 h9967ed3_0 conda-forge
parso 0.8.3 pyhd8ed1ab_0 conda-forge
pathos 0.2.8 pyhd8ed1ab_0 conda-forge
pathspec 0.9.0 pyhd8ed1ab_0 conda-forge
pcre 8.45 h9c3ff4c_0 conda-forge
pexpect 4.8.0 pyh9f0ad1d_2 conda-forge
pickleshare 0.7.5 py_1003 conda-forge
pillow 9.0.1 py38he2f12e7_0 conda-forge
pip 21.2.4 py38h06a4308_0
pixman 0.40.0 h36c2ea0_0 conda-forge
platformdirs 2.4.1 pyhd8ed1ab_1 conda-forge
ply 3.11 py_1 conda-forge
pox 0.3.0 pyhd8ed1ab_0 conda-forge
ppft 1.6.6.4 pyhd8ed1ab_0 conda-forge
prometheus_client 0.13.1 pyhd8ed1ab_0 conda-forge
prompt-toolkit 3.0.26 pyha770c72_0 conda-forge
prompt_toolkit 3.0.26 hd8ed1ab_0 conda-forge
pthread-stubs 0.4 h36c2ea0_1001 conda-forge
ptyprocess 0.7.0 pyhd3deb0d_0 conda-forge
pure_eval 0.2.2 pyhd8ed1ab_0 conda-forge
pycairo 1.20.1 py38hf61ee4a_1 conda-forge
pycparser 2.21 pyhd8ed1ab_0 conda-forge
pygments 2.11.2 pyhd8ed1ab_0 conda-forge
pygobject 3.42.0 py38h382169c_1 conda-forge
pyomo 6.2 py38h709712a_0 conda-forge
pyparsing 3.0.7 pyhd8ed1ab_0 conda-forge
pyqt 5.12.3 py38h578d9bd_8 conda-forge
pyqt-impl 5.12.3 py38h0ffb2e6_8 conda-forge
pyqt5-sip 4.19.18 py38h709712a_8 conda-forge
pyqtchart 5.12 py38h7400c14_8 conda-forge
pyqtwebengine 5.12.1 py38h7400c14_8 conda-forge
pyrsistent 0.18.1 py38h497a2fe_0 conda-forge
python 3.8.12 ha38a3c6_3_cpython conda-forge
python-dateutil 2.8.2 pyhd8ed1ab_0 conda-forge
python_abi 3.8 2_cp38 conda-forge
pytz 2021.3 pyhd8ed1ab_0 conda-forge
pyzmq 22.3.0 py38h2035c66_1 conda-forge
qt 5.12.9 ha98a1a1_5 conda-forge
qtconsole 5.2.2 pyhd8ed1ab_1 conda-forge
qtconsole-base 5.2.2 pyhd8ed1ab_1 conda-forge
qtpy 2.0.1 pyhd8ed1ab_0 conda-forge
readline 8.1.2 h7f8727e_1
scipy 1.8.0 py38h56a6a73_0 conda-forge
send2trash 1.8.0 pyhd8ed1ab_0 conda-forge
setuptools 58.0.4 py38h06a4308_0
sigcpp-2.0 2.10.7 h9c3ff4c_1 conda-forge
six 1.16.0 pyh6c4a22f_0 conda-forge
sparsehash 2.0.4 h9c3ff4c_0 conda-forge
sqlite 3.37.0 hc218d9a_0
stack_data 0.1.4 pyhd8ed1ab_0 conda-forge
terminado 0.13.1 py38h578d9bd_0 conda-forge
testpath 0.5.0 pyhd8ed1ab_0 conda-forge
tk 8.6.11 h1ccaba5_0
tomli 2.0.0 pyhd8ed1ab_1 conda-forge
tornado 6.1 py38h497a2fe_2 conda-forge
tqdm 4.62.3 pyhd8ed1ab_0 conda-forge
traitlets 5.1.1 pyhd8ed1ab_0 conda-forge
typed-ast 1.5.2 py38h497a2fe_0 conda-forge
typing_extensions 4.0.1 pyha770c72_0 conda-forge
unicodedata2 14.0.0 py38h497a2fe_0 conda-forge
wcwidth 0.2.5 pyh9f0ad1d_2 conda-forge
webencodings 0.5.1 py_1 conda-forge
wheel 0.37.1 pyhd3eb1b0_0
widgetsnbextension 3.5.2 py38h578d9bd_1 conda-forge
xorg-fixesproto 5.0 h7f98852_1002 conda-forge
xorg-inputproto 2.3.2 h7f98852_1002 conda-forge
xorg-kbproto 1.0.7 h7f98852_1002 conda-forge
xorg-libice 1.0.10 h7f98852_0 conda-forge
xorg-libsm 1.2.3 hd9c2040_1000 conda-forge
xorg-libx11 1.7.2 h7f98852_0 conda-forge
xorg-libxau 1.0.9 h7f98852_0 conda-forge
xorg-libxdmcp 1.1.3 h7f98852_0 conda-forge
xorg-libxext 1.3.4 h7f98852_1 conda-forge
xorg-libxfixes 5.0.3 h7f98852_1004 conda-forge
xorg-libxi 1.7.10 h7f98852_0 conda-forge
xorg-libxrender 0.9.10 h7f98852_1003 conda-forge
xorg-libxtst 1.2.3 h7f98852_1002 conda-forge
xorg-recordproto 1.14.2 h7f98852_1002 conda-forge
xorg-renderproto 0.11.1 h7f98852_1002 conda-forge
xorg-xextproto 7.3.0 h7f98852_1002 conda-forge
xorg-xproto 7.0.31 h7f98852_1007 conda-forge
xz 5.2.5 h7b6447c_0
zeromq 4.3.4 h9c3ff4c_1 conda-forge
zipp 3.7.0 pyhd8ed1ab_1 conda-forge
zlib 1.2.11 h36c2ea0_1013 conda-forge
zstandard 0.17.0 py38h497a2fe_0 conda-forge
zstd 1.5.2 ha95c52a_0 conda-forge
The following minimal example fails:
from graph_tool.generation import complete_graph
The stack trace is:
Traceback (most recent call last):
File "run/run_hop.py", line 12, in <module>
from hop.instance.reduction import InstanceReductor
File "/home/alberto/local/src/github/public/hazardous-ortienteering-problem/hop/instance/reduction.py", line 6, in <module>
from graph_tool.generation import complete_graph
File "/home/alberto/.conda/envs/optimisation/lib/python3.8/site-packages/graph_tool/__init__.py", line 106, in <module>
dl_import("from . import libgraph_tool_core as libcore")
File "/home/alberto/.conda/envs/optimisation/lib/python3.8/site-packages/graph_tool/dl_import.py", line 58, in dl_import
exec(import_expr, local_dict, global_dict)
File "<string>", line 1, in <module>
ImportError: /home/alberto/.conda/envs/optimisation/lib/python3.8/site-packages/graph_tool/libgraph_tool_core.so: undefined symbol: _ZN5boost9iostreams4zlib6finishE
This looks reasonable, because that symbol (surprisingly) is not in the boost shared object file distributed with conda:
$ nm -gD ~/.conda/envs/optimisation/lib/libboost_iostreams.so | grep _ZN5boost9iostreams4zlib6finishE
<empty output>
By contrast, I have it in my systemwide boost installation:
$ nm -gD /usr/lib/libboost_iostreams.so | grep _ZN5boost9iostreams4zlib6finishE
000000000001171c R _ZN5boost9iostreams4zlib6finishE
My system boost is 1.78.0 (as packaged by Arch Linux), vs. 1.74.0 provided by Conda.