x264 API を使用する小さな C アプリケーションを作成しようとしていますが、x264 libaray へのリンクを使用してコードをコンパイルする際に問題が発生しています。
/project/ ディレクトリには、/project/mycode/ と /project/x264-snapshot-20120120-2245 の 2 つのサブフォルダーがあります。
./configure と 'make' を使用して、後者のサブディレクトリに x264 をインストールしました。そのため、リンクしたいと思うライブラリは /project/x264-snapshot-20120120-2245/libx264.a です
/project/mycode/ には、次のインポートを含む単一のソース コード ファイル (prototype.c) があります。
#include <stdio.h>
#include <inttypes.h>
#include "../x264-snapshot-20120120-2245/x264_config.h"
#include "../x264-snapshot-20120120-2245/x264.h"
予想どおり、x264 ライブラリにリンクせずにコンパイルしようとすると、次のエラーが発生します。
/project/mycode: gcc -o prototype prototype.c
/tmp/cc5NwRTp.o: In function `main':
prototype.c:(.text+0x6c): undefined reference to `x264_param_default_preset'
prototype.c:(.text+0xf6): undefined reference to `x264_param_apply_profile'
collect2: ld returned 1 exit status
そのため、上記のライブラリをリンクしようとしましたが、見つかりません:
/project/mycode: gcc -o prototype prototype.c -I../x264-snapshot-20120120-2245/ -llibx264.a
/usr/bin/ld: cannot find -llibx264.a
collect2: ld returned 1 exit status
次のようないくつかのバリエーションを試しました。
gcc -o prototype prototype.c -I../x264-snapshot-20120120-2245/ -l ../x264-snapshot-20120120-2245/libx264.a
gcc -o prototype prototype.c -I../x264-snapshot-20120120-2245/ -llibx264
gcc -I ../x264-snapshot-20120120-2245/ -llibx264.a -o prototype prototype.c
おそらく今では明らかなように、私はこれにかなり慣れていないので、簡単な解決策があることを願っています