- 论坛徽章:
- 0
|
原帖由 忆秋 于 2008-4-8 17:55 发表 ![]()
我是真的不怎么懂才来请教,提供的那几个网址都去看过了,可还是不是很明白
英语不是很好,也不清楚怎么装libcrul,自己试着装了几次都不行又不知道是哪里出了问题
希望能耐心点,我会虚心向学的
fedora 上有收錄 curl,所以剛剛提供用 yum 即可安裝。或者是你可以學學基本系統管理的東西,把基礎 package 管理議題熟悉一下也不錯,這樣至少後續你要在系統上進形成是設計開發會比較輕鬆一點。
官方提供範例來看:
http://curl.haxx.se/lxr/source/docs/examples/simple.c
程式碼改一下,成為:
- SayyaBBS:kendlee@~/tmp> cat -n simple.c
- 1 /* _ _ ____ _
- 2 * Project ___| | | | _ \| |
- 3 * / __| | | | |_) | |
- 4 * | (__| |_| | _ <| |___
- 5 * \___|\___/|_| \_\_____|
- 6 *
- 7 * $Id: simple.c,v 1.6 2004/08/23 14:22:52 bagder Exp $
- 8 */
- 9
- 10 #include <stdio.h>
- 11 #include <curl/curl.h>
- 12
- 13 int main(void)
- 14 {
- 15 CURL *curl;
- 16 CURLcode res;
- 17
- 18 curl = curl_easy_init();
- 19 if(curl) {
- 20 curl_easy_setopt(curl, CURLOPT_URL, "www.google.com");
- 21 res = curl_easy_perform(curl);
- 22
- 23 /* always cleanup */
- 24 curl_easy_cleanup(curl);
- 25 }
- 26 return 0;
- 27 }
- 28
复制代码
編譯需要哪些程式庫?使用 curl --libs 看看...
- curl-config --libs
- -lcurl
复制代码
輸出只有連結使用 curl library 的話,那簡化編譯方式就是:
- SayyaBBS:kendlee@~/tmp>
- SayyaBBS:kendlee@~/tmp> ls -l
- 總計 4
- -rw-rw-r-- 1 kendlee kendlee 624 2008-04-08 18:09 simple.c
- SayyaBBS:kendlee@~/tmp>
- SayyaBBS:kendlee@~/tmp>
- SayyaBBS:kendlee@~/tmp> gcc -lcurl simple.c
- SayyaBBS:kendlee@~/tmp>
- SayyaBBS:kendlee@~/tmp>
- SayyaBBS:kendlee@~/tmp> ls -l
- 總計 12
- -rwxrwxr-x 1 kendlee kendlee 6839 2008-04-08 18:10 a.out*
- -rw-rw-r-- 1 kendlee kendlee 624 2008-04-08 18:09 simple.c
- SayyaBBS:kendlee@~/tmp>
复制代码
若你要使用 gcc $(curl-config --libs) simple.c 也可以。
執行程式輸出結果:
- SayyaBBS:kendlee@~/tmp> ./a.out
- <HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
- <TITLE>302 Moved</TITLE></HEAD><BODY>
- <H1>302 Moved</H1>
- The document has moved
- <A HREF="http://www.google.com.tw/">here</A>.
- </BODY></HTML>
复制代码
所以問題拉回來,其實您的問題主要還是對於 unix 基本 programming 的技巧比較不清楚,包含程式庫連結方式不清楚等,這克服學會後就都沒問題了。
-- |
|