cでrabbitmqに接続しようとしていますが、毎回失敗します。これが私がそれをした方法です。
ダウンロードしたrabbitmq-c
依存関係が満たされていることを確認するために
インストールしました( )。
Rebuilt usingを使用して
接続変数を変更し、実行して機能しました
。次に、独自のファイルを作成し、gccを使用してそれらをコンパイルし始めました。
make && make install
amqp_sendstring.c
make
./amqp_sendstring
gcc -lrabbitmq -o j_test test.c
皮肉なことに、以下のエラーでlibrabbitmqとのリンクに失敗します。
/tmp/cc63IlXq.o: In function `main':
test.c:(.text+0xa): undefined reference to `amqp_new_connection'
test.c:(.text+0x1a): undefined reference to `amqp_destroy_connection'
collect2: ld returned 1 exit status
ampq_*で始まるものをすべて削除しました。出来上がり!正常に構築されました。これは、gccがヘッダーを検出できるが、libは検出できないことを示しています。
test.cのソースコードは次のとおりです。
#include <amqp.h>
#include <amqp_framing.h>
int main(int argc, char const * const *argv) {
amqp_connection_state_t conn;
conn = amqp_new_connection();
amqp_destroy_connection(conn);
return 0;
}
誰かが私を正しい方向に向けてくれませんか?
編集:私はubuntuボックス(12.04)にいることを言及するのを忘れました。ただし、上記のステートメントで暗黙的に暗示されていると考えてください。