Autotoolsは自分のスキーマを正しく検出できません。それを処理する方法?

Autotoolsは自分のスキーマを正しく検出できません。それを処理する方法?

gitリポジトリから最新のffmpegをビルドしようとしています。ただし、以下のように自動ツールはそれを正しく検出しません。私のボックスには64ビットアーキテクチャがあります(Ubuntu 12.04)。。したがって、ビルドプロセス中にいくつかのx86ライブラリが必要ですが、存在せず、ビルドが失敗します。この問題をどのように解決できますか?

mvitkov@mms:~/projects/ffmpeg/build$ ../ffmpeg/configure --enable-share
出力:
インストールプレフィックス/usr/local
ソースパス/home/users/mvitkov/projects/ffmpeg/ffmpeg
Cコンパイラgcc
ARCH x86(汎用)

一方、自動ツールは通常非常にうまく機能します。

mvitkov@mms:~/projects/x264/build$ ../x264/configure --enable-static 出力:
*プラットフォーム: X86_64*

答え1

それでは、64ビット版のffmpegを構築しますか?コンパイラがデフォルトで64ビットバイナリを生成しないことは確実ですか?そうでない場合、一般的にすべきことは、およびをCFLAGS編集CXXFLAGSすることですLDFLAGS

次のものを使用できます。 -

CFLAGS="-m64 -O3 -fPIC"  CXXFLAGS="$CFLAGS" LDFLAGS="-melf_x86_64 -O3" ../ffmpeg/configure --enable-static

常に "configure --help"で利用可能な他のオプションを確認する価値があります。 ffmpeg には多くのオプションの依存関係があり、その一部はアクティブにする必要があります。

特定のアーキテクチャとプラットフォームをターゲットとする別のアプローチは、および設定--hostフラグを使用することです。これは標準の自動ツールフラグです。いつも混乱していますが、簡単な説明を見つけることができます。--target--buildLinuxフォーラムで

関連情報