1) 按照這裏介紹的方法,先安裝CMake
2) 在這裏找到下載link,下載rabbitmq-c的包
3) 解壓,進入解壓後的目錄 git
4) mkdir build && cd build # 這一步是在rabbitmq-c的根目錄下建立一個build子目錄
5) cmake .. # 這一步是讓cmake根據../CMakeList.txt,即rabbitmq-c的根目錄下的CMakeList.txt建立Makefile文件,Makefile文件會被建立到build目錄中
6) cmake --build . # 這一步是真正的build rabbitmq-c庫的,注意,不要漏掉結尾的點 '.' github
完成後,build目錄下會出現librabbitmq、examples 和 tests 子目錄。其中librabbitmq中包含生成的librabbitmq.so等文件;examples中包含amqp_bind、amqp_consumer、amqp_exchange_declare、amqp_listen、amqp_listenq、amqp_producer、amqp_rpc_sendstring_client、amqp_sendstring 和 amqp_unbind 可執行文件。 c#
這裏有rabbitmq-c的example使用說明,和使用librabbitmq的簡單說明。 socket
關於amqp_open_socket Connection refused的錯誤提示 ui
緣由在於,使用說明中提到這樣一句: spa
Arrange for a RabbitMQ or other AMQP server to be running on localhost at TCP port number 5672. .net
即,在運行example以前,要起Rabbitmq服務,監聽在 localhost的5672端口,而後下面的操做才能正常工做。不然,會遇到錯誤提示 「Opening socket: Connection refused」 code
In one terminal, run server
./examples/amqp_listen localhost 5672 amq.direct test
In another terminal, blog
./examples/amqp_sendstring localhost 5672 amq.direct test "hello world"
You should see output similar to the following in the listener's terminal window:
Result 1 Frame type 1, channel 1 Method AMQP_BASIC_DELIVER_METHOD Delivery 1, exchange amq.direct routingkey test Content-type: text/plain ---- 00000000: 68 65 6C 6C 6F 20 77 6F : 72 6C 64 hello world 0000000B:
事實上,./examples/amqp_listen localhost 5672 amq.direct test 並非真正起一個rabbitmq的服務,並監聽在localhost:5672,而是模擬真正的rabbitmq server:若是在5672端口收到正確的數據,則打印相應的信息。其實這個模擬的server能夠不用起,./examples/amqp_sendstring localhost 5672 amq.direct test "hello world" 也能夠成功往 localhost:5672 發數據。