Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to install pytables 3.2 on anaconda?

I use anaconda, and I cannot upgrade with

conda update pytables

it says "already installed".

....
# All requested packages already installed.
# packages in environment at C:\Anaconda:
#
pytables                  3.1.1                np19py27_1

Then I tried pip:

C:\Users\HP>pip install --upgrade tables
Collecting tables
  Using cached tables-3.2.0.tar.gz
    Complete output from command python setup.py egg_info:
    H5closecfvx_f.c
    r:\temp\H5closecfvx_f.c(2) : warning C4013: 'H5close' undefined; assuming ex
tern returning int
    LINK : fatal error LNK1181: cannot open input file 'hdf5dll.lib'
    * Using Python 2.7.3 |Anaconda 2.2.0 (32-bit)| (default, Feb 25 2013, 18:26:
30) [MSC v.1500 32 bit (Intel)]
    * USE_PKGCONFIG: False
    .. ERROR:: Could not find a local HDF5 installation.
       You may need to explicitly state where your local HDF5 headers and
       library can be found by setting the ``HDF5_DIR`` environment
       variable or by using the ``--hdf5`` command-line option.

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in r:\temp\pip-build
-rxtig1\tables

I searched my hard disk, and couldn't find hdf5dll.lib file. Then I downloaded the latest HDF5-1.8.15 Patch1 and point HDF5_DIR to the installed directory, still same error, and there's no hdf5dll.lib file in the newly installed HDF5 directory either.

like image 233
Ewan Avatar asked Jun 15 '15 03:06

Ewan


1 Answers

EDIT: Since the PR below was merged, pytables is available with

conda install -c conda-forge pytables

Also, this package is available in the defaults channel, but only for numpy 1.11.


pip is a pretty difficult way to line these up. A better approach is probably to build a pytables package. One effort to do so is at https://github.com/conda-forge/staged-recipes/pull/1134

Conda packaging makes it much easier to line up all the library dependencies. It essentially allows the burden of build to be centralized, so that not everyone who installs something needs to know how to build it.

Conda forge is a community effort to collaboratively package our ecosystem.

like image 79
msarahan Avatar answered Sep 18 '22 23:09

msarahan