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

"import gi" fails on win-64 #15

Open
jefftrull opened this issue Jun 12, 2019 · 7 comments
Open

"import gi" fails on win-64 #15

jefftrull opened this issue Jun 12, 2019 · 7 comments

Comments

@jefftrull
Copy link

Issue: "import gl" fails with

ImportError: DLL load failed: The specified procedure could not be found


Environment (conda list )

packages in environment at C:\Users\Jeff\AppData\Local\Continuum\miniconda3\envs\pqt2:

Name Version Build Channel

asn1crypto 0.24.0 py37_0
atomicwrites 1.3.0 py37_1
attrs 19.1.0 py37_1
backports 1.0 py_2
backports.functools_lru_cache 1.5 py_1 conda-forge
backports.tempfile 1.0 py_1
backports.weakref 1.0.post1 py37_0
beautifulsoup4 4.7.1 py37_1
bzip2 1.0.6 hfa6e2cd_5
ca-certificates 2019.5.15 0
cairo 1.16.0 hc1b38c8_1000 conda-forge
certifi 2019.3.9 py37_0
cffi 1.12.3 py37h7a1dbc1_0
chardet 3.0.4 py37_1
click 7.0 py37_0
colorama 0.4.1 py37_0
conda 4.6.14 py37_0
conda-build 3.17.8 py37_0
conda-package-handling 1.3.0 py37_0
conda-verify 3.4.2 py_0
cryptography 2.7 py37h7a1dbc1_0
filelock 3.0.12 py_0
future 0.17.1 py37_0
gettext 0.19.8.1 hb01d8f6_1002 conda-forge
glib 2.58.3 hc0c2ac7_1001 conda-forge
glob2 0.6 py37_1
gobject-introspection 1.58.2 py37h1800f87_1000 conda-forge
icu 58.2 ha66f8fd_1
idna 2.8 py37_0
importlib_metadata 0.17 py37_1
jinja2 2.10.1 py37_0
libarchive 3.3.3 h0643e63_5
libffi 3.2.1 h6538335_1006 conda-forge
libiconv 1.15 h1df5818_7
liblief 0.9.0 ha925a31_2
libpng 1.6.37 h2a8f88b_0
libxml2 2.9.9 h464c3ec_0
lz4-c 1.8.1.2 h2fa13f4_0
lzo 2.10 h6df0209_2
m2w64-gcc-libgfortran 5.3.0 6
m2w64-gcc-libs 5.3.0 7
m2w64-gcc-libs-core 5.3.0 7
m2w64-gmp 6.1.0 2
m2w64-libwinpthread-git 5.0.0.4634.697f757 2
markupsafe 1.1.1 py37he774522_0
menuinst 1.4.16 py37he774522_0
more-itertools 7.0.0 py37_0
msys2-conda-epoch 20160418 1
openssl 1.1.1c he774522_1
packaging 19.0 py37_0
pcre 8.43 ha925a31_0
pip 19.1.1 py37_0
pixman 0.34.0 hcef7cb0_3
pkginfo 1.5.0.1 py37_0
pluggy 0.12.0 py_0
psutil 5.6.2 py37he774522_0
py 1.8.0 py37_0
py-lief 0.9.0 py37ha925a31_2
pycairo 1.18.1 py37h63da52a_0
pycosat 0.6.3 py37hfa6e2cd_0
pycparser 2.19 py37_0
pygobject 3.30.4 py37h5e4a255_1000 conda-forge
pyopenssl 19.0.0 py37_0
pyparsing 2.4.0 py_0
pysocks 1.7.0 py37_0
pytest 4.6.2 py37_0
python 3.7.3 h8c8aaf0_1
python-libarchive-c 2.8 py37_6
pytz 2019.1 py_0
pywin32 223 py37hfa6e2cd_1
pyyaml 5.1 py37he774522_0
requests 2.22.0 py37_0
ruamel_yaml 0.15.46 py37hfa6e2cd_0
setuptools 41.0.1 py37_0
six 1.12.0 py37_0
soupsieve 1.8 py37_0
sqlite 3.28.0 he774522_0
tqdm 4.32.1 py_0
urllib3 1.24.2 py37_0
vc 14.1 h0510ff6_4
vs2015_runtime 14.15.26706 h3a45250_4
wcwidth 0.1.7 py37_0
wheel 0.33.4 py37_0
win_inet_pton 1.1.0 py37_0
wincertstore 0.2 py37_0
xz 5.2.4 h2fa13f4_4
yaml 0.1.7 hc54c509_2
zipp 0.5.1 py_0
zlib 1.2.11 h62dcd97_3
zstd 1.3.7 h508b16e_0):

$ conda list


In a freshly created conda environment on win-64, installing `pygobject` and then running `python -c "import gi"` produces the following error: ``` File "", line 1, in File "C:\Users\Jeff\AppData\Local\Continuum\miniconda3\envs\pqt2\lib\site-packages\gi\__init__.py", line 42, in from . import _gi ImportError: DLL load failed: The specified procedure could not be found. ```
$ conda info

This renders the win-64 build unusable. Thanks for any help you can give!

@jefftrull
Copy link
Author

I believe @cmichal2 noted this problem in a comment on #8

@jefftrull
Copy link
Author

I ran "import gi" in WinDbg, and if I'm reading this correctly, it fails while trying to load the dependency "glib-2.0-0.dll" with a 0xc0000139 or ENTRYPOINT_NOT_FOUND

@jefftrull
Copy link
Author

OK I've found a workaround after tracing the DLL loading. You have to use the version of libiconv from conda-forge, not the default one. Not sure why they are different.

conda install -c conda-forge libiconv

@pkgw
Copy link
Contributor

pkgw commented Jun 14, 2019

Thanks for investigating! I'll try adding libiconv to the package's runtime deps, which might help mitigate this (although it is not great if our version of libiconv and that of defaults are somehow not fully binary-compatible ...).

@jefftrull
Copy link
Author

libiconv does get pulled in from something or another. Anyway, should be easy to test the difference - just install defaults and try "import gi" again.

pkgw added a commit to pkgw/pygobject-feedstock that referenced this issue Jun 14, 2019
This is an attempt to mitigate conda-forge#15, although (1) I'm not sure if this will
actually change things at all and (2) the real underlying issue is that the
conda-forge libiconv apparently has some incompatibility with the one provided
by `defaults`. This *might* help, though, and shouldn't hurt anywhere.
@pkgw
Copy link
Contributor

pkgw commented Jun 14, 2019

@jefftrull Yeah, libiconv gets pulled in, but I think if we explicitly list the dep it might make it more likely that a defaults version of libiconv is upgraded to a conda-forge version upon install of this package. To be honest that's only a guess, but it don't believe it adds any substantial downsides. And it turns out we need to tweak the build scripts to keep the package building, so an update doesn't hurt there.

@Jak-o-Shadows
Copy link

Jak-o-Shadows commented Jan 6, 2021

Is this issue still relevant? I am having the same issue today, on Windows 10 64-bit

conda-info

     active environment : None
       user config file : C:\Users\jak\.condarc
 populated config files : C:\Users\jak\.condarc
          conda version : 4.9.2
    conda-build version : 3.18.11
         python version : 3.8.3.final.0
       virtual packages : __win=0=0
                          __archspec=1=x86_64
       base environment : C:\Users\jak\anaconda3  (writable)
           channel URLs : https://conda.anaconda.org/conda-forge/win-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://repo.anaconda.com/pkgs/main/win-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/win-64
                          https://repo.anaconda.com/pkgs/r/noarch
                          https://repo.anaconda.com/pkgs/msys2/win-64
                          https://repo.anaconda.com/pkgs/msys2/noarch
          package cache : C:\Users\jak\anaconda3\pkgs
                          C:\Users\jak\.conda\pkgs
                          C:\Users\jak\AppData\Local\conda\conda\pkgs
       envs directories : C:\Users\jak\anaconda3\envs
                          C:\Users\jak\.conda\envs
                          C:\Users\jak\AppData\Local\conda\conda\envs
               platform : win-64
             user-agent : conda/4.9.2 requests/2.24.0 CPython/3.8.3 Windows/10 Windows/10.0.18362
          administrator : False
             netrc file : None
           offline mode : False

conda-list

# packages in environment at C:\Users\jak\anaconda3:
#
# Name                    Version                   Build  Channel
_ipyw_jlab_nb_ext_conf    0.1.0                    py38_0
_pytorch_select           0.1                       cpu_0
alabaster                 0.7.12                     py_0
anaconda                  2020.07                  py38_0
anaconda-client           1.7.2                    py38_0
anaconda-navigator        1.9.12                   py38_0
anaconda-project          0.8.4                      py_0
argh                      0.26.2                   py38_0
asn1crypto                1.3.0                    py38_0
astroid                   2.4.2                    py38_0
astropy                   4.0.1.post1      py38he774522_1
atomicwrites              1.4.0                      py_0
attrs                     19.3.0                     py_0
autopep8                  1.5.3                      py_0
babel                     2.8.0                      py_0
backcall                  0.2.0                      py_0
backports                 1.0                        py_2
backports.functools_lru_cache 1.6.1              pyhd3eb1b0_0
backports.shutil_get_terminal_size 1.0.0                    py38_2
backports.tempfile        1.0                        py_1
backports.weakref         1.0.post1                  py_1
bcrypt                    3.1.7            py38he774522_1
beautifulsoup4            4.9.1                    py38_0
bitarray                  1.4.0            py38he774522_0
bkcharts                  0.2                      py38_0
blas                      1.0                         mkl
bleach                    3.1.5                      py_0
blosc                     1.19.0               h7bd577a_0
bokeh                     2.1.1                    py38_0
boto                      2.49.0                   py38_0
bottleneck                1.3.2            py38h2a96729_1
box2d-py                  2.3.8            py38h7ae7562_2    conda-forge
brotlipy                  0.7.0           py38he774522_1000
bzip2                     1.0.8                he774522_0
ca-certificates           2020.6.24                     0
cairo                     1.16.0            h63a05c6_1001    conda-forge
certifi                   2020.6.20                py38_0
cffi                      1.14.0           py38h7a1dbc1_0
chardet                   3.0.4                 py38_1003
click                     7.1.2                      py_0
cloudpickle               1.3.0                    pypi_0    pypi
clyent                    1.2.2                    py38_1
colorama                  0.4.3                      py_0
comtypes                  1.1.7                 py38_1001
conda                     4.9.2            py38haa244fe_0    conda-forge
conda-build               3.18.11                  py38_1
conda-env                 2.6.0                         1
conda-package-handling    1.7.2            py38h76e460a_0
conda-verify              3.4.2                      py_1
console_shortcut          0.1.1                         4
contextlib2               0.6.0.post1                py_0
cryptography              2.9.2            py38h7a1dbc1_0
curl                      7.71.1               h2a8f88b_1
cycler                    0.10.0                   py38_0
cython                    0.29.21          py38ha925a31_0
cytoolz                   0.10.1           py38he774522_0
dask                      2.20.0                     py_0
dask-core                 2.20.0                     py_0
decorator                 4.4.2                      py_0
defusedxml                0.6.0                      py_0
diff-match-patch          20200713                   py_0
distributed               2.20.0                   py38_0
docutils                  0.16                     py38_1
entrypoints               0.3                      py38_0
et_xmlfile                1.0.1                   py_1001
fastcache                 1.1.0            py38he774522_0
filelock                  3.0.12                     py_0
flake8                    3.8.3                      py_0
flask                     1.1.2                      py_0
freetype                  2.10.2               hd328e21_0
fsspec                    0.7.4                      py_0
future                    0.18.2                   py38_1
get_terminal_size         1.0.0                h38e98db_0
gettext                   0.19.8.1          hb01d8f6_1002    conda-forge
gevent                    20.6.2           py38he774522_0
glib                      2.65.0               he4de6d7_0    conda-forge
glob2                     0.7                        py_0
gmpy2                     2.0.8            py38h7edee0f_3
gobject-introspection     1.66.1           py38ha05e681_1    conda-forge
graphviz                  2.38                 hfd603c8_2
greenlet                  0.4.16           py38he774522_0
gym                       0.17.2                   pypi_0    pypi
h5py                      2.10.0           py38h5e291fa_0
hdf5                      1.10.4               h7ebc959_0
heapdict                  1.0.1                      py_0
html5lib                  1.1                        py_0
icc_rt                    2019.0.0             h0cc432a_1
icu                       58.2                 ha925a31_3
idna                      2.10                       py_0
imageio                   2.9.0                      py_0
imagesize                 1.2.0                      py_0
importlib-metadata        1.7.0                    py38_0
importlib_metadata        1.7.0                         0
intel-openmp              2020.1                      216
intervaltree              3.0.2                      py_1
ipykernel                 5.3.2            py38h5ca1d4c_0
ipython                   7.16.1           py38h5ca1d4c_0
ipython_genutils          0.2.0                    py38_0
ipywidgets                7.5.1                      py_0
isort                     4.3.21                   py38_0
itsdangerous              1.1.0                      py_0
jdcal                     1.4.1                      py_0
jedi                      0.17.1                   py38_0
jinja2                    2.11.2                     py_0
joblib                    0.16.0                     py_0
jpeg                      9b                   hb83a4c4_2
json5                     0.9.5                      py_0
jsonschema                3.2.0                    py38_0
jupyter                   1.0.0                    py38_7
jupyter_client            6.1.6                      py_0
jupyter_console           6.1.0                      py_0
jupyter_core              4.6.3                    py38_0
jupyterlab                2.1.5                      py_0
jupyterlab_server         1.2.0                      py_0
keyring                   21.2.1                   py38_0
kiwisolver                1.2.0            py38h74a9793_0
krb5                      1.18.2               hc04afaa_0
lazy-object-proxy         1.4.3            py38he774522_0
libarchive                3.4.2                h5e25573_0
libcurl                   7.71.1               h2a8f88b_1
libffi                    3.2.1             ha925a31_1007    conda-forge
libiconv                  1.15                 h1df5818_7
liblief                   0.10.1               ha925a31_0
libllvm9                  9.0.1                h21ff451_0
libpng                    1.6.37               h2a8f88b_0
libsodium                 1.0.18               h62dcd97_0
libspatialindex           1.9.3                h33f27b4_0
libssh2                   1.9.0                h7a1dbc1_1
libtiff                   4.1.0                h56a325e_1
libxml2                   2.9.10               h464c3ec_1
libxslt                   1.1.34               he774522_0
llvmlite                  0.33.0           py38ha925a31_0
locket                    0.2.0                    py38_1
lxml                      4.5.2            py38h1350720_0
lz4-c                     1.9.2                h62dcd97_0
lzo                       2.10                 he774522_2
m2w64-gcc-libgfortran     5.3.0                         6
m2w64-gcc-libs            5.3.0                         7
m2w64-gcc-libs-core       5.3.0                         7
m2w64-gmp                 6.1.0                         2
m2w64-libwinpthread-git   5.0.0.4634.697f757               2
markupsafe                1.1.1            py38he774522_0
matplotlib                3.2.2                         0
matplotlib-base           3.2.2            py38h64f37c6_0
mccabe                    0.6.1                    py38_1
menuinst                  1.4.16           py38he774522_1
mistune                   0.8.4           py38he774522_1000
mkl                       2020.1                      216
mkl-service               2.3.0            py38hb782905_0
mkl_fft                   1.1.0            py38h45dec08_0
mkl_random                1.1.1            py38h47e9c7a_0
mock                      4.0.2                      py_0
more-itertools            8.4.0                      py_0
mpc                       1.1.0                h7edee0f_1
mpfr                      4.0.2                h62dcd97_1
mpir                      3.0.0                hec2e145_1
mpmath                    1.1.0                    py38_0
msgpack-python            1.0.0            py38h74a9793_1
msys2-conda-epoch         20160418                      1
multipledispatch          0.6.0                    py38_0
mypy                      0.782                      py_0
mypy_extensions           0.4.3                    py38_0
navigator-updater         0.2.1                    py38_0
nbconvert                 5.6.1                    py38_0
nbformat                  5.0.7                      py_0
neat-python               0.92                     pypi_0    pypi
networkx                  2.4                        py_1
ninja                     1.10.2           py38h6d14046_0
nltk                      3.5                        py_0
nose                      1.3.7                    py38_2
notebook                  6.0.3                    py38_0
numba                     0.50.1           py38h47e9c7a_0
numexpr                   2.7.1            py38h25d0782_0
numpy                     1.18.5           py38h6530119_0
numpy-base                1.18.5           py38hc3f5095_0
numpydoc                  1.1.0                      py_0
olefile                   0.46                       py_0
openpyxl                  3.0.4                      py_0
openssl                   1.1.1g               he774522_0    conda-forge
packaging                 20.4                       py_0
pandas                    1.0.5            py38h47e9c7a_0
pandoc                    2.10                          0
pandocfilters             1.4.2                    py38_1
paramiko                  2.7.1                      py_0
parso                     0.7.0                      py_0
partd                     1.1.0                      py_0
path                      13.1.0                   py38_0
path.py                   12.4.0                        0
pathlib2                  2.3.5                    py38_0
pathtools                 0.1.2                      py_1
patsy                     0.5.1                    py38_0
pcre                      8.44                 ha925a31_0    conda-forge
pep8                      1.7.1                    py38_0
pexpect                   4.8.0                    py38_0
pickleshare               0.7.5                 py38_1000
pillow                    7.2.0            py38hcc1f983_0
pip                       20.1.1                   py38_1
pixman                    0.38.0            hfa6e2cd_1003    conda-forge
pkginfo                   1.5.0.1                  py38_0
pluggy                    0.13.1                   py38_0
ply                       3.11                     py38_0
powershell_shortcut       0.0.1                         3
prometheus_client         0.8.0                      py_0
prompt-toolkit            3.0.5                      py_0
prompt_toolkit            3.0.5                         0
psutil                    5.7.0            py38he774522_0
py                        1.9.0                      py_0
py-lief                   0.10.1           py38ha925a31_0
pybullet                  3.0.1                    pypi_0    pypi
pybulletgym               0.1                       dev_0    <develop>
pycairo                   1.20.0           py38h7e31434_1    conda-forge
pycodestyle               2.6.0                      py_0
pycosat                   0.6.3            py38he774522_0
pycparser                 2.20                       py_2
pycurl                    7.43.0.5         py38h7a1dbc1_0
pydocstyle                5.0.2                      py_0
pyflakes                  2.2.0                      py_0
pygame                    2.0.0                    pypi_0    pypi
pyglet                    1.5.0                    pypi_0    pypi
pygments                  2.6.1                      py_0
pygobject                 3.38.0           py38hfda9179_1    conda-forge
pylint                    2.5.3                    py38_0
pynacl                    1.4.0            py38h62dcd97_1
pyodbc                    4.0.30           py38ha925a31_0
pyopenssl                 19.1.0                     py_1
pyparsing                 2.4.7                      py_0
pyqt                      5.9.2            py38ha925a31_4
pyreadline                2.1                      py38_1
pyrsistent                0.16.0           py38he774522_0
pyscribus                 0.2.1                    pypi_0    pypi
pyserial                  3.4                        py_2
pysocks                   1.7.1                    py38_0
pytables                  3.6.1            py38ha5be198_0
pytest                    5.4.3                    py38_0
python                    3.8.3                he1778fa_2
python-dateutil           2.8.1                      py_0
python-graphviz           0.16                     pypi_0    pypi
python-jsonrpc-server     0.3.4                      py_1
python-language-server    0.34.1                   py38_0
python-libarchive-c       2.9                        py_0
python_abi                3.8                      1_cp38    conda-forge
pytorch                   1.4.0           cpu_py38ha775e86_0
pytz                      2020.1                     py_0
pywavelets                1.1.1            py38he774522_0
pywin32                   227              py38he774522_1
pywin32-ctypes            0.2.0                 py38_1000
pywinpty                  0.5.7                    py38_0
pyyaml                    5.3.1            py38he774522_1
pyzmq                     19.0.1           py38ha925a31_1
qdarkstyle                2.8.1                      py_0
qt                        5.9.7            vc14h73c81de_0
qtawesome                 0.7.2                      py_0
qtconsole                 4.7.5                      py_0
qtpy                      1.9.0                      py_0
regex                     2020.6.8         py38he774522_0
requests                  2.24.0                     py_0
rope                      0.17.0                     py_0
rtree                     0.9.4            py38h21ff451_1
ruamel_yaml               0.15.87          py38he774522_1
scikit-image              0.16.2           py38h47e9c7a_0
scikit-learn              0.23.1           py38h25d0782_0
scipy                     1.5.0            py38h9439919_0
seaborn                   0.10.1                     py_0
send2trash                1.5.0                    py38_0
setuptools                49.2.0                   py38_0
simplegeneric             0.8.1                    py38_2
singledispatch            3.4.0.3                  py38_0
sip                       4.19.13          py38ha925a31_0
six                       1.15.0                     py_0
smstools                  0.2.1                    pypi_0    pypi
snappy                    1.1.8                h33f27b4_0
snowballstemmer           2.0.0                      py_0
sortedcollections         1.2.1                      py_0
sortedcontainers          2.2.2                      py_0
soupsieve                 2.0.1                      py_0
sphinx                    3.1.2                      py_0
sphinxcontrib             1.0                      py38_1
sphinxcontrib-applehelp   1.0.2                      py_0
sphinxcontrib-devhelp     1.0.2                      py_0
sphinxcontrib-htmlhelp    1.0.3                      py_0
sphinxcontrib-jsmath      1.0.1                      py_0
sphinxcontrib-qthelp      1.0.3                      py_0
sphinxcontrib-serializinghtml 1.1.4                      py_0
sphinxcontrib-websupport  1.2.3                      py_0
spyder                    4.1.4                    py38_0
spyder-kernels            1.9.2                    py38_0
sqlalchemy                1.3.18           py38he774522_0
sqlite                    3.32.3               h2a8f88b_0
statsmodels               0.11.1           py38he774522_0
svg-path                  4.0.2                    pypi_0    pypi
sympy                     1.6.1                    py38_0
tbb                       2020.0               h74a9793_0
tblib                     1.6.0                      py_0
terminado                 0.8.3                    py38_0
testpath                  0.4.4                      py_0
threadpoolctl             2.1.0              pyh5ca1d4c_0
tk                        8.6.10               he774522_0
toml                      0.10.1                     py_0
toolz                     0.10.0                     py_0
tornado                   6.0.4            py38he774522_1
tqdm                      4.47.0                     py_0
traitlets                 4.3.3                    py38_0
typed-ast                 1.4.1            py38he774522_0
typing_extensions         3.7.4.2                    py_0
ujson                     1.35             py38he774522_0
unicodecsv                0.14.1                   py38_0
unidecode                 1.1.1                    pypi_0    pypi
urllib3                   1.25.9                     py_0
vadersentiment            3.3.2                    pypi_0    pypi
vc                        14.1                 h0510ff6_4
vs2015_runtime            14.16.27012          hf0eaf9b_3
watchdog                  0.10.3                   py38_0
wcwidth                   0.2.5                      py_0
webencodings              0.5.1                    py38_1
werkzeug                  1.0.1                      py_0
wheel                     0.34.2                   py38_0
widgetsnbextension        3.5.1                    py38_0
win_inet_pton             1.1.0                    py38_0
win_unicode_console       0.5                      py38_0
wincertstore              0.2                      py38_0
winpty                    0.4.3                         4
wrapt                     1.11.2           py38he774522_0
wxpython                  4.1.1                    pypi_0    pypi
xlrd                      1.2.0                      py_0
xlsxwriter                1.2.9                      py_0
xlwings                   0.19.5                   py38_0
xlwt                      1.3.0                    py38_0
xmltodict                 0.12.0                     py_0
xz                        5.2.5                h62dcd97_0
yaml                      0.2.5                he774522_0
yapf                      0.30.0                     py_0
zeromq                    4.3.2                ha925a31_2
zict                      2.0.0                      py_0
zipp                      3.1.0                      py_0
zlib                      1.2.11               h62dcd97_4
zope                      1.0                      py38_1
zope.event                4.4                      py38_0
zope.interface            4.7.1            py38he774522_0
zstd                      1.4.5                ha9fde0e_0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants