2016-10-26 6 views
0

kerebos auths(https://pecl.php.net/package/krb5)用のPHP拡張モジュールをインストールしようとしていますが、OSX上で拡張モジュールをダウンロードしました。それをインストールするには2つの重複についてのエラーが表示されます。 ./configureを実行するためにautoconfigもインストールしました。デフォルトでは既にインストールされていませんでした。krb5拡張子、2重複シンボル、clang:エラー:リンカコマンドが終了コード1で失敗しました

私は、インストールガイドファイル従うことをしようとしていた

+ When compiling this extension as shared module: 
    - run phpize in the extension directory 
    - run ./configure (optionally add --with-krb5kadm if you need this functionality) 
    - run make && make install 
    - optional: enable your new extension in you php.ini 

を、私は& &は、私はこのエラーを受け取るmake installを作るしようとすると:

duplicate symbol _krb5_ce_ccache in: 
    .libs/krb5.o 
    .libs/negotiate_auth.o 
duplicate symbol _krb5_ce_ccache in: 
    .libs/krb5.o 
    .libs/gssapi.o 
ld: 2 duplicate symbols for architecture x86_64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 
make: *** [krb5.la] Error 1 

私は両方のファイル(krb5のことに注意してください.oとgssapi.o)は、ナノコマンドラインビューからエンコードされているようです。/ krb5.c、negotiate_auth.c、gssapi.cのチェックを行いました(このファイルの両方のリンクはhttp://pastebin.com/zNdGzLFjを参照してください)

これを修正する方法は誰でも知っていますか?

答えて

0

私はダウンロードフォルダでそれをやろうとしましたが、その時点では(それは分かりませんでした)、ドキュメントでそれをやりました。

インストールファイルの最初のコマンドdoesntのコマンドは、それが拡張作者によって与えられたことを:

# This will put the current development source into the folder php_krb5 
svn co https://svn.php.net/repository/pecl/krb5/trunk/ php_krb5 
# Go there 
cd php_krb5 
# Build and install 
phpize 
./configure 
make && make install 

また、引数が--with-krb5kadmフラグに責任があるが、MITのKerberosの管理APIのバインディングを(可能 を使用すると、プリンシパル、ポリシーなどを管理できます)。私はkrb5.soを検索しなければならなかった、このプラグインを有効にするに

は、場所と、その後は、php.iniを検索し、そのファイルに次の行を追加することをコピーします。

extension=/usr/lib/php/extensions/no-debug-non-zts-20100525/krb5.so 

あなたが見る場所がのためにあります私のシステム、あなたのものは違うかもしれません。このリストで

php -m 

をあなたがよくkrb5のを追加する場合は、そのkrb5のを見ることができます:あなたは(私は3を持っていた)右のあなたのkrb5.soを選択した場合、あなたがやってそれを確認することができテストする

。そう。

大変ありがとうございます。

関連する問題