Cannot compile on classic cedar stack
bizso09 opened this issue · comments
installing with
numpy==1.8.1
scipy==0.14.0
remote: building 'numpy.random.mtrand' extension remote: compiling C sources remote: C compiler: gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC remote: remote: compile options: '-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE=1 -D_LARGEFILE64_SOURCE=1 -Inumpy/core/include -Ibuild/src.linux- rc/private -Inumpy/core/src -Inumpy/core -Inumpy/core/src/npymath -Inumpy/core/src/multiarray -Inumpy/core/src/umath -Inumpy/core/src/npysort -In thon2.7 -Ibuild/src.linux-x86_64-2.7/numpy/core/src/private -Ibuild/src.linux-x86_64-2.7/numpy/core/src/private -Ibuild/src.linux-x86_64-2.7/nump mpy/core/src/private -c' remote: gcc: numpy/random/mtrand/distributions.c remote: gcc: numpy/random/mtrand/mtrand.c remote: gcc: numpy/random/mtrand/initarray.c remote: build/src.linux-x86_64-2.7/numpy/core/include/numpy/__multiarray_api.h:1629: warning: ‘_import_array’ defined but not used remote: gcc: numpy/random/mtrand/randomkit.c remote: gcc -pthread -shared build/temp.linux-x86_64-2.7/numpy/random/mtrand/mtrand.o build/temp.linux-x86_64-2.7/numpy/random/mtrand/ om/mtrand/initarray.o build/temp.linux-x86_64-2.7/numpy/random/mtrand/distributions.o -Lbuild/temp.linux-x86_64-2.7 -o build/lib.linux-x86_64-2.7 remote: Creating build/scripts.linux-x86_64-2.7/f2py remote: adding 'build/scripts.linux-x86_64-2.7/f2py' to scripts remote: changing mode of build/scripts.linux-x86_64-2.7/f2py from 600 to 755 remote: remote: warning: no files found matching 'tools/py3tool.py' remote: warning: no files found matching '*' under directory 'doc/f2py' remote: changing mode of /app/.heroku/python/bin/f2py to 755 remote: Running setup.py install for scipy remote: blas_opt_info: remote: blas_mkl_info: remote: libraries mkl,vml,guide not found in ['/app/.heroku/python/lib', '/usr/local/lib', '/usr/lib64', '/usr/lib'] remote: NOT AVAILABLE remote: remote: openblas_info: remote: libraries not found in ['/app/.heroku/python/lib', '/usr/local/lib', '/usr/lib64', '/usr/lib'] remote: NOT AVAILABLE remote: remote: atlas_blas_threads_info: remote: Setting PTATLAS=ATLAS remote: libraries ptf77blas,ptcblas,atlas not found in ['/app/.heroku/python/lib', '/usr/local/lib', '/usr/lib64', '/usr/lib'] remote: NOT AVAILABLE remote: remote: atlas_blas_info: remote: libraries f77blas,cblas,atlas not found in ['/app/.heroku/python/lib', '/usr/local/lib', '/usr/lib64', '/usr/lib'] remote: NOT AVAILABLE remote: remote: /app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/system_info.py:1521: UserWarning: remote: Atlas (http://math-atlas.sourceforge.net/) libraries not found. remote: Directories to search for the libraries can be specified in the remote: numpy/distutils/site.cfg file (section [atlas]) or by setting remote: the ATLAS environment variable. remote: warnings.warn(AtlasNotFoundError.__doc__) remote: blas_info: remote: libraries blas not found in ['/app/.heroku/python/lib', '/usr/local/lib', '/usr/lib64', '/usr/lib'] remote: NOT AVAILABLE remote: remote: /app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/system_info.py:1530: UserWarning: remote: Blas (http://www.netlib.org/blas/) libraries not found. remote: Directories to search for the libraries can be specified in the remote: numpy/distutils/site.cfg file (section [blas]) or by setting remote: the BLAS environment variable. remote: warnings.warn(BlasNotFoundError.__doc__) remote: blas_src_info: remote: NOT AVAILABLE remote: remote: /app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/system_info.py:1533: UserWarning: remote: Blas (http://www.netlib.org/blas/) sources not found. remote: Directories to search for the sources can be specified in the remote: numpy/distutils/site.cfg file (section [blas_src]) or by setting remote: the BLAS_SRC environment variable. remote: warnings.warn(BlasSrcNotFoundError.__doc__) remote: Traceback (most recent call last): remote: File "", line 1, in remote: File "/tmp/pip_build_u8769/scipy/setup.py", line 237, in remote: setup_package() remote: File "/tmp/pip_build_u8769/scipy/setup.py", line 234, in setup_package remote: setup(**metadata) remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/core.py", line 135, in setup remote: config = configuration() remote: File "/tmp/pip_build_u8769/scipy/setup.py", line 173, in configuration remote: config.add_subpackage('scipy') remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 966, in add_subpackage remote: caller_level = 2) remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 935, in get_subpackage remote: caller_level = caller_level + 1) remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 872, in _get_configuration_from_se remote: config = setup_module.configuration(*args) remote: File "scipy/setup.py", line 12, in configuration remote: config.add_subpackage('integrate') remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 966, in add_subpackage remote: caller_level = 2) remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 935, in get_subpackage remote: caller_level = caller_level + 1) remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 872, in _get_configuration_from_se remote: config = setup_module.configuration(*args) remote: File "scipy/integrate/setup.py", line 12, in configuration remote: blas_opt = get_info('blas_opt',notfound_action=2) remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/system_info.py", line 350, in get_info remote: return cl().get_info(notfound_action) remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/system_info.py", line 509, in get_info remote: raise self.notfounderror(self.notfounderror.__doc__) remote: numpy.distutils.system_info.BlasNotFoundError: remote: Blas (http://www.netlib.org/blas/) libraries not found. remote: Directories to search for the libraries can be specified in the remote: numpy/distutils/site.cfg file (section [blas]) or by setting remote: the BLAS environment variable. remote: Complete output from command /app/.heroku/python/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip_build_u8769/sci , open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-0GYDl_-record/install-record.txt --single-version-e remote: blas_opt_info: remote: remote: blas_mkl_info: remote: remote: libraries mkl,vml,guide not found in ['/app/.heroku/python/lib', '/usr/local/lib', '/usr/lib64', '/usr/lib'] remote: remote: NOT AVAILABLE remote: remote: remote: remote: openblas_info: remote: remote: libraries not found in ['/app/.heroku/python/lib', '/usr/local/lib', '/usr/lib64', '/usr/lib'] remote: remote: NOT AVAILABLE remote: remote: remote: remote: atlas_blas_threads_info: remote: remote: Setting PTATLAS=ATLAS remote: remote: libraries ptf77blas,ptcblas,atlas not found in ['/app/.heroku/python/lib', '/usr/local/lib', '/usr/lib64', '/usr/lib'] remote: remote: NOT AVAILABLE remote: remote: remote: remote: atlas_blas_info: remote: remote: libraries f77blas,cblas,atlas not found in ['/app/.heroku/python/lib', '/usr/local/lib', '/usr/lib64', '/usr/lib'] remote: remote: NOT AVAILABLE remote: remote: remote: remote: /app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/system_info.py:1521: UserWarning: remote: remote: Atlas (http://math-atlas.sourceforge.net/) libraries not found. remote: remote: Directories to search for the libraries can be specified in the remote: remote: numpy/distutils/site.cfg file (section [atlas]) or by setting remote: remote: the ATLAS environment variable. remote: remote: warnings.warn(AtlasNotFoundError.__doc__) remote: remote: blas_info: remote: remote: libraries blas not found in ['/app/.heroku/python/lib', '/usr/local/lib', '/usr/lib64', '/usr/lib'] remote: remote: NOT AVAILABLE remote: remote: remote: remote: /app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/system_info.py:1530: UserWarning: remote: remote: Blas (http://www.netlib.org/blas/) libraries not found. remote: remote: Directories to search for the libraries can be specified in the remote: remote: numpy/distutils/site.cfg file (section [blas]) or by setting remote: remote: the BLAS environment variable. remote: remote: warnings.warn(BlasNotFoundError.__doc__) remote: remote: blas_src_info: remote: remote: NOT AVAILABLE remote: remote: remote: remote: /app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/system_info.py:1533: UserWarning: remote: remote: Blas (http://www.netlib.org/blas/) sources not found. remote: remote: Directories to search for the sources can be specified in the remote: remote: numpy/distutils/site.cfg file (section [blas_src]) or by setting remote: remote: the BLAS_SRC environment variable. remote: remote: warnings.warn(BlasSrcNotFoundError.__doc__) remote: remote: Traceback (most recent call last): remote: remote: File "", line 1, in remote: remote: File "/tmp/pip_build_u8769/scipy/setup.py", line 237, in remote: remote: setup_package() remote: remote: File "/tmp/pip_build_u8769/scipy/setup.py", line 234, in setup_package remote: remote: setup(**metadata) remote: remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/core.py", line 135, in setup remote: remote: config = configuration() remote: remote: File "/tmp/pip_build_u8769/scipy/setup.py", line 173, in configuration remote: remote: config.add_subpackage('scipy') remote: remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 966, in add_subpackage remote: remote: caller_level = 2) remote: remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 935, in get_subpackage remote: remote: caller_level = caller_level + 1) remote: remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 872, in _get_configuration_from_setup_ remote: remote: config = setup_module.configuration(*args) remote: remote: File "scipy/setup.py", line 12, in configuration remote: remote: config.add_subpackage('integrate') remote: remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 966, in add_subpackage remote: remote: caller_level = 2) remote: remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 935, in get_subpackage remote: remote: caller_level = caller_level + 1) remote: remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/misc_util.py", line 872, in _get_configuration_from_setup_ remote: remote: config = setup_module.configuration(*args) remote: remote: File "scipy/integrate/setup.py", line 12, in configuration remote: remote: blas_opt = get_info('blas_opt',notfound_action=2) remote: remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/system_info.py", line 350, in get_info remote: remote: return cl().get_info(notfound_action) remote: remote: File "/app/.heroku/python/lib/python2.7/site-packages/numpy/distutils/system_info.py", line 509, in get_info remote: remote: raise self.notfounderror(self.notfounderror.__doc__) remote: remote: numpy.distutils.system_info.BlasNotFoundError: remote: remote: Blas (http://www.netlib.org/blas/) libraries not found. remote: remote: Directories to search for the libraries can be specified in the remote: remote: numpy/distutils/site.cfg file (section [blas]) or by setting remote: remote: the BLAS environment variable. remote: remote: ---------------------------------------- remote: Cleaning up... remote: Command /app/.heroku/python/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip_build_u8769/scipy/setup.py';exec(compile replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-0GYDl_-record/install-record.txt --single-version-externally-managed --compi 9/scipy remote: Traceback (most recent call last): remote: File "/app/.heroku/python/bin/pip", line 9, in remote: load_entry_point('pip==1.5.6', 'console_scripts', 'pip')() remote: File "/app/.heroku/python/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/__init__.py", line 185, in main remote: return command.main(cmd_args) remote: File "/app/.heroku/python/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg/pip/basecommand.py", line 161, in main remote: text = '\n'.join(complete_log) remote: UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 70: ordinal not in range(128) remote: remote: ! Push rejected, failed to compile Multipack app remote:
It looks like you're using a Multipack app? It seems that this buildpack may not work well in a multipack; I haven't tried it yet.
Basically, if Heroku is trying to compile numpy/scipy itself, then something is wrong. There should be no compilation involved, as this buildpack basically downloads pre-compiled files and just unpacks them.
Here's what I see when I run the buildpack:
Fetching repository, done.
Counting objects: 3, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 344 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
-----> Fetching custom git buildpack... done
-----> Python app detected
-----> Detected numpy/scipy in requirements.txt.
-----> Using cached binaries.
-----> Removing old installation of numpy (1.9.1).
-----> Downloading prebuilt numpy (1.8.1)
-----> Installing numpy (1.8.1)
-----> Downloading prebuilt scipy (0.14.0)
-----> Installing scipy (0.14.0)
-----> Installing dependencies with pip
-----> Discovering process types
Procfile declares types -> (none)
-----> Compressing... done, 71.5MB
-----> Launching... done, v85
https://heroku-scipy-test.herokuapp.com/ deployed to Heroku
To git@heroku.com:heroku-scipy-test.git
3f76dbb..1f2c5d2 master -> master
@bizso09, Heroku is discontinuing availability of the cedar-10 stack in just a couple months. I was able to deploy with cedar-14 with the buildpack (despite warnings that it might not work), I'd advise giving that a try.
I'm going to close this issue for now.