curl problem in fuse
hello guys ,
i am trying to compile fuse but it is giving me errors like these i have curl and its dev packag intalled hello.o(.text+0x15e): In function `inf': /root/fuse/example/hello.c:164: undefined reference to `inflateInit_' hello.o(.text+0x18e):/root/fuse/example/hello.c:177: undefined reference to `inflate' hello.o(.text+0x1af):/root/fuse/example/hello.c:184: undefined reference to `inflateEnd' hello.o(.text+0x20b):/root/fuse/example/hello.c:195: undefined reference to `inflateEnd' hello.o(.text+0x236):/root/fuse/example/hello.c:189: undefined reference to `inflateEnd' hello.o(.text+0x38f): In function `get_amz_authhdrs': /root/fuse/example/hello.c:233: undefined reference to `EVP_sha1' hello.o(.text+0x3b1):/root/fuse/example/hello.c:233: undefined reference to `HMAC' hello.o(.text+0x3b9):/root/fuse/example/hello.c:235: undefined reference to `BIO_f_base64' hello.o(.text+0x3c2):/root/fuse/example/hello.c:235: undefined reference to `BIO_new' hello.o(.text+0x3c9):/root/fuse/example/hello.c:236: undefined reference to `BIO_s_mem' hello.o(.text+0x3d1):/root/fuse/example/hello.c:236: undefined reference to `BIO_new' hello.o(.text+0x3da):/root/fuse/example/hello.c:237: undefined reference to `BIO_push' hello.o(.text+0x3f2):/root/fuse/example/hello.c:238: undefined reference to `BIO_write' hello.o(.text+0x403):/root/fuse/example/hello.c:239: undefined reference to `BIO_ctrl' hello.o(.text+0x419):/root/fuse/example/hello.c:240: undefined reference to `BIO_ctrl' hello.o(.text+0x480):/root/fuse/example/hello.c:247: undefined reference to `BIO_free_all' hello.o(.text+0x490):/root/fuse/example/hello.c:248: undefined reference to `curl_slist_append' hello.o(.text+0x4c3):/root/fuse/example/hello.c:252: undefined reference to `curl_slist_append' hello.o(.text+0x58d): In function `main': /root/fuse/example/hello.c:647: undefined reference to `curl_global_init' hello.o(.text+0x77e): In function `downloadblock': /root/fuse/example/hello.c:267: undefined reference to `curl_easy_init' hello.o(.text+0x7cf):/root/fuse/example/hello.c:277: undefined reference to `curl_easy_setopt' hello.o(.text+0x7de):/root/fuse/example/hello.c:278: undefined reference to `curl_easy_setopt' hello.o(.text+0x7f1):/root/fuse/example/hello.c:279: undefined reference to `curl_easy_setopt' hello.o(.text+0x806):/root/fuse/example/hello.c:280: undefined reference to `curl_easy_setopt' hello.o(.text+0x80e):/root/fuse/example/hello.c:282: undefined reference to `curl_easy_perform' hello.o(.text+0x827):/root/fuse/example/hello.c:286: undefined reference to `curl_slist_free_all' hello.o(.text+0x82f):/root/fuse/example/hello.c:287: undefined reference to `curl_easy_cleanup' collect2: ld returned 1 exit status make[1]: *** [hello] Error 1 make[1]: Leaving directory `/root/fuse/example' make: *** [all-recursive] Error 1 please send in your help in this regard zafar |
Undefined references usually result from failing to include the requisite header file(s).
--- rod. |
Dear Rod ,
thanks for your reply , as you suggested that it might be the problem of heard files . I think the curl hearder file is read properly because if i not include the hearder file for curl the errors become like this hello.c: In function 'get_amz_authhdrs': hello.c:248: warning: implicit declaration of function 'curl_slist_append' hello.c:248: warning: assignment makes pointer from integer without a cast hello.c:252: warning: assignment makes pointer from integer without a cast hello.c: In function 'wgetfile': hello.c:259: error: 'CURL' undeclared (first use in this function) hello.c:259: error: (Each undeclared identifier is reported only once hello.c:259: error: for each function it appears in.) hello.c:259: error: 'curl' undeclared (first use in this function) hello.c:260: error: 'CURLcode' undeclared (first use in this function) hello.c:260: error: syntax error before 'res' hello.c:267: warning: implicit declaration of function 'curl_easy_init' hello.c:277: warning: implicit declaration of function 'curl_easy_setopt' hello.c:277: error: 'CURLOPT_HTTPHEADER' undeclared (first use in this function) hello.c:278: error: 'CURLOPT_URL' undeclared (first use in this function) hello.c:279: error: 'CURLOPT_WRITEFUNCTION' undeclared (first use in this function) hello.c:280: error: 'CURLOPT_WRITEDATA' undeclared (first use in this function) hello.c:282: error: 'res' undeclared (first use in this function) hello.c:282: warning: implicit declaration of function 'curl_easy_perform' hello.c:286: warning: implicit declaration of function 'curl_slist_free_all' hello.c:287: warning: implicit declaration of function 'curl_easy_cleanup' hello.c: In function 'main': hello.c:647: warning: implicit declaration of function 'curl_global_init' hello.c:647: error: 'CURL_GLOBAL_ALL' undeclared (first use in this function) hello.c:654: warning: implicit declaration of function 'curl_global_cleanup' make[1]: *** [hello.o] Error 1 make[1]: Leaving directory `/root/fuse/example' make: *** [all-recursive] Error 1 waiting for your response regards, Shahid . |
Which distribution is this and which kernel?
|
Dear Rod ,
thanks for your reply , as you suggested that it might be the problem of heard files . I think the curl hearder file is read properly because if i not include the hearder file for curl the errors become like this hello.c: In function 'get_amz_authhdrs': hello.c:248: warning: implicit declaration of function 'curl_slist_append' hello.c:248: warning: assignment makes pointer from integer without a cast hello.c:252: warning: assignment makes pointer from integer without a cast hello.c: In function 'wgetfile': hello.c:259: error: 'CURL' undeclared (first use in this function) hello.c:259: error: (Each undeclared identifier is reported only once hello.c:259: error: for each function it appears in.) hello.c:259: error: 'curl' undeclared (first use in this function) hello.c:260: error: 'CURLcode' undeclared (first use in this function) hello.c:260: error: syntax error before 'res' hello.c:267: warning: implicit declaration of function 'curl_easy_init' hello.c:277: warning: implicit declaration of function 'curl_easy_setopt' hello.c:277: error: 'CURLOPT_HTTPHEADER' undeclared (first use in this function) hello.c:278: error: 'CURLOPT_URL' undeclared (first use in this function) hello.c:279: error: 'CURLOPT_WRITEFUNCTION' undeclared (first use in this function) hello.c:280: error: 'CURLOPT_WRITEDATA' undeclared (first use in this function) hello.c:282: error: 'res' undeclared (first use in this function) hello.c:282: warning: implicit declaration of function 'curl_easy_perform' hello.c:286: warning: implicit declaration of function 'curl_slist_free_all' hello.c:287: warning: implicit declaration of function 'curl_easy_cleanup' hello.c: In function 'main': hello.c:647: warning: implicit declaration of function 'curl_global_init' hello.c:647: error: 'CURL_GLOBAL_ALL' undeclared (first use in this function) hello.c:654: warning: implicit declaration of function 'curl_global_cleanup' make[1]: *** [hello.o] Error 1 make[1]: Leaving directory `/root/fuse/example' make: *** [all-recursive] Error 1 waiting for your response regards, Shahid . |
i have tried it on RHEL4 and fedora core4 and both give the same errors , i am sure it is some curl configuration issue .
|
Yup!
Must be, because I installed fuse from source on four systems without anything that looks like that, what about removing curl and installing fuse first, then re-install curl. I don't know what the curl stuff is, but those are the steps that work most often with Fedora 6's "dependency hell". I was asking about the kernel just in case it was 2.6.20 or above where you don't need to compile the module for fuse. |
On my distro, I found a bunch of your symbols defined in /usr/include/curl/curl.h Have you #included that?
--- rod. |
All times are GMT -5. The time now is 04:38 PM. |