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

Cannot load on 64bit Windows XP due to "missing procedure" #579

Closed
patricktokeeffe opened this issue Aug 23, 2014 · 7 comments
Closed

Cannot load on 64bit Windows XP due to "missing procedure" #579

patricktokeeffe opened this issue Aug 23, 2014 · 7 comments

Comments

@patricktokeeffe
Copy link

I use WinPython and with the latest 64bit release, 2.7.6.4 (python 2.7.6 amd64), an unhandled WindowsError prevents applications like Spyder and IPython QtConsole from loading. The previous major version winpython-64bit-2.7.5.3 (python 2.7.5 amd64) does not have this issue.

I had originally filed this with IPython because it occurs during the IPython load sequence. More specifically, though, it occurs when IPython tries to import zmq. I do see that ctypes is entered prior to the error occuring so I don't expect this to be solved solely within zmq.

A screenshot of the QtConsole error is attached. The following console output was obtained by adding "pause" to the end of /scripts/spyder.bat and /scripts/spyder_light.bat:

Traceback (most recent call last):
  File "spyder", line 3, in <module>
    start_app.main()
  File "C:\WinPython-64bit-2.7.6.4\python-2.7.6.amd64\lib\site-packages\spyderlib\start_app.py", line 72, in main
    from spyderlib import spyder
  File "C:\WinPython-64bit-2.7.6.4\python-2.7.6.amd64\lib\site-packages\spyderlib\spyder.py", line 118, in <module>
    from spyderlib.plugins.ipythonconsole import IPythonConsole
  File "C:\WinPython-64bit-2.7.6.4\python-2.7.6.amd64\lib\site-packages\spyderlib\plugins\ipythonconsole.py", line 31, in <module>
    from IPython.lib.kernel import find_connection_file, get_connection_info
  File "C:\WinPython-64bit-2.7.6.4\python-2.7.6.amd64\lib\site-packages\IPython\lib\kernel.py", line 11, in <module>
    from IPython.kernel.connect import *
  File "C:\WinPython-64bit-2.7.6.4\python-2.7.6.amd64\lib\site-packages\IPython\kernel\__init__.py", line 4, in <module>
    from . import zmq
  File "C:\WinPython-64bit-2.7.6.4\python-2.7.6.amd64\lib\site-packages\IPython\kernel\zmq\__init__.py", line 14, in <module>
    check_for_zmq('2.1.11', 'IPython.kernel.zmq')
  File "C:\WinPython-64bit-2.7.6.4\python-2.7.6.amd64\lib\site-packages\IPython\utils\zmqrelated.py", line 35, in check_for_zmq
    import zmq
  File "C:\WinPython-64bit-2.7.6.4\python-2.7.6.amd64\lib\site-packages\zmq\__init__.py", line 33, in <module>
    _libzmq = ctypes.cdll.LoadLibrary(bundled[0])
  File "C:\WinPython-64bit-2.7.6.4\python-2.7.6.amd64\lib\ctypes\__init__.py", line 443, in LoadLibrary
    return self._dlltype(name)
  File "C:\WinPython-64bit-2.7.6.4\python-2.7.6.amd64\lib\ctypes\__init__.py", line 365, in __init__
    self._handle = _dlopen(self._name, mode)
WindowsError: [Error 127] The specified procedure could not be found

spyder error

@minrk
Copy link
Member

minrk commented Aug 23, 2014

Hi again, thanks for moving :)

How did you install pyzmq, and what version of pyzmq do you have? Do you get the same error with python -c 'import zmq'?

@patricktokeeffe
Copy link
Author

Hi @minrk, I encountered this as part of a package: WinPython. It's one of those no-install distros which bundles Python with a bunch of goodies.

I'll have to check back on Monday regarding both questions (don't have a 64bit at home).

@patricktokeeffe
Copy link
Author

OK, the WinPython Control Panel (one of the bundled apps) indicates I have pyzmq 14.0.1 and here is what the x64 machine says about python -c "import zmq":

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "C:\WinPython-64bit-2.7.6.4\python-2.7.6.amd64\lib\site-packages\zmq\__init__.py", line 33, in <module>
    _libzmq = ctypes.cdll.LoadLibrary(bundled[0])
  File "C:\WinPython-64bit-2.7.6.4\python-2.7.6.amd64\lib\ctypes\__init__.py", line 443, in LoadLibrary
    return self._dlltype(name)
  File "C:\WinPython-64bit-2.7.6.4\python-2.7.6.amd64\lib\ctypes\__init__.py", line 365, in __init__
    self._handle = _dlopen(self._name, mode)
WindowsError: [Error 127] The specified procedure could not be found

I see there is 14.3.1 out so I grabbed pyzmq‑14.3.1.win‑amd64‑py2.7.exe from Christoph Gohlke and installed it using the WinPython Control Panel. No real change in response to python -c "import zmq":

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "C:\WinPython-64bit-2.7.6.4\python-2.7.6.amd64\lib\site-packages\zmq\__init__.py", line 30, in <module>
    _libzmq = ctypes.cdll.LoadLibrary(bundled[0])
  File "C:\WinPython-64bit-2.7.6.4\python-2.7.6.amd64\lib\ctypes\__init__.py", line 443, in LoadLibrary
    return self._dlltype(name)
  File "C:\WinPython-64bit-2.7.6.4\python-2.7.6.amd64\lib\ctypes\__init__.py", line 365, in __init__
    self._handle = _dlopen(self._name, mode)
WindowsError: [Error 127] The specified procedure could not be found

For whatever reason, ctypes can't load libzmq.pyd. I thought about upgrading ctypes but (and this is odd) the included version is ahead of the "current release":

C:\WinPython-64bit-2.7.6.4\python-2.7.6.amd64>python -c "import ctypes; print ctypes.__version__"
1.1.0

Per the ctypes home page:

Recent releases can be downloaded in the sourceforge files section. The current version is 1.0.1.

@Kentzo
Copy link
Contributor

Kentzo commented Sep 10, 2014

We use pyzmq 14.3.0 installed via pip wheel on windows 7 and 8 (both x32 and x64) in pyqt app without any problems.

@patricktokeeffe
Copy link
Author

Then it's probably safe to say this is isolated to WinXP x64. No surprise since x64 XP is the neglected bastard child of the windows family.

EDIT: Issue title edited to reflect this.

@patricktokeeffe patricktokeeffe changed the title Cannot load on 64bit Windows due to "missing procedure" Cannot load on 64bit Windows XP due to "missing procedure" Sep 10, 2014
@cgohlke
Copy link
Contributor

cgohlke commented Jan 21, 2015

See #521 (comment)

@minrk
Copy link
Member

minrk commented Jan 21, 2015

@cgohlke thanks

@minrk minrk closed this as completed Jan 21, 2015
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

4 participants