web-dev-qa-db-ja.com

osxでのpip cffiパッケージのインストールに失敗しました

暗号化とJasminインストール用のcffiパッケージをインストールしています。

質問を投稿する前に調査を行ったため、次のオプションが見つかりましたが、機能していないようです。

システム

Mac OSx 10.9.5

python2.7

エラー

c/_cffi_backend.c:13:10: fatal error: 'ffi.h' file not found

#include <ffi.h>

         ^

1 warning and 1 error generated.

次の問題について教えてください。

ありがとう

コマンド

env DYLD_LIBRARY_PATH =/usr/local/opt/openssl/lib/ARCHFLAGS = "-Wno-error = unused-command-line-argument-hard-error-in-future" LDFLAGS = "-L/usr/local/opt/openssl/lib "CFLAGS ="-I/usr/local/opt/openssl/include "Sudo -E pip install cffi

ログ

bhushanvaiude$ env DYLD_LIBRARY_PATH=/usr/local/opt/openssl/lib/ ARCHFLAGS="-Wno-error=unused-command-line-argument-hard-error-in-future" LDFLAGS="-L/usr/local/opt/openssl/lib" CFLAGS="-I/usr/local/opt/openssl/include" Sudo -E pip install cffi
Password:
Downloading/unpacking cffi
  Downloading cffi-0.8.6.tar.gz (196kB): 196kB downloaded
  Running setup.py Egg_info for package cffi
    warning: unknown warning option '-Werror=unused-command-line-argument-hard-error-in-future'; did you mean '-Werror=unused-command-line-argument'? [-Wunknown-warning-option]
    1 warning generated.

Downloading/unpacking pycparser (from cffi)
  Downloading pycparser-2.10.tar.gz (206kB): 206kB downloaded
  Running setup.py Egg_info for package pycparser

Installing collected packages: cffi, pycparser
  Running setup.py install for cffi
    warning: unknown warning option '-Werror=unused-command-line-argument-hard-error-in-future'; did you mean '-Werror=unused-command-line-argument'? [-Wunknown-warning-option]
    1 warning generated.
    building '_cffi_backend' extension
    cc -DNDEBUG -g -fwrapv -Os -Wall -Wstrict-prototypes -I/usr/local/opt/openssl/include -Qunused-arguments -pipe -Wno-error=unused-command-line-argument-hard-error-in-future -DUSE__THREAD -I@@HOMEBREW_CELLAR@@/libffi/3.0.13/lib/libffi-3.0.13/include -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c c/_cffi_backend.c -o build/temp.macosx-10.9-intel-2.7/c/_cffi_backend.o
    warning: unknown warning option '-Werror=unused-command-line-argument-hard-error-in-future'; did you mean '-Werror=unused-command-line-argument'? [-Wunknown-warning-option]
    c/_cffi_backend.c:13:10: fatal error: 'ffi.h' file not found
    #include <ffi.h>
             ^
    1 warning and 1 error generated.
    error: command 'cc' failed with exit status 1
    Complete output from command /Users/****project path***/bin/python -c "import setuptools;__file__='/Users/****project path***/build/cffi/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/7w/8z_mn3g120n34bv0w780gnd00000gn/T/pip-e6d6Ay-record/install-record.txt --single-version-externally-managed --install-headers /Users/****project path***/include/site/python2.7:
    warning: unknown warning option '-Werror=unused-command-line-argument-hard-error-in-future'; did you mean '-Werror=unused-command-line-argument'? [-Wunknown-warning-option]

1 warning generated.

running install

running build

running build_py

creating build

creating build/lib.macosx-10.9-intel-2.7

creating build/lib.macosx-10.9-intel-2.7/cffi

copying cffi/__init__.py -> build/lib.macosx-10.9-intel-2.7/cffi

copying cffi/api.py -> build/lib.macosx-10.9-intel-2.7/cffi

copying cffi/backend_ctypes.py -> build/lib.macosx-10.9-intel-2.7/cffi

copying cffi/commontypes.py -> build/lib.macosx-10.9-intel-2.7/cffi

copying cffi/cparser.py -> build/lib.macosx-10.9-intel-2.7/cffi

copying cffi/ffiplatform.py -> build/lib.macosx-10.9-intel-2.7/cffi

copying cffi/gc_weakref.py -> build/lib.macosx-10.9-intel-2.7/cffi

copying cffi/lock.py -> build/lib.macosx-10.9-intel-2.7/cffi

copying cffi/model.py -> build/lib.macosx-10.9-intel-2.7/cffi

copying cffi/vengine_cpy.py -> build/lib.macosx-10.9-intel-2.7/cffi

copying cffi/vengine_gen.py -> build/lib.macosx-10.9-intel-2.7/cffi

copying cffi/verifier.py -> build/lib.macosx-10.9-intel-2.7/cffi

running build_ext

building '_cffi_backend' extension

creating build/temp.macosx-10.9-intel-2.7

creating build/temp.macosx-10.9-intel-2.7/c

cc -DNDEBUG -g -fwrapv -Os -Wall -Wstrict-prototypes -I/usr/local/opt/openssl/include -Qunused-arguments -pipe -Wno-error=unused-command-line-argument-hard-error-in-future -DUSE__THREAD -I@@HOMEBREW_CELLAR@@/libffi/3.0.13/lib/libffi-3.0.13/include -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c c/_cffi_backend.c -o build/temp.macosx-10.9-intel-2.7/c/_cffi_backend.o

warning: unknown warning option '-Werror=unused-command-line-argument-hard-error-in-future'; did you mean '-Werror=unused-command-line-argument'? [-Wunknown-warning-option]

c/_cffi_backend.c:13:10: fatal error: 'ffi.h' file not found

#include <ffi.h>

         ^

1 warning and 1 error generated.

error: command 'cc' failed with exit status 1

----------------------------------------
Cleaning up...
21
bhushya

あなたのターミナルで試して実行してください:

xcode-select --install

その後、パッケージを再度インストールしてください。

デフォルトでは、XCodeはIDE=としてインストールされ、コマンドラインツールで使用するための環境を設定しません。たとえば、/usr/includeフォルダがありません。

上記のコマンドを実行すると、コマンドラインからコンパイルを実行するために必要なツールがインストールされ、必要なシンボリックリンクが作成されます。 PythonパッケージはXCodeのコマンドラインインターフェイスを使用してネイティブコードパーツをコンパイルするため、ネイティブコンポーネントを含むPythonパッケージをインストールするには、この手順が必要です。

これは、XCodeのインストール/アップグレードごとに、または同様のエラーが発生した場合に1回だけ実行する必要があります。

28
Yariv Katz

でCLI開発ツールチェーンをインストールする

$ xcode-select --install

壊れたpkg-configがある場合は、コメントに記載されている次のコマンドでリンクを解除します。

$ brew unlink pkg-config

Libffiパッケージをインストールする

$ brew install pkg-config libffi

そしてcffiをインストールします

$ pip install cffi

ソース: OS Xでのpipを使用したbcryptのインストール時のエラー:ffi.hが見つかりません(libffiがインストールされています)

17
ChillarAnand

ターミナルで以下のコマンドを実行すると、問題が解決しました。

xcode-select --install

0
ravgopal