2016-11-07 10 views
0

Пытается установить pyobbc: pip install pyodbc он получил следующую ошибку. Я устанавливаю другой пункт peewee специально и он устанавливает, не давая мне ошибку. Я также пробовал с pip install pymssql, и он также пришел с аналогичной ошибкой. Я знаком с pyodbc и хотел бы использовать его в своем флеш-приложении.UnicodeDecodeerror with pip install pyodbc

Любой, у кого есть идея, как я могу преодолеть эту ошибку.

Я следовал за UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 13: ordinal not in range(128), How to fix: "UnicodeDecodeError: 'ascii' codec can't decode byte", но не смог решить проблему.

Я использую ubuntu 14.05.

pip install pyodbc 
Downloading/unpacking pyodbc 
    Downloading pyodbc-3.0.10.tar.gz (68kB): 68kB downloaded 
    Running setup.py (path:/tmp/pip-build-xNSuOb/pyodbc/setup.py) egg_info for package pyodbc 

warning: no files found matching 'tests/*' 
warning: no files found matching 'README.rst' 
Installing collected packages: pyodbc 
    Running setup.py install for pyodbc 
    building 'pyodbc' 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 - DPYODBC_VERSION=3.0.10 -DPYODBC_UNICODE_WIDTH=4 -DSQL_WCHART_CONVERT=1 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/include -I/usr/include/python2.7 -c /tmp/pip-build-xNSuOb/pyodbc/src/params.cpp -o build/temp.linux-x86_64-2.7/tmp/pip-build-xNSuOb/pyodbc/src/params.o -Wno-write-strings 
x86_64-linux-gnu-gcc: error: unrecognized command line option ‘-fstack-protector-strong’ 
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1 
Complete output from command /usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip-build-xNSuOb/pyodbc/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-GvPtxS-record/install-record.txt --single-version-externally-managed --compile --user: 
running install 

running build 

running build_ext 

building 'pyodbc' extension 

creating build 

creating build/temp.linux-x86_64-2.7 

creating build/temp.linux-x86_64-2.7/tmp 

creating build/temp.linux-x86_64-2.7/tmp/pip-build-xNSuOb 

creating build/temp.linux-x86_64-2.7/tmp/pip-build-xNSuOb/pyodbc 

creating build/temp.linux-x86_64-2.7/tmp/pip-build-xNSuOb/pyodbc/src 

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 -DPYODBC_VERSION=3.0.10 - DPYODBC_UNICODE_WIDTH=4 -DSQL_WCHART_CONVERT=1 - I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/include -I/usr/include/python2.7 -c /tmp/pip-build-xNSuOb/pyodbc/src/params.cpp -o build/temp.linux-x86_64-2.7/tmp/pip-build-xNSuOb/pyodbc/src/params.o -Wno-write-strings 

x86_64-linux-gnu-gcc: error: unrecognized command line option ‘- fstack-protector-strong’ 

error: command 'x86_64-linux-gnu-gcc' failed with exit status 1 

---------------------------------------- 
Cleaning up... 
Command /usr/bin/python -c "import setuptools,  tokenize;__file__='/tmp/pip-build- xNSuOb/pyodbc/setup.py';exec(compile(getattr(tokenize, 'open', open) (__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install -- record /tmp/pip-GvPtxS-record/install-record.txt --single-version- externally-managed --compile --user failed with error code 1 in /tmp/pip- build-xNSuOb/pyodbc 
Traceback (most recent call last): 
    File "/usr/bin/pip", line 9, in <module> 
    load_entry_point('pip==1.5.6', 'console_scripts', 'pip')() 
    File "/usr/lib/python2.7/dist-packages/pip/__init__.py", line 248,  in main 
    return command.main(cmd_args) 
    File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line  161, in main 
    text = '\n'.join(complete_log) 
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 66: ordinal not in range(128) 
+0

Какую версию gcc вы используете? –

+0

'sav @ sav-systems: ~/github $ gcc --version' ' gcc (Ubuntu 4.8.4-2ubuntu1 ~ 14.04.3) 4.8.4' – saviour123

ответ

0

Спасибо за помощь. Друг на одной слабой странице поможет мне в этом.

  1. export LC_ALL=C это сделало бы pip использовать локальную конфигурацию в операционной системе.
  2. и pip install --upgrade setuptools
  3. pip install pyodbc снова и имеют следующие ошибки , но уже не в ascii выпуске

fatal error: sql.h: No such file or directory #include <sql.h> ^compilation terminated.error: command 'x86_64-linux-gnu-gcc' failed with exit status 1 Затем мы выяснили, вторая проблема быть с компилятором GCC, так как pyodbc был написан на C.

И это, наконец, это решается его

4.run sudo apt-get install unixodbc-dev && sudo apt-get install pyodbc

благодарит всех вас за ответы.

0

Скорее всего, проблема в использовании древнего пипса - 1.5.6. Обновите его до pip install -U pip и проверьте еще раз.

Также убедитесь, что установлен python-devel.

+0

Спасибо, это тоже часть моих бедствий – saviour123