Error in creating LMDB database file in Python for Caffe
Asked Answered
P

3

7

I'm trying to create an LMDB data base file in Python to be used with Caffe according to this tutorial. The commands import numpy as np and import caffe run perfectly fine. However, when I try to run import lmdb and import deepdish as dd, I'm getting the following errors:

    >>> import lmdb
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ImportError: No module named lmdb
    >>> import deepdish as dd
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ImportError: No module named deepdish

I'm running Python 2.7.9 through Anaconda 2.2.0 (64-bit) on Ubuntu 14.04. While installing the dependencies for Caffe according to this page, I've already installed the lmdb package through sudo apt-get install liblmdb-dev.

Any ideas why this error might be occuring?

Pegmatite answered 10/6, 2015 at 23:28 Comment(4)
you seem to have path definition issues. please check you PATH variable and verify that it indeed points to the location of the lmdb packagePrevenient
When I do echo $PATH, it returns the following: /home/pras/anaconda/bin:$/usr/include:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games. When I do dpkg -L liblmdb-dev, I get these: /. /usr /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/liblmdb.a /usr/share /usr/share/doc /usr/share/doc/liblmdb-dev /usr/share/doc/liblmdb-dev/copyright /usr/include /usr/include/lmdb.h /usr/lib/x86_64-linux-gnu/liblmdb.so /usr/share/doc/liblmdb-dev/changelog.Debian.gz Now, which of these should I add to $PATH?Pegmatite
Well, I tried to follow instructions as mentioned here. pip install lmdb seemed to do the trick!Pegmatite
You should post this as an answerPrevenient
P
13

Well, the apt-get install liblmdb-dev might work with bash (in the terminal) but apparently it doesn't work with Anaconda Python. I figured Anaconda Python might require it's own module for lmdb and I followed this link. The Python installation for lmdb module can be performed by running the command pip install lmdb in the terminal. And then import lmdb in Python works like a charm!

The above installation commands may require sudo.

Pegmatite answered 11/6, 2015 at 18:28 Comment(0)
P
1

If you're using Anaconda, then this can solve your problem (it worked for me):

conda install -c https://conda.binstar.org/dougal lmdb
Phaedra answered 27/5, 2016 at 15:2 Comment(1)
Yields 404 errorCammycamomile
A
1

For Anaconda users, installing python-lmdb package from conda-forge should fix the lmdb import error:

conda install -c conda-forge python-lmdb

This was tested on conda 4.5.11 on an lxc-containerized system running Ubuntu 18.04.

Note that there is a conda package named lmdb (without python-), installable via:

conda install -c conda-forge lmdb

that does not fix the import error.

Apfelstadt answered 3/9, 2018 at 20:3 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.