2015-11-03 75 views
3

我試圖讓pymongo在我們的linux服務器上運行,但是某些操作失敗了,但我不知道是什麼。雖然安裝了pymongo ImportError

我有我的本地機器上運行(OSX)

我使用PIP安裝pymongo相同的設置,如提示:

$ sudo pip install pymongo 

Downloading/unpacking pymongo 
Downloading pymongo-3.1.tar.gz (462kB): 462kB downloaded 
Running setup.py (path:/tmp/pip_build_root/pymongo/setup.py) egg_info for package pymongo 

Installing collected packages: pymongo 
Running setup.py install for pymongo 
building 'bson._cbson' extension 
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -Ibson -I/usr/include/python2.7 -c bson/_cbsonmodule.c -o build/temp.linux-x86_64-2.7/bson/_cbsonmodule.o 
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -Ibson -I/usr/include/python2.7 -c bson/time64.c -o build/temp.linux-x86_64-2.7/bson/time64.o 
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -Ibson -I/usr/include/python2.7 -c bson/buffer.c -o build/temp.linux-x86_64-2.7/bson/buffer.o 
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -Ibson -I/usr/include/python2.7 -c bson/encoding_helpers.c -o build/temp.linux-x86_64-2.7/bson/encoding_helpers.o 
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wl,-Bsymbolic-functions -Wl,-z,relro -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security build/temp.linux-x86_64-2.7/bson/_cbsonmodule.o build/temp.linux-x86_64-2.7/bson/time64.o build/temp.linux-x86_64-2.7/bson/buffer.o build/temp.linux-x86_64-2.7/bson/encoding_helpers.o -o build/lib.linux-x86_64-2.7/bson/_cbson.so 
building 'pymongo._cmessage' extension 
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -Ibson -I/usr/include/python2.7 -c pymongo/_cmessagemodule.c -o build/temp.linux-x86_64-2.7/pymongo/_cmessagemodule.o 
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -Ibson -I/usr/include/python2.7 -c bson/buffer.c -o build/temp.linux-x86_64-2.7/bson/buffer.o 
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wl,-Bsymbolic-functions -Wl,-z,relro -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security build/temp.linux-x86_64-2.7/pymongo/_cmessagemodule.o build/temp.linux-x86_64-2.7/bson/buffer.o -o build/lib.linux-x86_64-2.7/pymongo/_cmessage.so 

Successfully installed pymongo 
Cleaning up... 

所以你認爲安裝pymongo,但它不被認可的Python:

$ python -c "import pymongo" 

Traceback (most recent call last): 
File "<string>", line 1, in <module> 
ImportError: No module named pymongo 

而且在Python本身:

$ python 
Python 2.7.9 (default, Nov 3 2015, 14:21:40) 
[GCC 4.9.1] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import pymongo 
Traceback (most recent call last): 
File "<stdin>", line 1, in <module> 
ImportError: No module named pymongo 
>>> exit() 

沒有人有任何線索?我沒有在我的Mac這個問題

$ python -V 
Python 2.7.9 
+0

你有兩個版本的Python安裝在同一臺機器上? – Jaco

+0

是我做的,2.7和3.4 –

+0

我有我的機器上類似的東西,我覺得你安裝了3.4版本pymongo。按照Dex指令('python setup.py install'),你明確地稱爲2.7的'setup.py'腳本。 – Jaco

回答

1

嘗試從源安裝:

$ git clone git://github.com/mongodb/mongo-python-driver.git pymongo 
$ cd pymongo/ 
$ python setup.py install 

不要忘記它的依賴:

sudo apt-get install build-essential python-dev 
+1

非常感謝!這就像一個魅力,任何想法爲什麼點安裝失敗? (僅供個人學習) –

+0

安裝問題不是源代碼的主題。依賴關係在使用'install_requires'配置的特定軟件包的'setup.py'內部正確定義,所以也許這就是原因。 – 2015-11-03 14:05:16

+0

看來你最初爲3.4版安裝了pymongo。通過遵循@Dex指令,您現在也爲Python 2.7安裝了它。 – Jaco

相關問題