[Home]

Summary:ASTERISK-10655: Asterisk fails to load func_curl.so
Reporter:Paul Nader (naderp)Labels:
Date Opened:2007-10-30 18:13:15Date Closed:2011-06-07 14:02:45
Priority:MajorRegression?No
Status:Closed/CompleteComponents:Functions/func_curl
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:On centos 5.0 func_curl.so builds without linking to libcurl so that when * starts it complains it can't find curl_global_init symbol.





****** ADDITIONAL INFORMATION ******

On 1.4.11:

gcc -o func_curl.o -c func_curl.c -pthread -I/usr/src/asterisk/asterisk-1.4.11/include -pipe -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -g3 -include /usr/src/asterisk/asterisk-1.4.11/include/asterisk/autoconfig.h -march=i686  -O6 -fPIC -DAST_MODULE=\"func_curl\"
gcc  -o func_curl.so -pthread  -shared -Xlinker -x func_curl.o  -L/usr/kerberos/lib -lcurl -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lresolv -ldl -lidn -lssl -lcrypto -lz


[root@dhcppc2 asterisk-1.4.11]# ldd funcs/func_curl.so
       linux-gate.so.1 =>  (0x006a4000)
       libcurl.so.3 => /usr/lib/libcurl.so.3 (0x00703000)
       libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0x008c4000)
       libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0x00793000)
       libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0x004f5000)
       libcom_err.so.2 => /lib/libcom_err.so.2 (0x00110000)
       libresolv.so.2 => /lib/libresolv.so.2 (0x00559000)
       libdl.so.2 => /lib/libdl.so.2 (0x00113000)
       libidn.so.11 => /usr/lib/libidn.so.11 (0x0087a000)
       libssl.so.6 => /lib/libssl.so.6 (0x002cb000)
       libcrypto.so.6 => /lib/libcrypto.so.6 (0x00dfd000)
       libz.so.1 => /usr/lib/libz.so.1 (0x009dd000)
       libpthread.so.0 => /lib/libpthread.so.0 (0x00ba5000)
       libc.so.6 => /lib/libc.so.6 (0x00117000)
       libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0x00254000)
       /lib/ld-linux.so.2 (0x0039d000)
[root@dhcppc2 asterisk-1.4.11]#                                    

on 1.4.13:

gcc -o func_curl.o -c func_curl.c -pthread -I/usr/src/asterisk/asterisk-1.4.13/include  -pipe -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -g3 -include /usr/src/asterisk/asterisk-1.4.13/include/asterisk/autoconfig.h -march=i686  -O6 -fPIC -DAST_MODULE=\"func_curl\"   -MMD -MT func_curl.o -MF .func_curl.o.d -MP
gcc  -o func_curl.so -pthread  -shared -Xlinker -x func_curl.o
                                  ^
NOTICE MISSING -lcurl etc above ---|

resulting in:

[root@dhcppc2 asterisk-1.4.13]# ldd funcs/func_curl.so
       linux-gate.so.1 =>  (0x00cb6000)
       libpthread.so.0 => /lib/libpthread.so.0 (0x002de000)
       libc.so.6 => /lib/libc.so.6 (0x00a2b000)
       /lib/ld-linux.so.2 (0x0039d000)
[root@dhcppc2 asterisk-1.4.13]#                  

Comments:By: Tilghman Lesher (tilghman) 2007-10-31 08:37:38

What is the output on your system of the following command:

curl-config --libs

By: Paul Nader (naderp) 2007-10-31 12:27:25

[root@dhcppc2 ~]# curl-config --libs
Package libcurl was not found in the pkg-config search path.
Perhaps you should add the directory containing `libcurl.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libcurl' found

If I set:

[root@dhcppc2 ~]# export PKG_CONFIG_PATH=/usr/lib/pkgconfig:/usr/local/lib/pkgconfig

then

[root@dhcppc2 ~]# curl-config --libs
-L/usr/kerberos/lib -lcurl -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lresolv -ldl -lidn -lssl -lcrypto -lz

Defining PKG_CONFIG_PATH in .bashrc and then:

# make clean
# ./configure
# make

fixes it:

[root@dhcppc2 asterisk-1.4.13]# ldd funcs/func_curl.so
       linux-gate.so.1 =>  (0x0012b000)
       libcurl.so.3 => /usr/lib/libcurl.so.3 (0x0063d000)
       libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0x004c7000)
       libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0x00cc5000)
       libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0x00459000)
       libcom_err.so.2 => /lib/libcom_err.so.2 (0x00110000)
       libresolv.so.2 => /lib/libresolv.so.2 (0x002b7000)
       libdl.so.2 => /lib/libdl.so.2 (0x0016d000)
       libidn.so.11 => /usr/lib/libidn.so.11 (0x0054b000)
       libssl.so.6 => /lib/libssl.so.6 (0x00703000)
       libcrypto.so.6 => /lib/libcrypto.so.6 (0x00da3000)
       libz.so.1 => /usr/lib/libz.so.1 (0x00113000)
       libpthread.so.0 => /lib/libpthread.so.0 (0x0030f000)
       libc.so.6 => /lib/libc.so.6 (0x00171000)
       libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0x00ede000)
       /lib/ld-linux.so.2 (0x0039d000)
[root@dhcppc2 asterisk-1.4.13]#

Thing is it used to work ok in 1.4.11.

Thanks

By: Jason Parker (jparker) 2007-10-31 13:16:06

Closing, not an issue.