установка cx_oracle не удалась

Я пытаюсь установить cx_Oracle на свой Mac Mavericks. Столкнулся со следующей ошибкой. Любая помощь, пожалуйста.

Последовательность такова:

sudo easy_install cx_Oracle
...
Processing cx_Oracle-5.1.2.tar.gz
Writing /tmp/easy_install-eFOU_a/cx_Oracle-5.1.2/setup.cfg
Running cx_Oracle-5.1.2/setup.py -q bdist_egg --dist-dir /tmp/easy_install-eFOU_a/cx_Oracle-5.1.2/egg-dist-tmp-g2eCKt
ld: file not found: crt3.o
clang: error: linker command failed with exit code 1 (use -v to see invocation)
error: Setup script exited with error: command '/usr/bin/clang' failed with exit status 1

person jepaljey    schedule 30.04.2014    source источник


Ответы (2)


Я не копал глубоко, но я нашел обходной путь для этой проблемы. Я клонировал репозиторий с https://bitbucket.org/anthony_tuininga/cx_oracle и запустил

python setup.py build

Получил ошибку:

/usr/bin/clang -bundle -undefined dynamic_lookup -L/usr/local/opt/readline/lib build/temp.macosx-10.4-x86_64-2.7-11g/cx_Oracle.o -L/opt/instantclient_11_2 -lclntsh -o build/lib.macosx-10.4-x86_64-2.7-11g/cx_Oracle.so -shared-libgcc
ld: file not found: crt3.o
clang: error: linker command failed with exit code 1 (use -v to see invocation)
error: command '/usr/bin/clang' failed with exit status 1

После этого я просто копирую и вставляю команду из вывода

/usr/bin/clang -bundle -undefined dynamic_lookup -L/usr/local/opt/readline/lib build/temp.macosx-10.4-x86_64-2.7-11g/cx_Oracle.o -L/opt/instantclient_11_2 -lclntsh -o build/lib.macosx-10.4-x86_64-2.7-11g/cx_Oracle.so -shared-libgcc

И побежал

python setup.py install

ВНЕЗАПНО яйцо было успешно установлено.

Надеюсь это поможет.

person Nikita Shilnikov    schedule 03.07.2014

  1. Сначала загрузите клиентские файлы oracle mac с сайта Oracle, два ниже

Instant Client Package — Basic: все файлы, необходимые для запуска OCI, OCCI

Пакет Instant Client — SQLPlus: дополнительные библиотеки и исполняемый файл для запуска SQLPlus с Instant Client

  1. Затем разархивируйте все и положите в одну папку. Теперь укажите этот путь к «LD LIBRARY PATH» для Mac в виде двух экспортируемых переменных среды, показанных ниже.

export DYLD_LIBRARY_PATH=/Users/myUserName/Desktop/ORA_CLIENT/oracle_client export LD_LIBRARY_PATH=$LD_LIBRARY_PATH: /Users/myUserName/Desktop/ORA_CLIENT/oracle_client

  1. Теперь загрузите tar-мяч с исходным кодом cx_oracle, разархивируйте его, перейдите в исходную папку, запустите

pip setup.py установить

  1. Будет получена ошибка ниже

ld: файл не найден: crt3.o

  1. Теперь скопируйте команду пакета gcc чуть выше вывода запуска командной строки (пример вставлен ниже)

gcc -bundle -undefined dynamic_lookup build/temp.macosx-10.4-x86_64-2.7-11g/cx_Oracle.o -L/Users/myUserName/Desktop/ORA_CLIENT/oracle_client -lclntsh -o build/lib.macosx-10.4-x86_64-2.7 -11g/cx_Oracle.so -shared-libgcc

  1. Вставьте его в командную строку, нажмите Enter. Это пройдет. Теперь запустите «python setup.py install». Будет сделано
person Haroon Rashedu    schedule 11.09.2015