2

Linux(x64)でx264をコンパイルしようとしています。しかし、それは私にエラーを投げ続けます。私は周りをグーグルで検索しましたが、何も見つかりませんでした。コマンドラインの履歴は次のとおりです。

spin@around:~/x264$ git clone git://git.videolan.org/x264.git
x264 にクローンしています...
リモート: オブジェクトのカウント: 13539、完了。
リモート: オブジェクトの圧縮: 100% (4416/4416)、完了。
リモート: 合計 13539 (デルタ 11005)、再利用 11225 (デルタ 9082)
オブジェクトの受信: 100% (13539/13539)、3.29 MiB | 2.79 MiB/秒、完了。
差分の解決: 100% (11005/11005)、完了。
spin@around:~/x264/x264$ ./configure
アセンブラが見つかりません
最小バージョンは yasm-0.7.0 です
本当に asm なしでコンパイルしたい場合は、 --disable-asm で構成してください。
spin@around:~/x264/x264$ ./configure --disable-asm
プラットフォーム: X86_64
システム: Linux
asm: いいえ
avs: いいえ
lavf: いいえ
ffms: いいえ
gpac: いいえ
gpl: はい
スレッド: ポシックス
フィルター: select_every を切り抜く
デバッグ: いいえ
gprof: いいえ
写真: いいえ
共有: いいえ
視覚化: いいえ
ビット深度: 8

これで「make」または「make fprofiled」を実行できます。
spin@around:~/x264/x264$ make
gcc -Wshadow -O3 -ffast-math -Wall -I. -std=gnu99 -s -fomit-frame-pointer -fno-tree-vectorize -c -o x264.o x264.c
common/common.h:864 からインクルードされたファイルで、
                 x264.c:33 から:
common/rectangle.h: 関数 x264_macroblock_cache_rect 内:
common/rectangle.h:84: エラー: āv4siā 宣言されていません (この関数での最初の使用)
common/rectangle.h:84: エラー: (宣言されていない識別子はそれぞれ一度だけ報告されます
common/rectangle.h:84: エラー: 各関数に表示されます。)
common/rectangle.h:84: エラー: āv16ā の前に ā;ā が必要です
common/rectangle.h:86: error: ā__m128ā undeclared (この関数で最初に使用)
common/rectangle.h:86: エラー: āv16ā の前に ā;ā が必要です
common/rectangle.h:87: エラー: āv16ā の前に ā;ā が必要です
common/rectangle.h:89: エラー: āv16ā の前に ā;ā が必要です
common/rectangle.h:90: エラー: āv16ā の前に ā;ā が必要です
make: *** [x264.o] エラー 1
spin@around:~/x264/x264$

これがファイルの 83 行目から 91 行目です。

#if HAVE_VECTOREXT && defined(__SSE__)
        v4si v16 = {v,v,v,v};

        M128( d+s*0+0 ) = (__m128)v16;
        M128( d+s*1+0 ) = (__m128)v16;
        if( h == 2 ) リターン;
        M128( d+s*2+0 ) = (__m128)v16;
        M128( d+s*3+0 ) = (__m128)v16;
#そうしないと
4

1 に答える 1

1

v4si-msseがgcc に渡された場合にのみ存在する SSE 識別子です。アップストリームにバグを報告します。

于 2011-04-14T17:22:50.367 に答える