Building yt on Hopper
Hi Folks, I'm trying to install the development version of yt-2.7 on NERSC's Hopper machine using the install script. I get to the part where it tries to build IPython, and then the script fails with the following error message: ============================================================================ BUILDING IPYTHON python: 2.7.6 (default, Jan 31 2014, 21:52:04) [GCC 4.8.1 20130531 (Cray Inc.)] platform: linux2 OPTIONAL DEPENDENCIES sphinx: Not found (required for docs and nbconvert) pygments: Not found (required for docs and nbconvert) nose: 1.3.0 pexpect: no (required for running standalone doctests) Traceback (most recent call last): File "setup.py", line 342, in <module> check_for_dependencies() File "/global/u2/a/atmyers/yt-x86_64/src/ipython-1.1.0/setupbase.py", line 376, in check_for_dependencies check_for_pyzmq() File "/global/u2/a/atmyers/yt-x86_64/src/ipython-1.1.0/setupext/setupext.py", line 118, in check_for_pyzmq import zmq File "/global/homes/a/atmyers/yt-x86_64/lib/python2.7/site-packages/zmq/__init__.py", line 35, in <module> _libzmq = ctypes.CDLL(bundled[0], mode=ctypes.RTLD_GLOBAL) File "/global/homes/a/atmyers/yt-x86_64/lib/python2.7/ctypes/__init__.py", line 365, in __init__ self._handle = _dlopen(self._name, mode) OSError: /global/homes/a/atmyers/yt-x86_64/lib/python2.7/site-packages/zmq/libzmq.so: undefined symbol: clock_gettime Both ZeroMQ and pyzmq appear to have been installed without errors, but then ZeroMQ can't find some of the definitions it needs. Googling around, it looks like clock_gettime is supposed to be found in librt. Has anyone seen this before? Or, relatedly, has anyone been able to build yt on the NERSC machines? I know that ZeroMQ isn't strictly necessary, but I'd like to be able to use the notebooks. My complete yt_install.log is herehttps://www.dropbox.com/s/pmdq3a9vfrbtwj9/yt_install.log . Thanks, Andrew
Hi Andrew,
Unfortunately I'm not sure what the issue is.
You might try asking this question on StackOverflow (tagging it with
IPython and ZMQ) or the IPython-dev mailing list, some of the ZMQ/IPy devs
will be more likely to see it.
Nathan
On Saturday, February 1, 2014, Andrew Myers
Hi Folks,
I'm trying to install the development version of yt-2.7 on NERSC's Hopper machine using the install script. I get to the part where it tries to build IPython, and then the script fails with the following error message:
============================================================================ BUILDING IPYTHON python: 2.7.6 (default, Jan 31 2014, 21:52:04) [GCC 4.8.1 20130531 (Cray Inc.)] platform: linux2
OPTIONAL DEPENDENCIES sphinx: Not found (required for docs and nbconvert) pygments: Not found (required for docs and nbconvert) nose: 1.3.0 pexpect: no (required for running standalone doctests) Traceback (most recent call last): File "setup.py", line 342, in <module> check_for_dependencies() File "/global/u2/a/atmyers/yt-x86_64/src/ipython-1.1.0/setupbase.py", line 376, in check_for_dependencies check_for_pyzmq() File "/global/u2/a/atmyers/yt-x86_64/src/ipython-1.1.0/setupext/setupext.py", line 118, in check_for_pyzmq import zmq File "/global/homes/a/atmyers/yt-x86_64/lib/python2.7/site-packages/zmq/__init__.py", line 35, in <module> _libzmq = ctypes.CDLL(bundled[0], mode=ctypes.RTLD_GLOBAL) File "/global/homes/a/atmyers/yt-x86_64/lib/python2.7/ctypes/__init__.py", line 365, in __init__ self._handle = _dlopen(self._name, mode) OSError: /global/homes/a/atmyers/yt-x86_64/lib/python2.7/site-packages/zmq/libzmq.so: undefined symbol: clock_gettime
Both ZeroMQ and pyzmq appear to have been installed without errors, but then ZeroMQ can't find some of the definitions it needs. Googling around, it looks like clock_gettime is supposed to be found in librt.
Has anyone seen this before? Or, relatedly, has anyone been able to build yt on the NERSC machines? I know that ZeroMQ isn't strictly necessary, but I'd like to be able to use the notebooks.
My complete yt_install.log is herehttps://www.dropbox.com/s/pmdq3a9vfrbtwj9/yt_install.log .
Thanks, Andrew
I saw the same problem when I was installing on CU's janus machine. I'm
pretty sure that I got around it by building just ipython by hand and
making sure I was on the compile node when I tried it- no idea if there is
an equivalent for Hopper.
-download and untar ipython.tar.gz (http://archive.ipython.org/release/)
-cd ipython
-python setup.py install
-touch done
Caveat: I have no idea why this worked when the install script didn't, and
I'm just basing my answer on the note I jotted down a few months ago.
There's definitely some sort of discussion out there already about this
being a problem in some versions in pyzmq (
https://github.com/zeromq/pyzmq/pull/218). Hope that helps!
-Hilary
On Sat, Feb 1, 2014 at 10:49 AM, Nathan Goldbaum
Hi Andrew,
Unfortunately I'm not sure what the issue is.
You might try asking this question on StackOverflow (tagging it with IPython and ZMQ) or the IPython-dev mailing list, some of the ZMQ/IPy devs will be more likely to see it.
Nathan
On Saturday, February 1, 2014, Andrew Myers
wrote: Hi Folks,
I'm trying to install the development version of yt-2.7 on NERSC's Hopper machine using the install script. I get to the part where it tries to build IPython, and then the script fails with the following error message:
============================================================================ BUILDING IPYTHON python: 2.7.6 (default, Jan 31 2014, 21:52:04) [GCC 4.8.1 20130531 (Cray Inc.)] platform: linux2
OPTIONAL DEPENDENCIES sphinx: Not found (required for docs and nbconvert) pygments: Not found (required for docs and nbconvert) nose: 1.3.0 pexpect: no (required for running standalone doctests) Traceback (most recent call last): File "setup.py", line 342, in <module> check_for_dependencies() File "/global/u2/a/atmyers/yt-x86_64/src/ipython-1.1.0/setupbase.py", line 376, in check_for_dependencies check_for_pyzmq() File "/global/u2/a/atmyers/yt-x86_64/src/ipython-1.1.0/setupext/setupext.py", line 118, in check_for_pyzmq import zmq File "/global/homes/a/atmyers/yt-x86_64/lib/python2.7/site-packages/zmq/__init__.py", line 35, in <module> _libzmq = ctypes.CDLL(bundled[0], mode=ctypes.RTLD_GLOBAL) File "/global/homes/a/atmyers/yt-x86_64/lib/python2.7/ctypes/__init__.py", line 365, in __init__ self._handle = _dlopen(self._name, mode) OSError: /global/homes/a/atmyers/yt-x86_64/lib/python2.7/site-packages/zmq/libzmq.so: undefined symbol: clock_gettime
Both ZeroMQ and pyzmq appear to have been installed without errors, but then ZeroMQ can't find some of the definitions it needs. Googling around, it looks like clock_gettime is supposed to be found in librt.
Has anyone seen this before? Or, relatedly, has anyone been able to build yt on the NERSC machines? I know that ZeroMQ isn't strictly necessary, but I'd like to be able to use the notebooks.
My complete yt_install.log is herehttps://www.dropbox.com/s/pmdq3a9vfrbtwj9/yt_install.log .
Thanks, Andrew
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
Hi Hilary,
Thanks for the suggestion. Unfortunately, it didn't work for me - if I
install ipython manually, it still fails with the same error message.
I think I'll try to ask this at StackOverflow as well, as per Nathan's
suggestion.
Thanks,
Andrew
On Sat, Feb 1, 2014 at 10:09 AM, Hilary Egan
I saw the same problem when I was installing on CU's janus machine. I'm pretty sure that I got around it by building just ipython by hand and making sure I was on the compile node when I tried it- no idea if there is an equivalent for Hopper.
-download and untar ipython.tar.gz (http://archive.ipython.org/release/) -cd ipython -python setup.py install -touch done
Caveat: I have no idea why this worked when the install script didn't, and I'm just basing my answer on the note I jotted down a few months ago. There's definitely some sort of discussion out there already about this being a problem in some versions in pyzmq ( https://github.com/zeromq/pyzmq/pull/218). Hope that helps!
-Hilary
On Sat, Feb 1, 2014 at 10:49 AM, Nathan Goldbaum
wrote: Hi Andrew,
Unfortunately I'm not sure what the issue is.
You might try asking this question on StackOverflow (tagging it with IPython and ZMQ) or the IPython-dev mailing list, some of the ZMQ/IPy devs will be more likely to see it.
Nathan
On Saturday, February 1, 2014, Andrew Myers
wrote: Hi Folks,
I'm trying to install the development version of yt-2.7 on NERSC's Hopper machine using the install script. I get to the part where it tries to build IPython, and then the script fails with the following error message:
============================================================================ BUILDING IPYTHON python: 2.7.6 (default, Jan 31 2014, 21:52:04) [GCC 4.8.1 20130531 (Cray Inc.)] platform: linux2
OPTIONAL DEPENDENCIES sphinx: Not found (required for docs and nbconvert) pygments: Not found (required for docs and nbconvert) nose: 1.3.0 pexpect: no (required for running standalone doctests) Traceback (most recent call last): File "setup.py", line 342, in <module> check_for_dependencies() File "/global/u2/a/atmyers/yt-x86_64/src/ipython-1.1.0/setupbase.py", line 376, in check_for_dependencies check_for_pyzmq() File "/global/u2/a/atmyers/yt-x86_64/src/ipython-1.1.0/setupext/setupext.py", line 118, in check_for_pyzmq import zmq File "/global/homes/a/atmyers/yt-x86_64/lib/python2.7/site-packages/zmq/__init__.py", line 35, in <module> _libzmq = ctypes.CDLL(bundled[0], mode=ctypes.RTLD_GLOBAL) File "/global/homes/a/atmyers/yt-x86_64/lib/python2.7/ctypes/__init__.py", line 365, in __init__ self._handle = _dlopen(self._name, mode) OSError: /global/homes/a/atmyers/yt-x86_64/lib/python2.7/site-packages/zmq/libzmq.so: undefined symbol: clock_gettime
Both ZeroMQ and pyzmq appear to have been installed without errors, but then ZeroMQ can't find some of the definitions it needs. Googling around, it looks like clock_gettime is supposed to be found in librt.
Has anyone seen this before? Or, relatedly, has anyone been able to build yt on the NERSC machines? I know that ZeroMQ isn't strictly necessary, but I'd like to be able to use the notebooks.
My complete yt_install.log is herehttps://www.dropbox.com/s/pmdq3a9vfrbtwj9/yt_install.log .
Thanks, Andrew
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
has anyone asked NERSC whether they'd be willing to install it sitewide as
a loadable module on hopper? I'm sure there are lots of us who would want
to use yt there.
On Sat, Feb 1, 2014 at 6:16 PM, Andrew Myers
Hi Hilary,
Thanks for the suggestion. Unfortunately, it didn't work for me - if I install ipython manually, it still fails with the same error message.
I think I'll try to ask this at StackOverflow as well, as per Nathan's suggestion.
Thanks, Andrew
On Sat, Feb 1, 2014 at 10:09 AM, Hilary Egan
wrote: I saw the same problem when I was installing on CU's janus machine. I'm pretty sure that I got around it by building just ipython by hand and making sure I was on the compile node when I tried it- no idea if there is an equivalent for Hopper.
-download and untar ipython.tar.gz (http://archive.ipython.org/release/) -cd ipython -python setup.py install -touch done
Caveat: I have no idea why this worked when the install script didn't, and I'm just basing my answer on the note I jotted down a few months ago. There's definitely some sort of discussion out there already about this being a problem in some versions in pyzmq ( https://github.com/zeromq/pyzmq/pull/218). Hope that helps!
-Hilary
On Sat, Feb 1, 2014 at 10:49 AM, Nathan Goldbaum
wrote: Hi Andrew,
Unfortunately I'm not sure what the issue is.
You might try asking this question on StackOverflow (tagging it with IPython and ZMQ) or the IPython-dev mailing list, some of the ZMQ/IPy devs will be more likely to see it.
Nathan
On Saturday, February 1, 2014, Andrew Myers
wrote: Hi Folks,
I'm trying to install the development version of yt-2.7 on NERSC's Hopper machine using the install script. I get to the part where it tries to build IPython, and then the script fails with the following error message:
============================================================================ BUILDING IPYTHON python: 2.7.6 (default, Jan 31 2014, 21:52:04) [GCC 4.8.1 20130531 (Cray Inc.)] platform: linux2
OPTIONAL DEPENDENCIES sphinx: Not found (required for docs and nbconvert) pygments: Not found (required for docs and nbconvert) nose: 1.3.0 pexpect: no (required for running standalone doctests) Traceback (most recent call last): File "setup.py", line 342, in <module> check_for_dependencies() File "/global/u2/a/atmyers/yt-x86_64/src/ipython-1.1.0/setupbase.py", line 376, in check_for_dependencies check_for_pyzmq() File "/global/u2/a/atmyers/yt-x86_64/src/ipython-1.1.0/setupext/setupext.py", line 118, in check_for_pyzmq import zmq File "/global/homes/a/atmyers/yt-x86_64/lib/python2.7/site-packages/zmq/__init__.py", line 35, in <module> _libzmq = ctypes.CDLL(bundled[0], mode=ctypes.RTLD_GLOBAL) File "/global/homes/a/atmyers/yt-x86_64/lib/python2.7/ctypes/__init__.py", line 365, in __init__ self._handle = _dlopen(self._name, mode) OSError: /global/homes/a/atmyers/yt-x86_64/lib/python2.7/site-packages/zmq/libzmq.so: undefined symbol: clock_gettime
Both ZeroMQ and pyzmq appear to have been installed without errors, but then ZeroMQ can't find some of the definitions it needs. Googling around, it looks like clock_gettime is supposed to be found in librt.
Has anyone seen this before? Or, relatedly, has anyone been able to build yt on the NERSC machines? I know that ZeroMQ isn't strictly necessary, but I'd like to be able to use the notebooks.
My complete yt_install.log is herehttps://www.dropbox.com/s/pmdq3a9vfrbtwj9/yt_install.log .
Thanks, Andrew
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
-- Michael Zingale Associate Professor Dept. of Physics & Astronomy * Stony Brook University * Stony Brook, NY 11794-3800 *phone*: 631-632-8225 *e-mail*: Michael.Zingale@stonybrook.edu *web*: http://www.astro.sunysb.edu/mzingale
I think I found the problem. The install script first builds the ZeroMQ
library, and then tries to build PyZMQ bindings for it. The problem was
that the script was not passing in the location of the newly-built ZeroMQ
when it ran setup.py for PyZMQ. Instead, PyZMQ tries to use a bundled zmq,
which doesn't work correctly. The fix was to manually re-build PyZMQ,
passing in the location of the new libraries. The install script picked up
from there normally.
Why didn't the script work? Looking at the function that calls setup for
each package:
function do_setup_py{ [ -e $1/done ] && return LIB=$1 shift
if [ -z "$@" ] then echo "Installing $LIB" else
echo "Installing $LIB (arguments: '$@')" fi [ ! -e
$LIB/extracted ] && tar xfz $LIB.tar.gz touch $LIB/extracted cd
$LIB if [ ! -z `echo $LIB | grep h5py` ] then shift (
${DEST_DIR}/bin/python2.7 setup.py build --hdf5=${HDF5_DIR} $* 2>&1 )
1>> ${LOG_FILE} || do_exit else shift (
${DEST_DIR}/bin/python2.7 setup.py build $* 2>&1 ) 1>> ${LOG_FILE}
|| do_exit fi ( ${DEST_DIR}/bin/python2.7 setup.py install
2>&1 ) 1>> ${LOG_FILE} || do_exit touch done cd ..}
When this function is called, the name of the script is at $0, the library
name is at $1, and the rest of the variables hold arguments that should be
passed to setup.py. After the first call to shift, the additional args
start at $1. The script then calls shift once more, whichever way it
branches, so that the first additional argument is no longer contained in
$*. So, this function loses the first arg. For PyZMQ, the first arg is the
location of the zmq library. If I remove the second and third shifts and
re-run the install script from the beginning, everything works for me.
-Andrew
On Sat, Feb 1, 2014 at 3:16 PM, Andrew Myers
Hi Hilary,
Thanks for the suggestion. Unfortunately, it didn't work for me - if I install ipython manually, it still fails with the same error message.
I think I'll try to ask this at StackOverflow as well, as per Nathan's suggestion.
Thanks, Andrew
On Sat, Feb 1, 2014 at 10:09 AM, Hilary Egan
wrote: I saw the same problem when I was installing on CU's janus machine. I'm pretty sure that I got around it by building just ipython by hand and making sure I was on the compile node when I tried it- no idea if there is an equivalent for Hopper.
-download and untar ipython.tar.gz (http://archive.ipython.org/release/) -cd ipython -python setup.py install -touch done
Caveat: I have no idea why this worked when the install script didn't, and I'm just basing my answer on the note I jotted down a few months ago. There's definitely some sort of discussion out there already about this being a problem in some versions in pyzmq ( https://github.com/zeromq/pyzmq/pull/218). Hope that helps!
-Hilary
On Sat, Feb 1, 2014 at 10:49 AM, Nathan Goldbaum
wrote: Hi Andrew,
Unfortunately I'm not sure what the issue is.
You might try asking this question on StackOverflow (tagging it with IPython and ZMQ) or the IPython-dev mailing list, some of the ZMQ/IPy devs will be more likely to see it.
Nathan
On Saturday, February 1, 2014, Andrew Myers
wrote: Hi Folks,
I'm trying to install the development version of yt-2.7 on NERSC's Hopper machine using the install script. I get to the part where it tries to build IPython, and then the script fails with the following error message:
============================================================================ BUILDING IPYTHON python: 2.7.6 (default, Jan 31 2014, 21:52:04) [GCC 4.8.1 20130531 (Cray Inc.)] platform: linux2
OPTIONAL DEPENDENCIES sphinx: Not found (required for docs and nbconvert) pygments: Not found (required for docs and nbconvert) nose: 1.3.0 pexpect: no (required for running standalone doctests) Traceback (most recent call last): File "setup.py", line 342, in <module> check_for_dependencies() File "/global/u2/a/atmyers/yt-x86_64/src/ipython-1.1.0/setupbase.py", line 376, in check_for_dependencies check_for_pyzmq() File "/global/u2/a/atmyers/yt-x86_64/src/ipython-1.1.0/setupext/setupext.py", line 118, in check_for_pyzmq import zmq File "/global/homes/a/atmyers/yt-x86_64/lib/python2.7/site-packages/zmq/__init__.py", line 35, in <module> _libzmq = ctypes.CDLL(bundled[0], mode=ctypes.RTLD_GLOBAL) File "/global/homes/a/atmyers/yt-x86_64/lib/python2.7/ctypes/__init__.py", line 365, in __init__ self._handle = _dlopen(self._name, mode) OSError: /global/homes/a/atmyers/yt-x86_64/lib/python2.7/site-packages/zmq/libzmq.so: undefined symbol: clock_gettime
Both ZeroMQ and pyzmq appear to have been installed without errors, but then ZeroMQ can't find some of the definitions it needs. Googling around, it looks like clock_gettime is supposed to be found in librt.
Has anyone seen this before? Or, relatedly, has anyone been able to build yt on the NERSC machines? I know that ZeroMQ isn't strictly necessary, but I'd like to be able to use the notebooks.
My complete yt_install.log is herehttps://www.dropbox.com/s/pmdq3a9vfrbtwj9/yt_install.log .
Thanks, Andrew
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
Wow, good catch Andrew!
Can you open a pull request for this? I think we were planning on doing a
2.6.2 release due to an issue with our source distribution that was
recently fixed - it would be good if this fix was part of that.
On Sunday, February 2, 2014, Andrew Myers
I think I found the problem. The install script first builds the ZeroMQ library, and then tries to build PyZMQ bindings for it. The problem was that the script was not passing in the location of the newly-built ZeroMQ when it ran setup.py for PyZMQ. Instead, PyZMQ tries to use a bundled zmq, which doesn't work correctly. The fix was to manually re-build PyZMQ, passing in the location of the new libraries. The install script picked up from there normally.
Why didn't the script work? Looking at the function that calls setup for each package:
function do_setup_py{ [ -e $1/done ] && return LIB=$1 shift if [ -z "$@" ] then echo "Installing $LIB" else echo "Installing $LIB (arguments: '$@')" fi [ ! -e $LIB/extracted ] && tar xfz $LIB.tar.gz touch $LIB/extracted cd $LIB if [ ! -z `echo $LIB | grep h5py` ] then shift ( ${DEST_DIR}/bin/python2.7 setup.py build --hdf5=${HDF5_DIR} $* 2>&1 ) 1>> ${LOG_FILE} || do_exit else shift ( ${DEST_DIR}/bin/python2.7 setup.py build $* 2>&1 ) 1>> ${LOG_FILE} || do_exit fi ( ${DEST_DIR}/bin/python2.7 setup.py install 2>&1 ) 1>> ${LOG_FILE} || do_exit touch done cd ..}
When this function is called, the name of the script is at $0, the library name is at $1, and the rest of the variables hold arguments that should be passed to setup.py. After the first call to shift, the additional args start at $1. The script then calls shift once more, whichever way it branches, so that the first additional argument is no longer contained in $*. So, this function loses the first arg. For PyZMQ, the first arg is the location of the zmq library. If I remove the second and third shifts and re-run the install script from the beginning, everything works for me.
-Andrew
On Sat, Feb 1, 2014 at 3:16 PM, Andrew Myers
wrote: Hi Hilary,
Thanks for the suggestion. Unfortunately, it didn't work for me - if I install ipython manually, it still fails with the same error message.
I think I'll try to ask this at StackOverflow as well, as per Nathan's suggestion.
Thanks, Andrew
On Sat, Feb 1, 2014 at 10:09 AM, Hilary Egan
wrote: I saw the same problem when I was installing on CU's janus machine. I'm pretty sure that I got around it by building just ipython by hand and making sure I was on the compile node when I tried it- no idea if there is an equivalent for Hopper.
-download and untar ipython.tar.gz (http://archive.ipython.org/release/) -cd ipython -python setup.py install -touch done
Caveat: I have no idea why this worked when the install script didn't, and I'm just basing my answer on the note I jotted down a few months ago. There's definitely some sort of discussion out there already about this being a problem in some versions in pyzmq ( https://github.com/zeromq/pyzmq/pull/218). Hope that helps!
-Hilary
On Sat, Feb 1, 2014 at 10:49 AM, Nathan Goldbaum
wrote: Hi Andrew,
Unfortunately I'm not sure what the issue is.
You might try asking this question on StackOverflow (tagging it with IPython and ZMQ) or the IPython-dev mailing list, some of the ZMQ/IPy devs will be more likely to see it.
Nathan
On Saturday, February 1, 2014, Andrew Myers
wrote: Hi Folks,
I'm trying to install the development version of yt-2.7 on NERSC's Hopper machine using the install script. I get to the part where it tries to build IPython, and then the script fails with the following error message:
============================================================================ BUILDING IPYTHON python: 2.7.6 (default, Jan 31 2014, 21:52:04) [GCC 4.8.1 20130531 (Cray Inc.)] platform: linux2
OPTIONAL DEPENDENCIES sphinx: Not found (required for docs and nbconvert) pygments: Not found (required for docs and nbconvert) nose: 1.3.0 pexpect: no (required for running standalone doctests) Traceback (most recent call last): File "setup.py", line 342, in <module>
Hi Nathan,
Done.
On Michael's point about having a yt module at NERSC, I personally think
that would be a great thing to have. I can ask the NERSC people about doing
this - I can always go bother them in person, after all.
-Andrew
On Sun, Feb 2, 2014 at 11:19 AM, Nathan Goldbaum
Wow, good catch Andrew!
Can you open a pull request for this? I think we were planning on doing a 2.6.2 release due to an issue with our source distribution that was recently fixed - it would be good if this fix was part of that.
On Sunday, February 2, 2014, Andrew Myers
wrote: I think I found the problem. The install script first builds the ZeroMQ library, and then tries to build PyZMQ bindings for it. The problem was that the script was not passing in the location of the newly-built ZeroMQ when it ran setup.py for PyZMQ. Instead, PyZMQ tries to use a bundled zmq, which doesn't work correctly. The fix was to manually re-build PyZMQ, passing in the location of the new libraries. The install script picked up from there normally.
Why didn't the script work? Looking at the function that calls setup for each package:
function do_setup_py{ [ -e $1/done ] && return LIB=$1 shift if [ -z "$@" ] then echo "Installing $LIB" else echo "Installing $LIB (arguments: '$@')" fi [ ! -e $LIB/extracted ] && tar xfz $LIB.tar.gz touch $LIB/extracted cd $LIB if [ ! -z `echo $LIB | grep h5py` ] then shift ( ${DEST_DIR}/bin/python2.7 setup.py build --hdf5=${HDF5_DIR} $* 2>&1 ) 1>> ${LOG_FILE} || do_exit else shift ( ${DEST_DIR}/bin/python2.7 setup.py build $* 2>&1 ) 1>> ${LOG_FILE} || do_exit fi ( ${DEST_DIR}/bin/python2.7 setup.py install 2>&1 ) 1>> ${LOG_FILE} || do_exit touch done cd ..}
When this function is called, the name of the script is at $0, the library name is at $1, and the rest of the variables hold arguments that should be passed to setup.py. After the first call to shift, the additional args start at $1. The script then calls shift once more, whichever way it branches, so that the first additional argument is no longer contained in $*. So, this function loses the first arg. For PyZMQ, the first arg is the location of the zmq library. If I remove the second and third shifts and re-run the install script from the beginning, everything works for me.
-Andrew
On Sat, Feb 1, 2014 at 3:16 PM, Andrew Myers
wrote: Hi Hilary,
Thanks for the suggestion. Unfortunately, it didn't work for me - if I install ipython manually, it still fails with the same error message.
I think I'll try to ask this at StackOverflow as well, as per Nathan's suggestion.
Thanks, Andrew
On Sat, Feb 1, 2014 at 10:09 AM, Hilary Egan
wrote: I saw the same problem when I was installing on CU's janus machine. I'm pretty sure that I got around it by building just ipython by hand and making sure I was on the compile node when I tried it- no idea if there is an equivalent for Hopper.
-download and untar ipython.tar.gz (http://archive.ipython.org/release/) -cd ipython -python setup.py install -touch done
Caveat: I have no idea why this worked when the install script didn't, and I'm just basing my answer on the note I jotted down a few months ago. There's definitely some sort of discussion out there already about this being a problem in some versions in pyzmq ( https://github.com/zeromq/pyzmq/pull/218). Hope that helps!
-Hilary
On Sat, Feb 1, 2014 at 10:49 AM, Nathan Goldbaum
wrote: Hi Andrew,
Unfortunately I'm not sure what the issue is.
You might try asking this question on StackOverflow (tagging it with IPython and ZMQ) or the IPython-dev mailing list, some of the ZMQ/IPy devs will be more likely to see it.
Nathan
On Saturday, February 1, 2014, Andrew Myers
wrote: Hi Folks,
I'm trying to install the development version of yt-2.7 on NERSC's Hopper machine using the install script. I get to the part where it tries to build IPython, and then the script fails with the following error message:
============================================================================ BUILDING IPYTHON python: 2.7.6 (default, Jan 31 2014, 21:52:04) [GCC 4.8.1 20130531 (Cray Inc.)] platform: linux2
OPTIONAL DEPENDENCIES sphinx: Not found (required for docs and nbconvert) pygments: Not found (required for docs and nbconvert) nose: 1.3.0 pexpect: no (required for running standalone doctests) Traceback (most recent call last): File "setup.py", line 342, in <module>
_______________________________________________ yt-users mailing list yt-users@lists.spacepope.org http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org
participants (4)
-
Andrew Myers
-
Hilary Egan
-
Michael Zingale
-
Nathan Goldbaum