%general-entities; ]> $LastChangedBy$ $Date$ cURL-&curl-version; cURL Introduction to cURL The cURL package contains an utility and a library used for transferring files with URL syntax to any of the following protocols: FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, LDAP, LDAPS and FILE. Its ability to both download and upload files can be incorporated into other programs to support functions like streaming media. &lfs81_checked; Package Information Download (HTTP): Download (FTP): Download MD5 sum: &curl-md5sum; Download size: &curl-size; Estimated disk space required: &curl-buildsize; Estimated build time: &curl-time; cURL Dependencies Recommended (runtime) and Optional , , , , , , libidn2, libmetalink, libpsl, librtmp, libssh2, mbed TLS (formerly known as PolarSSL), and SPNEGO Optional for Running the Test Suite (for the HTTPS and FTPS tests) and User Notes: Installation of cURL Install cURL by running the following commands: ./configure --prefix=/usr \ --disable-static \ --enable-threaded-resolver \ --with-ca-path=/etc/ssl/certs && make To run the tests for this package, valgrind requires a version of the /lib/ld-2.23.so (or later) library with debugging symbols present. Normally in LFS these debugging symbols are stripped at the end of Chapter 6. To get this library, glibc must be rebuilt with the current glibc version using the same compiler that was used to build LFS. The ld-2.23.so can then be renamed to ld-2.23.so.dbg and copied to /lib. Then a symlink needs to be changed: ln -sfv ld-2.23.so.dbg /lib/ld-linux-x86-64.so.2 Adjust the above instruction as needed for a 32-bit system or for a different version of glibc. To run the test suite, issue: make test. Now, as the root user: make install && rm -rf docs/examples/.deps && find docs \( -name Makefile\* \ -o -name \*.1 \ -o -name \*.3 \) \ -exec rm {} \; && install -v -d -m755 /usr/share/doc/curl-&curl-version; && cp -v -R docs/* /usr/share/doc/curl-&curl-version; Simple tests to the new installed curl: curl --trace-ascii debugdump.txt http://www.example.com/ and curl --trace-ascii d.txt --trace-time http://example.com/. Inspect the locally created trace files debugdump.txt and d.txt, which contain version downloaded files information, etc. One file has the time for each action logged. Command Explanations --enable-threaded-resolver: This switch enables cURL's builtin threaded DNS resolver. --with-ca-path=/etc/ssl/certs: This switch sets the location of the BLFS . : This parameter adds Kerberos 5 support to libcurl. : Use to build with GnuTLS support instead of OpenSSL for SSL/TLS. : Use this switch instead of --with-ca-path if building with GnuTLS support instead of OpenSSL for SSL/TLS. find docs ... -exec rm {} \;: This command removes Makefiles and man files from the documentation directory that would otherwise be installed by the commands that follow. Contents Installed Programs Installed Library Installed Directories curl, and curl-config libcurl.so /usr/include/curl and /usr/share/doc/curl-&curl-version; Short Descriptions curl is a command line tool for transferring files with URL syntax. curl curl-config prints information about the last compile, like libraries linked to and prefix setting. curl-config libcurl.so provides the API functions required by curl and other programs. libcurl.so