[英]C/C++ in Linux for curl/curl.h
我們正在使用CentOS6(Linux),並嘗試僅通過C / C ++連接Web服務器。
我的研究:
我找到了可以與網絡服務器通信的curl庫
所以我在http://curl.haxx.se/download.html中安裝了ubuntu-7.22.0版本
我能夠包含“ curl / curl.h”,但無法編譯其方法。
問題:
請讓我知道適用於我們平台的curl的正確版本,以及如何添加-lcurl進行編譯。 (例如:g ++ -lcurl api api.c)
請給出詳細的解釋,因為它對我來說更重要。 提前致謝。
-瓦桑斯
您的問題不是特定於curl
: gcc
的參數順序很重要:編譯器選項,然后是源文件,然后是目標文件,然后是庫(從高級到低級); 所以嘗試編譯
gcc -Wall -g prog.c -lcurl -o binprog
或(對於C ++程序)
g++ -Wall -g otherprog.cc -lcurl -o binotherprog
當然,您需要開發包,例如libcurl-dev
或libcurl3-gnutls-dev
或libcurl4-gnutls-dev
(打包在Ubuntu中); 在您的CentOS發行版上,它可能稱為libcurl-devel
或其他名稱。
您應該安裝發行版提供的開發包(對於libcurl
),而不是從http://curl.haxx.se/download.html
實際上,您還應該學習如何使用GNU make
(構建器)和gdb
(調試器)。
使用gcc
(和變體)
庫必須在鏈接命令中位於最后。
這是因為鏈接器按從左到右的順序處理命令行參數。
如果庫在目標文件之前,則在處理庫時,沒有未解析的外部引用需要解析。
處理完目標文件后,便有未解析的外部引用,因此庫必須是最后一個。
這是您應該如何進行
如果您已經安裝了curl,請從此鏈接http://curl.haxx.se/download.html安裝curl。
然后按照本教程http://curl.haxx.se/libcurl/c/libcurl-tutorial.html進行操作
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.