简体   繁体   中英

Pyexpat import error when running aws cli

I am having some problems running the aws cli on ubuntu 14.04 I keep getting the following error

Traceback (most recent call last):
File "/usr/local/bin/aws", line 15, in <module>
import awscli.clidriver
File "/usr/local/lib/python2.7/dist-packages/awscli/clidriver.py", line 16, in <module>
File "/usr/local/lib/python2.7/dist-packages/botocore/session.py", line 27, in <module>
import botocore.credentials
File "/usr/local/lib/python2.7/dist-packages/botocore/credentials.py", line 23, in    <module>
from botocore.compat import total_seconds
File "/usr/local/lib/python2.7/dist-packages/botocore/compat.py", line 118, in <module>
import xml.etree.cElementTree
File "/usr/lib/python2.7/xml/etree/cElementTree.py", line 3, in <module>
from _elementtree import *
ImportError: PyCapsule_Import could not import module "pyexpat"

When I do

 ls -l /usr/lib/python2.7/*/pyexpat*

I get

 -rw-r--r-- 1 root root 69200 Mar 23 01:57 /usr/lib/python2.7/lib-dynload/pyexpat.x86_64-linux-gnu.so

Any help is much appreciated.

EDIT

Somehow the problem was I had to run the aws commands with sudo.

I came across similar problem when I did xml parsing in Python (2.7). Finally, it was figured out that it was caused by the inaccurately defined LD_LIBRARY_PATH environment variable. Here was my situation: the xml parsing library: libexpat.so was confused with the MATLAB version ( libexpat.so.1.5.0 ) between the system version ( libexpat.so.1.6.0 ), the ImportError arose when loaded the MATLAB version libexpat.so , after I precisely defined the LD_LIBRARY_PATH , that is excluding MATLAB library path, everything went smoothly.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM