Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wrong libffi being selected on WSL for dynamically-linked python extensions #12287

Open
2 tasks done
erip opened this issue Jan 27, 2023 · 13 comments
Open
2 tasks done

Wrong libffi being selected on WSL for dynamically-linked python extensions #12287

erip opened this issue Jan 27, 2023 · 13 comments
Labels
backlog issue has been triaged but has not been earmarked for any upcoming release os::wsl relevant to Windows Subsystem for Linux source::community catch-all for issues filed by community members type::bug describes erroneous operation, use severity::* to classify the type

Comments

@erip
Copy link

erip commented Jan 27, 2023

Checklist

  • I added a descriptive title
  • I searched open reports and couldn't find a duplicate

What happened?

tl;dr: more details at pytorch/data#961

When importing a python extension library on WSL through conda, I find that libffi is being installed and linked against inappropriately resulting in ImportError: /usr/lib/x86_64-linux-gnu/libp11-kit.so.0: undefined symbol: ffi_type_pointer, version LIBFFI_BASE_7.0 at import time.

Conda Info

active environment : base
    active env location : /home/erip/anaconda3
            shell level : 1
       user config file : /home/erip/.condarc
 populated config files : 
          conda version : 23.1.0
    conda-build version : 3.23.1
         python version : 3.9.15.final.0
       virtual packages : __archspec=1=x86_64
                          __cuda=12.0=0
                          __glibc=2.31=0
                          __linux=5.15.79.1=0
                          __unix=0=0
       base environment : /home/erip/anaconda3  (writable)
      conda av data dir : /home/erip/anaconda3/etc/conda
  conda av metadata url : None
           channel URLs : 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 : /home/erip/anaconda3/pkgs
                          /home/erip/.conda/pkgs
       envs directories : /home/erip/anaconda3/envs
                          /home/erip/.conda/envs
               platform : linux-64
             user-agent : conda/23.1.0 requests/2.28.1 CPython/3.9.15 Linux/5.15.79.1-microsoft-standard-WSL2 ubuntu/20.04.5 glibc/2.31
                UID:GID : 1000:1000
             netrc file : None
           offline mode : False

Conda Config

No response

Conda list

# packages in environment at /home/erip/anaconda3:
#
# Name                    Version                   Build  Channel
_anaconda_depends         2022.10                  py39_2    defaults
_ipyw_jlab_nb_ext_conf    0.1.0            py39h06a4308_1    defaults
_libgcc_mutex             0.1                        main    defaults
_openmp_mutex             5.1                       1_gnu    defaults
alabaster                 0.7.12             pyhd3eb1b0_0    defaults
anaconda                  custom                   py39_1    defaults
anaconda-client           1.11.0           py39h06a4308_0    defaults
anaconda-navigator        2.3.2            py39h06a4308_0    defaults
anyio                     3.5.0            py39h06a4308_0    defaults
appdirs                   1.4.4              pyhd3eb1b0_0    defaults
argon2-cffi               21.3.0             pyhd3eb1b0_0    defaults
argon2-cffi-bindings      21.2.0           py39h7f8727e_0    defaults
arrow                     1.2.3            py39h06a4308_0    defaults
astroid                   2.11.7           py39h06a4308_0    defaults
astropy                   5.1              py39h7deecbd_0    defaults
atomicwrites              1.4.0                      py_0    defaults
attrs                     22.1.0           py39h06a4308_0    defaults
automat                   20.2.0                     py_0    defaults
autopep8                  1.6.0              pyhd3eb1b0_1    defaults
babel                     2.11.0           py39h06a4308_0    defaults
backcall                  0.2.0              pyhd3eb1b0_0    defaults
backports                 1.1                pyhd3eb1b0_0    defaults
backports.functools_lru_cache 1.6.4              pyhd3eb1b0_0    defaults
backports.tempfile        1.0                pyhd3eb1b0_1    defaults
backports.weakref         1.0.post1                  py_1    defaults
bcrypt                    3.2.0            py39h5eee18b_1    defaults
beautifulsoup4            4.11.1           py39h06a4308_0    defaults
binaryornot               0.4.4              pyhd3eb1b0_1    defaults
bitarray                  2.5.1            py39h5eee18b_0    defaults
bkcharts                  0.2              py39h06a4308_1    defaults
black                     22.6.0           py39h06a4308_0    defaults
blas                      1.0                         mkl    defaults
bleach                    4.1.0              pyhd3eb1b0_0    defaults
blosc                     1.21.0               h4ff587b_1    defaults
bokeh                     2.4.3            py39h06a4308_0    defaults
boto3                     1.24.28          py39h06a4308_0    defaults
botocore                  1.27.59          py39h06a4308_0    defaults
bottleneck                1.3.5            py39h7deecbd_0    defaults
brotli                    1.0.9                h5eee18b_7    defaults
brotli-bin                1.0.9                h5eee18b_7    defaults
brotlipy                  0.7.0           py39h27cfd23_1003    defaults
brunsli                   0.1                  h2531618_0    defaults
bzip2                     1.0.8                h7b6447c_0    defaults
c-ares                    1.18.1               h7f8727e_0    defaults
ca-certificates           2023.01.10           h06a4308_0    defaults
certifi                   2022.12.7        py39h06a4308_0    defaults
cffi                      1.15.1           py39h74dc2b5_0    defaults
cfitsio                   3.470                hf0d0db6_6    defaults
chardet                   4.0.0           py39h06a4308_1003    defaults
charls                    2.2.0                h2531618_0    defaults
charset-normalizer        2.0.4              pyhd3eb1b0_0    defaults
click                     8.0.4            py39h06a4308_0    defaults
cloudpickle               2.0.0              pyhd3eb1b0_0    defaults
clyent                    1.2.2            py39h06a4308_1    defaults
colorama                  0.4.6            py39h06a4308_0    defaults
colorcet                  3.0.1            py39h06a4308_0    defaults
comm                      0.1.2            py39h06a4308_0    defaults
conda                     23.1.0           py39h06a4308_0    defaults
conda-build               3.23.1           py39h06a4308_0    defaults
conda-content-trust       0.1.3            py39h06a4308_0    defaults
conda-env                 2.6.0                         1    defaults
conda-package-handling    2.0.2            py39h06a4308_0    defaults
conda-package-streaming   0.7.0            py39h06a4308_0    defaults
conda-repo-cli            1.0.27           py39h06a4308_0    defaults
conda-token               0.4.0              pyhd3eb1b0_0    defaults
conda-verify              3.4.2                      py_1    defaults
constantly                15.1.0             pyh2b92418_0    defaults
contourpy                 1.0.5            py39hdb19cb5_0    defaults
cookiecutter              1.7.3              pyhd3eb1b0_0    defaults
cryptography              38.0.4           py39h9ce1e76_0    defaults
cssselect                 1.1.0              pyhd3eb1b0_0    defaults
curl                      7.87.0               h5eee18b_0    defaults
cycler                    0.11.0             pyhd3eb1b0_0    defaults
cython                    0.29.32          py39h6a678d5_0    defaults
cytoolz                   0.12.0           py39h5eee18b_0    defaults
daal4py                   2021.6.0         py39h79cecc1_1    defaults
dal                       2021.6.0           hdb19cb5_916    defaults
dask                      2022.2.1           pyhd3eb1b0_0    defaults
dask-core                 2022.2.1           pyhd3eb1b0_0    defaults
dataclasses               0.8                pyh6d0b6a4_7    defaults
datashader                0.14.3           py39h06a4308_0    defaults
datashape                 0.5.4            py39h06a4308_1    defaults
dbus                      1.13.18              hb2f20db_0    defaults
debugpy                   1.5.1            py39h295c915_0    defaults
decorator                 5.1.1              pyhd3eb1b0_0    defaults
defusedxml                0.7.1              pyhd3eb1b0_0    defaults
diff-match-patch          20200713           pyhd3eb1b0_0    defaults
dill                      0.3.6            py39h06a4308_0    defaults
distributed               2022.2.1           pyhd3eb1b0_0    defaults
docutils                  0.18.1           py39h06a4308_3    defaults
entrypoints               0.4              py39h06a4308_0    defaults
et_xmlfile                1.1.0            py39h06a4308_0    defaults
expat                     2.4.9                h6a678d5_0    defaults
filelock                  3.9.0            py39h06a4308_0    defaults
flake8                    4.0.1              pyhd3eb1b0_1    defaults
flask                     1.1.2              pyhd3eb1b0_0    defaults
flit-core                 3.6.0              pyhd3eb1b0_0    defaults
fontconfig                2.14.1               h52c9d5c_1    defaults
fonttools                 4.25.0             pyhd3eb1b0_0    defaults
freetype                  2.12.1               h4a9f257_0    defaults
fsspec                    2022.11.0        py39h06a4308_0    defaults
future                    0.18.2           py39h06a4308_1    defaults
gensim                    4.1.2            py39h295c915_0    defaults
giflib                    5.2.1                h7b6447c_0    defaults
glib                      2.69.1               h4ff587b_1    defaults
glob2                     0.7                pyhd3eb1b0_0    defaults
gmp                       6.2.1                h295c915_3    defaults
gmpy2                     2.1.2            py39heeb90bb_0    defaults
greenlet                  2.0.1            py39h6a678d5_0    defaults
gst-plugins-base          1.14.0               h8213a91_2    defaults
gstreamer                 1.14.0               h28cd5cc_2    defaults
h5py                      3.7.0            py39h737f45e_0    defaults
hdf5                      1.10.6               hb1b8bf9_0    defaults
heapdict                  1.0.1              pyhd3eb1b0_0    defaults
holoviews                 1.15.3           py39h06a4308_0    defaults
hvplot                    0.8.2            py39h06a4308_0    defaults
hyperlink                 21.0.0             pyhd3eb1b0_0    defaults
icu                       58.2                 he6710b0_3    defaults
idna                      3.4              py39h06a4308_0    defaults
imagecodecs               2021.8.26        py39hf0132c2_1    defaults
imageio                   2.19.3           py39h06a4308_0    defaults
imagesize                 1.4.1            py39h06a4308_0    defaults
importlib-metadata        4.11.3           py39h06a4308_0    defaults
importlib_metadata        4.11.3               hd3eb1b0_0    defaults
incremental               21.3.0             pyhd3eb1b0_0    defaults
inflection                0.5.1            py39h06a4308_0    defaults
iniconfig                 1.1.1              pyhd3eb1b0_0    defaults
intake                    0.6.6            py39h06a4308_0    defaults
intel-openmp              2021.4.0          h06a4308_3561    defaults
intervaltree              3.1.0              pyhd3eb1b0_0    defaults
ipykernel                 6.19.2           py39hb070fc8_0    defaults
ipython                   7.31.1           py39h06a4308_1    defaults
ipython_genutils          0.2.0              pyhd3eb1b0_1    defaults
ipywidgets                7.6.5              pyhd3eb1b0_1    defaults
isort                     5.9.3              pyhd3eb1b0_0    defaults
itemadapter               0.3.0              pyhd3eb1b0_0    defaults
itemloaders               1.0.4              pyhd3eb1b0_1    defaults
itsdangerous              2.0.1              pyhd3eb1b0_0    defaults
jdcal                     1.4.1              pyhd3eb1b0_0    defaults
jedi                      0.18.1           py39h06a4308_1    defaults
jeepney                   0.7.1              pyhd3eb1b0_0    defaults
jellyfish                 0.9.0            py39h7f8727e_0    defaults
jinja2                    2.11.3             pyhd3eb1b0_0    defaults
jinja2-time               0.2.0              pyhd3eb1b0_3    defaults
jmespath                  0.10.0             pyhd3eb1b0_0    defaults
joblib                    1.1.1            py39h06a4308_0    defaults
jpeg                      9e                   h7f8727e_0    defaults
jq                        1.6               h27cfd23_1000    defaults
json5                     0.9.6              pyhd3eb1b0_0    defaults
jsonschema                4.16.0           py39h06a4308_0    defaults
jupyter                   1.0.0            py39h06a4308_8    defaults
jupyter_client            7.4.8            py39h06a4308_0    defaults
jupyter_console           6.4.4            py39h06a4308_0    defaults
jupyter_core              5.1.1            py39h06a4308_0    defaults
jupyter_server            1.23.4           py39h06a4308_0    defaults
jupyterlab                3.5.2            py39h06a4308_0    defaults
jupyterlab_pygments       0.1.2                      py_0    defaults
jupyterlab_server         2.10.3             pyhd3eb1b0_1    defaults
jupyterlab_widgets        1.0.0              pyhd3eb1b0_1    defaults
jxrlib                    1.1                  h7b6447c_2    defaults
keyring                   23.4.0           py39h06a4308_0    defaults
kiwisolver                1.4.4            py39h6a678d5_0    defaults
krb5                      1.19.4               h568e23c_0    defaults
lazy-object-proxy         1.6.0            py39h27cfd23_0    defaults
lcms2                     2.12                 h3be6417_0    defaults
ld_impl_linux-64          2.38                 h1181459_1    defaults
lerc                      3.0                  h295c915_0    defaults
libaec                    1.0.4                he6710b0_1    defaults
libarchive                3.6.1                hab531cd_0    defaults
libbrotlicommon           1.0.9                h5eee18b_7    defaults
libbrotlidec              1.0.9                h5eee18b_7    defaults
libbrotlienc              1.0.9                h5eee18b_7    defaults
libclang                  10.0.1          default_hb85057a_2    defaults
libcurl                   7.87.0               h91b91d3_0    defaults
libdeflate                1.8                  h7f8727e_5    defaults
libedit                   3.1.20221030         h5eee18b_0    defaults
libev                     4.33                 h7f8727e_1    defaults
libevent                  2.1.12               h8f2d780_0    defaults
libffi                    3.3                  he6710b0_2    defaults
libgcc-ng                 11.2.0               h1234567_1    defaults
libgfortran-ng            7.5.0               ha8ba4b0_17    defaults
libgfortran4              7.5.0               ha8ba4b0_17    defaults
libgomp                   11.2.0               h1234567_1    defaults
libidn2                   2.3.2                h7f8727e_0    defaults
liblief                   0.12.3               h6a678d5_0    defaults
libllvm10                 10.0.1               hbcb73fb_5    defaults
libllvm11                 11.1.0               h9e868ea_6    defaults
libnghttp2                1.46.0               hce63b2e_0    defaults
libpng                    1.6.37               hbc83047_0    defaults
libpq                     12.9                 h16c4e8d_3    defaults
libsodium                 1.0.18               h7b6447c_0    defaults
libspatialindex           1.9.3                h2531618_0    defaults
libssh2                   1.10.0               h8f2d780_0    defaults
libstdcxx-ng              11.2.0               h1234567_1    defaults
libtiff                   4.5.0                hecacb30_0    defaults
libunistring              0.9.10               h27cfd23_0    defaults
libuuid                   1.41.5               h5eee18b_0    defaults
libwebp                   1.2.4                h11a3e52_0    defaults
libwebp-base              1.2.4                h5eee18b_0    defaults
libxcb                    1.15                 h7f8727e_0    defaults
libxkbcommon              1.0.1                hfa300c1_0    defaults
libxml2                   2.9.14               h74e7548_0    defaults
libxslt                   1.1.35               h4e12654_0    defaults
libzopfli                 1.0.3                he6710b0_0    defaults
llvmlite                  0.39.1           py39he621ea3_0    defaults
locket                    1.0.0            py39h06a4308_0    defaults
lxml                      4.9.1            py39h1edc446_0    defaults
lz4-c                     1.9.4                h6a678d5_0    defaults
lzo                       2.10                 h7b6447c_2    defaults
markdown                  3.4.1            py39h06a4308_0    defaults
markupsafe                2.0.1            py39h27cfd23_0    defaults
matplotlib                3.6.2            py39h06a4308_0    defaults
matplotlib-base           3.6.2            py39h945d387_0    defaults
matplotlib-inline         0.1.6            py39h06a4308_0    defaults
mccabe                    0.7.0              pyhd3eb1b0_0    defaults
mistune                   0.8.4           py39h27cfd23_1000    defaults
mkl                       2021.4.0           h06a4308_640    defaults
mkl-service               2.4.0            py39h7f8727e_0    defaults
mkl_fft                   1.3.1            py39hd3c417c_0    defaults
mkl_random                1.2.2            py39h51133e4_0    defaults
mock                      4.0.3              pyhd3eb1b0_0    defaults
mpc                       1.1.0                h10f8cd9_1    defaults
mpfr                      4.0.2                hb69a4c5_1    defaults
mpi                       1.0                       mpich    defaults
mpich                     3.3.2                hc856adb_0    defaults
mpmath                    1.2.1            py39h06a4308_0    defaults
msgpack-python            1.0.3            py39hd09550d_0    defaults
multipledispatch          0.6.0            py39h06a4308_0    defaults
munkres                   1.1.4                      py_0    defaults
mypy_extensions           0.4.3            py39h06a4308_1    defaults
navigator-updater         0.3.0            py39h06a4308_0    defaults
nbclassic                 0.4.8            py39h06a4308_0    defaults
nbclient                  0.5.13           py39h06a4308_0    defaults
nbconvert                 6.4.4            py39h06a4308_0    defaults
nbformat                  5.7.0            py39h06a4308_0    defaults
ncurses                   6.3                  h5eee18b_3    defaults
nest-asyncio              1.5.6            py39h06a4308_0    defaults
networkx                  2.8.4            py39h06a4308_0    defaults
nltk                      3.7                pyhd3eb1b0_0    defaults
nose                      1.3.7           pyhd3eb1b0_1008    defaults
notebook                  6.5.2            py39h06a4308_0    defaults
notebook-shim             0.2.2            py39h06a4308_0    defaults
nspr                      4.33                 h295c915_0    defaults
nss                       3.74                 h0370c37_0    defaults
numba                     0.56.4           py39h417a72b_0    defaults
numexpr                   2.8.4            py39he184ba9_0    defaults
numpy                     1.21.5           py39h6c91a56_3    defaults
numpy-base                1.21.5           py39ha15fc14_3    defaults
numpydoc                  1.5.0            py39h06a4308_0    defaults
olefile                   0.46               pyhd3eb1b0_0    defaults
oniguruma                 6.9.7.1              h27cfd23_0    defaults
openjpeg                  2.4.0                h3ad879b_0    defaults
openpyxl                  3.0.10           py39h5eee18b_0    defaults
openssl                   1.1.1s               h7f8727e_0    defaults
packaging                 22.0             py39h06a4308_0    defaults
pandas                    1.4.4            py39h6a678d5_0    defaults
pandocfilters             1.5.0              pyhd3eb1b0_0    defaults
panel                     0.14.2           py39h06a4308_0    defaults
param                     1.12.3           py39h06a4308_0    defaults
parsel                    1.6.0            py39h06a4308_0    defaults
parso                     0.8.3              pyhd3eb1b0_0    defaults
partd                     1.2.0              pyhd3eb1b0_1    defaults
patch                     2.7.6             h7b6447c_1001    defaults
patchelf                  0.15.0               h6a678d5_0    defaults
pathlib                   1.0.1              pyhd3eb1b0_1    defaults
pathspec                  0.9.0            py39h06a4308_0    defaults
patsy                     0.5.3            py39h06a4308_0    defaults
pcre                      8.45                 h295c915_0    defaults
pep8                      1.7.1            py39h06a4308_1    defaults
pexpect                   4.8.0              pyhd3eb1b0_3    defaults
pickleshare               0.7.5           pyhd3eb1b0_1003    defaults
pillow                    9.3.0            py39hace64e9_1    defaults
pip                       22.3.1           py39h06a4308_0    defaults
pkginfo                   1.8.3            py39h06a4308_0    defaults
platformdirs              2.5.2            py39h06a4308_0    defaults
plotly                    5.9.0            py39h06a4308_0    defaults
pluggy                    1.0.0            py39h06a4308_1    defaults
ply                       3.11             py39h06a4308_0    defaults
poyo                      0.5.0              pyhd3eb1b0_0    defaults
prometheus_client         0.14.1           py39h06a4308_0    defaults
prompt-toolkit            3.0.36           py39h06a4308_0    defaults
prompt_toolkit            3.0.36               hd3eb1b0_0    defaults
protego                   0.1.16                     py_0    defaults
psutil                    5.9.0            py39h5eee18b_0    defaults
ptyprocess                0.7.0              pyhd3eb1b0_2    defaults
py                        1.11.0             pyhd3eb1b0_0    defaults
py-lief                   0.12.3           py39h6a678d5_0    defaults
pyasn1                    0.4.8              pyhd3eb1b0_0    defaults
pyasn1-modules            0.2.8                      py_0    defaults
pycodestyle               2.8.0              pyhd3eb1b0_0    defaults
pycosat                   0.6.4            py39h5eee18b_0    defaults
pycparser                 2.21               pyhd3eb1b0_0    defaults
pyct                      0.4.8            py39h06a4308_1    defaults
pycurl                    7.45.1           py39h8f2d780_0    defaults
pydispatcher              2.0.5            py39h06a4308_2    defaults
pydocstyle                6.1.1              pyhd3eb1b0_0    defaults
pyerfa                    2.0.0            py39h27cfd23_0    defaults
pyflakes                  2.4.0              pyhd3eb1b0_0    defaults
pygments                  2.11.2             pyhd3eb1b0_0    defaults
pyhamcrest                2.0.2              pyhd3eb1b0_2    defaults
pyjwt                     2.4.0            py39h06a4308_0    defaults
pylint                    2.14.5           py39h06a4308_0    defaults
pyls-spyder               0.4.0              pyhd3eb1b0_0    defaults
pyodbc                    4.0.34           py39h6a678d5_0    defaults
pyopenssl                 22.0.0             pyhd3eb1b0_0    defaults
pyparsing                 3.0.9            py39h06a4308_0    defaults
pyqt                      5.15.7           py39h6a678d5_1    defaults
pyqt5-sip                 12.11.0          py39h6a678d5_1    defaults
pyqtwebengine             5.15.7           py39h6a678d5_1    defaults
pyrsistent                0.18.0           py39heee7806_0    defaults
pysocks                   1.7.1            py39h06a4308_0    defaults
pytables                  3.7.0            py39hf19a122_1    defaults
pytest                    7.1.2            py39h06a4308_0    defaults
python                    3.9.15               haa1d7c7_0    defaults
python-dateutil           2.8.2              pyhd3eb1b0_0    defaults
python-fastjsonschema     2.16.2           py39h06a4308_0    defaults
python-libarchive-c       2.9                pyhd3eb1b0_1    defaults
python-lsp-black          1.2.1            py39h06a4308_0    defaults
python-lsp-jsonrpc        1.0.0              pyhd3eb1b0_0    defaults
python-lsp-server         1.5.0            py39h06a4308_0    defaults
python-slugify            5.0.2              pyhd3eb1b0_0    defaults
python-snappy             0.6.1            py39h6a678d5_0    defaults
pytz                      2022.7           py39h06a4308_0    defaults
pyviz_comms               2.0.2              pyhd3eb1b0_0    defaults
pywavelets                1.4.1            py39h5eee18b_0    defaults
pyxdg                     0.27               pyhd3eb1b0_0    defaults
pyyaml                    6.0              py39h5eee18b_1    defaults
pyzmq                     23.2.0           py39h6a678d5_0    defaults
qdarkstyle                3.0.2              pyhd3eb1b0_0    defaults
qstylizer                 0.2.2            py39h06a4308_0    defaults
qt                        5.15.9               h06a4308_0    defaults
qt-main                   5.15.2               h327a75a_7    defaults
qt-webengine              5.15.9               hd2b0992_4    defaults
qtawesome                 1.2.2            py39h06a4308_0    defaults
qtconsole                 5.3.2            py39h06a4308_0    defaults
qtpy                      2.2.0            py39h06a4308_0    defaults
qtwebkit                  5.212                h4eab89a_4    defaults
queuelib                  1.5.0            py39h06a4308_0    defaults
readline                  8.2                  h5eee18b_0    defaults
regex                     2022.7.9         py39h5eee18b_0    defaults
requests                  2.28.1           py39h06a4308_0    defaults
requests-file             1.5.1              pyhd3eb1b0_0    defaults
ripgrep                   13.0.0               hbdeaff8_0    defaults
rope                      0.22.0             pyhd3eb1b0_0    defaults
rtree                     0.9.7            py39h06a4308_1    defaults
ruamel.yaml               0.17.21          py39h5eee18b_0    defaults
ruamel.yaml.clib          0.2.6            py39h5eee18b_1    defaults
ruamel_yaml               0.17.21          py39h5eee18b_0    defaults
s3transfer                0.6.0            py39h06a4308_0    defaults
scikit-image              0.19.3           py39h6a678d5_1    defaults
scikit-learn              1.0.2            py39h51133e4_1    defaults
scikit-learn-intelex      2021.6.0         py39h06a4308_0    defaults
scipy                     1.7.3            py39hc147768_0    defaults
scrapy                    2.6.2            py39h06a4308_0    defaults
seaborn                   0.12.2           py39h06a4308_0    defaults
secretstorage             3.3.1            py39h06a4308_0    defaults
send2trash                1.8.0              pyhd3eb1b0_1    defaults
service_identity          18.1.0             pyhd3eb1b0_1    defaults
setuptools                65.6.3           py39h06a4308_0    defaults
sip                       6.6.2            py39h6a678d5_0    defaults
six                       1.16.0             pyhd3eb1b0_1    defaults
smart_open                5.2.1            py39h06a4308_0    defaults
snappy                    1.1.9                h295c915_0    defaults
sniffio                   1.2.0            py39h06a4308_1    defaults
snowballstemmer           2.2.0              pyhd3eb1b0_0    defaults
sortedcollections         2.1.0              pyhd3eb1b0_0    defaults
sortedcontainers          2.4.0              pyhd3eb1b0_0    defaults
soupsieve                 2.3.2.post1      py39h06a4308_0    defaults
sphinx                    5.0.2            py39h06a4308_0    defaults
sphinxcontrib-applehelp   1.0.2              pyhd3eb1b0_0    defaults
sphinxcontrib-devhelp     1.0.2              pyhd3eb1b0_0    defaults
sphinxcontrib-htmlhelp    2.0.0              pyhd3eb1b0_0    defaults
sphinxcontrib-jsmath      1.0.1              pyhd3eb1b0_0    defaults
sphinxcontrib-qthelp      1.0.3              pyhd3eb1b0_0    defaults
sphinxcontrib-serializinghtml 1.1.5              pyhd3eb1b0_0    defaults
spyder                    5.3.3            py39h06a4308_0    defaults
spyder-kernels            2.3.3            py39h06a4308_0    defaults
sqlalchemy                1.4.39           py39h5eee18b_0    defaults
sqlite                    3.40.1               h5082296_0    defaults
statsmodels               0.13.5           py39h7deecbd_0    defaults
sympy                     1.11.1           py39h06a4308_0    defaults
tabulate                  0.8.10           py39h06a4308_0    defaults
tbb                       2021.6.0             hdb19cb5_1    defaults
tbb4py                    2021.6.0         py39hdb19cb5_1    defaults
tblib                     1.7.0              pyhd3eb1b0_0    defaults
tenacity                  8.0.1            py39h06a4308_1    defaults
terminado                 0.17.1           py39h06a4308_0    defaults
testpath                  0.6.0            py39h06a4308_0    defaults
text-unidecode            1.3                pyhd3eb1b0_0    defaults
textdistance              4.2.1              pyhd3eb1b0_0    defaults
threadpoolctl             2.2.0              pyh0d69192_0    defaults
three-merge               0.1.1              pyhd3eb1b0_0    defaults
tifffile                  2021.7.2           pyhd3eb1b0_2    defaults
tinycss2                  1.2.1            py39h06a4308_0    defaults
tk                        8.6.12               h1ccaba5_0    defaults
tldextract                3.2.0              pyhd3eb1b0_0    defaults
toml                      0.10.2             pyhd3eb1b0_0    defaults
tomli                     2.0.1            py39h06a4308_0    defaults
tomlkit                   0.11.1           py39h06a4308_0    defaults
toolz                     0.12.0           py39h06a4308_0    defaults
tornado                   6.2              py39h5eee18b_0    defaults
tqdm                      4.64.1           py39h06a4308_0    defaults
traitlets                 5.7.1            py39h06a4308_0    defaults
twisted                   22.2.0           py39h5eee18b_1    defaults
typing-extensions         4.4.0            py39h06a4308_0    defaults
typing_extensions         4.4.0            py39h06a4308_0    defaults
tzdata                    2022g                h04d1e81_0    defaults
ujson                     5.4.0            py39h6a678d5_0    defaults
unidecode                 1.2.0              pyhd3eb1b0_0    defaults
unixodbc                  2.3.11               h5eee18b_0    defaults
urllib3                   1.26.14          py39h06a4308_0    defaults
w3lib                     1.21.0             pyhd3eb1b0_0    defaults
watchdog                  2.1.6            py39h06a4308_0    defaults
wcwidth                   0.2.5              pyhd3eb1b0_0    defaults
webencodings              0.5.1            py39h06a4308_1    defaults
websocket-client          0.58.0           py39h06a4308_4    defaults
werkzeug                  2.0.3              pyhd3eb1b0_0    defaults
wget                      1.21.3               h0b77cf5_0    defaults
whatthepatch              1.0.2            py39h06a4308_0    defaults
wheel                     0.37.1             pyhd3eb1b0_0    defaults
widgetsnbextension        3.5.2            py39h06a4308_0    defaults
wrapt                     1.14.1           py39h5eee18b_0    defaults
wurlitzer                 3.0.2            py39h06a4308_0    defaults
xarray                    2022.11.0        py39h06a4308_0    defaults
xlrd                      2.0.1              pyhd3eb1b0_0    defaults
xlsxwriter                3.0.3              pyhd3eb1b0_0    defaults
xz                        5.2.10               h5eee18b_1    defaults
yaml                      0.2.5                h7b6447c_0    defaults
yapf                      0.31.0             pyhd3eb1b0_0    defaults
zeromq                    4.3.4                h2531618_0    defaults
zfp                       0.5.5                h295c915_6    defaults
zict                      2.1.0            py39h06a4308_0    defaults
zipp                      3.11.0           py39h06a4308_0    defaults
zlib                      1.2.13               h5eee18b_0    defaults
zope                      1.0              py39h06a4308_1    defaults
zope.interface            5.4.0            py39h7f8727e_0    defaults
zstandard                 0.18.0           py39h5eee18b_0    defaults
zstd                      1.5.2                ha4553b6_0    defaults

Additional Context

Reproducer on WSL:

$ conda create -n tmp -y python=3.10 -q && \
  conda activate tmp && \
  conda install -c pytorch torchdata -y -q && \
  python -c "import torchdata"
@erip erip added the type::bug describes erroneous operation, use severity::* to classify the type label Jan 27, 2023
@travishathaway travishathaway added os::wsl relevant to Windows Subsystem for Linux source::community catch-all for issues filed by community members labels Feb 6, 2023
@travishathaway
Copy link
Contributor

Hi @erip,

Thanks for filing this issue. We have tagged it as os::wsl relevant to Windows Subsystem for Linux so it will be grouped together with other WSL issues.

We cannot give an estimate currently regarding when this will be resolved, but we encourage you to keep an eye on this issue or update us here when anything changes.

@travishathaway travishathaway added the backlog issue has been triaged but has not been earmarked for any upcoming release label Feb 7, 2023
@friggog
Copy link

friggog commented Feb 14, 2023

So I'm seeing a very similar issue on Azure ML with an ubuntu image based on this image when I use ffmpeg.

Whatever changed has happened since Feb 2nd on AML though I'm struggling to track anything down. The only difference I see is libffi went from 3.3 to 3.4.1 and python from 3.8.13 to 3.8.15/16 between working and broken envs. Pinning libffi to 3.3 seems to fix things for me, although above looks like you're already on that version - so maybe unrelated

@vocdex
Copy link

vocdex commented Feb 20, 2023

I am having the same issue. This only happens with Conda environments when using OpenCV+ROS for some reason. Eventually, I ended up using virtualenv instead of conda

@skrishnappa
Copy link

I hit the same issue and the cause seems to be due to libffi.7.so being incorrectly linked to libffi.8.so. See the files below which got installed by conda - "conda install libffi==3.4.2"

:/opt/conda/.../lib# ll | grep ffi
libffi.7.so -> libffi.so.8.1.0*
libffi.8.so -> libffi.so.8.1.0*
libffi.a
libffi.so -> libffi.so.8.1.0*
libffi.so.7 -> libffi.so.8.1.0*
libffi.so.8 -> libffi.so.8.1.0*
libffi.so.8.1.0*

Why would it point an older version (libffi7) to newer version (libffi8)? Seems wrong and defeats the purpose of versioning. If we remove this link then the correct libffi.7.so installed in the system gets used.
Some bug in Conda installation?

@truh
Copy link

truh commented Mar 7, 2023

I found this issue googling for the error message.

I'm experiencing a similar problem with psycopg2 in the continuumio/miniconda3 docker image. Should I file a new issue since this is WSL specific or leave it at that?

Screen Shot 2023-03-07 at 16 19 52

@Starrah
Copy link

Starrah commented Mar 31, 2023

Have the same issue.
In my case, as said in #12287 (comment) , the issue can be workarounded by downgrade the version of libffi to 3.3 with the following command:
conda install libffi==3.3

@sudo-datluu
Copy link

@Starrah You save my day.
I am facing the same issue when trying to use psycopg2 version 2.8.6.
Just simply downgrade lilibffi to 3.3

@Vulum
Copy link

Vulum commented Jul 28, 2023

That issue is none existence in python 3.10.
I was having the same issue in python 3.9. I can see that your python too is 3.9
However, never experienced that in python 3.10, even though my libffi is 3.4.4

@erip
Copy link
Author

erip commented Jul 29, 2023

@Vulum that's not true. My reproducer explicitly uses 3.10

@Vulum
Copy link

Vulum commented Jul 29, 2023

@erip: Ok, probably the version in his conda env must be 3.10 but the python version in his conda base env must be < 3.10.
Something like conda create -n name_of_env python=3.10 for the working environment name_of_env but the python version in conda base is < 3.10.
Coz I have no problem with libffi==3.4.4 in python 3.10

@Tlaloc-Es
Copy link

I solve with pip install psycopg2-binary

@deepboliya
Copy link

Have the same issue. In my case, as said in #12287 (comment) , the issue can be workarounded by downgrade the version of libffi to 3.3 with the following command: conda install libffi==3.3

thanks this worked for me

@wangyuhuiever
Copy link

I occur this error when use psycopg2, and @Tlaloc-Es way can fix this bug. But on the time, my another compute with same config can run normally. So I compare two Ubuntu's libffi version use dpkg -l | grep libffi
on the normally computer, os version: Ubuntu 23.10, it's show:

ii  libffi-dev:amd64                               3.4.4-1                                 amd64        Foreign Function Interface library (development files)
ii  libffi8:amd64                                  3.4.4-1                                 amd64        Foreign Function Interface library runtime
ii  libffi8:i386                                   3.4.4-1                                 i386         Foreign Function Interface library runtime

And I complie docker image with ubuntu:jammy-20240405 show:

ii  libffi8:amd64                                  3.4.2-4                                 amd64        Foreign Function Interface library runtime

But on the error computer, os version: Ubuntu 20.04.6 LTS it's show:

ii  libffi7:amd64                                  3.3-4                                 amd64        Foreign Function Interface library runtime

So, every psycopg2 run properly with machine libffi version 3.4, but error on 3.3.
Maybe this error is not just conda, and relate to machine's libffi version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backlog issue has been triaged but has not been earmarked for any upcoming release os::wsl relevant to Windows Subsystem for Linux source::community catch-all for issues filed by community members type::bug describes erroneous operation, use severity::* to classify the type
Projects
Status: No status
Development

No branches or pull requests