• Home
  • Raw
  • Download

Lines Matching +full:bootstrap +full:- +full:vcpkg

10 ## Building using vcpkg
12 You can download and install curl and libcurl using the [vcpkg](https://github.com/Microsoft/vcpkg/…
14 git clone https://github.com/Microsoft/vcpkg.git
15 cd vcpkg
16 ./bootstrap-vcpkg.sh
17 ./vcpkg integrate install
18 vcpkg install curl[tool]
20vcpkg is kept up to date by Microsoft team members and community contributors. If the version is o…
25 the `GIT-INFO` file in the root directory for specific instructions on how to
42 ./configure --help
47 ./configure --prefix=/path/to/curl/tree
53 ./configure --prefix=$HOME
62 ./configure --with-ssl
65 you have pkg-config installed, set the pkg-config path first, like this:
67 env PKG_CONFIG_PATH=/opt/OpenSSL/lib/pkgconfig ./configure --with-ssl
69 Without pkg-config installed, use this:
71 ./configure --with-ssl=/opt/OpenSSL
76 ./configure --without-ssl
83 CPPFLAGS="-I/path/to/ssl/include" LDFLAGS="-L/path/to/ssl/lib" ./configure
85 If you have shared SSL libs installed in a directory where your run-time
87 provide this option to gcc to set a hard-coded path to the run-time linker:
89 LDFLAGS=-Wl,-R/usr/local/ssl/lib ./configure --with-ssl
96 ./configure --disable-shared
98 To tell the configure script to skip searching for thread-safe functions, add
101 ./configure --disable-thread
104 options with the `--enable-debug` option.
107 services, and configure will try to auto-detect a decent default. But if you
115 - GnuTLS: `--without-ssl --with-gnutls`.
116 - wolfSSL: `--without-ssl --with-wolfssl`
117 - NSS: `--without-ssl --with-nss`
118 - PolarSSL: `--without-ssl --with-polarssl`
119 - mbedTLS: `--without-ssl --with-mbedtls`
120 - schannel: `--without-ssl --with-schannel`
121 - secure transport: `--without-ssl --with-secure-transport`
122 - MesaLink: `--without-ssl --with-mesalink`
126 ## Building Windows DLLs and C run-time (CRT) linkage issues
136 - [How To Use the C Run-Time](https://support.microsoft.com/help/94248/how-to-use-the-c-run-time)
137- [Run-Time Library Compiler Options](https://docs.microsoft.com/cpp/build/reference/md-mt-ld-use-
138- [Potential Errors Passing CRT Objects Across DLL Boundaries](https://docs.microsoft.com/cpp/c-ru…
153 then run `mingw32-make mingw32` in the root dir. There are other
156 - `mingw32-make mingw32-zlib` to build with Zlib support;
157 - `mingw32-make mingw32-ssl-zlib` to build with SSL and Zlib enabled;
158 - `mingw32-make mingw32-ssh2-ssl-zlib` to build with SSH2, SSL, Zlib;
159 - `mingw32-make mingw32-ssh2-ssl-sspi-zlib` to build with SSH2, SSL, Zlib
167 set ZLIB_PATH=c:\zlib-1.2.8
168 set OPENSSL_PATH=c:\openssl-1.0.2c
169 set LIBSSH2_PATH=c:\libssh2-1.6.0
195 environment, therefore, you cannot use the various disable-protocol options of
201 - `HTTP_ONLY` disables all protocols except HTTP
202 - `CURL_DISABLE_FTP` disables FTP
203 - `CURL_DISABLE_LDAP` disables LDAP
204 - `CURL_DISABLE_TELNET` disables TELNET
205 - `CURL_DISABLE_DICT` disables DICT
206 - `CURL_DISABLE_FILE` disables FILE
207 - `CURL_DISABLE_TFTP` disables TFTP
208 - `CURL_DISABLE_HTTP` disables HTTP
209 - `CURL_DISABLE_IMAP` disables IMAP
210 - `CURL_DISABLE_POP3` disables POP3
211 - `CURL_DISABLE_SMTP` disables SMTP
215 - Modify `lib/config-win32.h`
216 - Modify `lib/curl_setup.h`
217 - Modify `winbuild/Makefile.vc`
218 - Modify the "Preprocessor Definitions" in the libcurl project
220 Note: The pre-processor settings can be found using the Visual Studio IDE
221 under "Project -> Settings -> C/C++ -> General" in VC6 and "Project ->
222 Properties -> Configuration Properties -> C/C++ -> Preprocessor" in later
225 ## Using BSD-style lwIP instead of Winsock TCP/IP stack in Win32 builds
227 In order to compile libcurl and curl using BSD-style lwIP TCP/IP stack it is
232 - Modify `lib/config-win32.h` and `src/config-win32.h`
233 - Modify `winbuild/Makefile.vc`
234 - Modify the "Preprocessor Definitions" in the libcurl project
236 Note: The pre-processor settings can be found using the Visual Studio IDE
237 under "Project -> Settings -> C/C++ -> General" in VC6 and "Project ->
238 Properties -> Configuration Properties -> C/C++ -> Preprocessor" in later
241 Once that libcurl has been built with BSD-style lwIP TCP/IP stack support, in
248 1.4.0](https://download.savannah.gnu.org/releases/lwip/lwip-1.4.0.zip) and
249 [contrib-1.4.0](https://download.savannah.gnu.org/releases/lwip/contrib-1.4.0.zip).
251 This BSD-style lwIP TCP/IP stack support must be considered experimental given
258 you must add `-DCURL_STATICLIB` to your `CFLAGS`. Otherwise the linker will
273 Transport for SSL/TLS, use the configure option `--with-darwinssl`. (It is not
274 necessary to use the option `--without-ssl`.) This feature requires iOS 5.0 or
277 When Secure Transport is in use, the curl options `--cacert` and `--capath`
281 OS. The `--cert` and `--engine` options, and their libcurl equivalents, are
296 ./configure --with-darwinssl
303 `cd` to the new directory. (e.g. `cd curl-7.12.3`)
305 Set environment variables to point to the cross-compile toolchain and call
306 configure with any options you need. Be sure and specify the `--host` and
307 `--build` parameters at configuration time. The following script is an
308 example of cross-compiling for the IBM 405GP PowerPC processor using the
314 export CPPFLAGS="-I/opt/hardhat/devkit/ppc/405/target/usr/include"
315 export AR=ppc_405-ar
316 export AS=ppc_405-as
317 export LD=ppc_405-ld
318 export RANLIB=ppc_405-ranlib
319 export CC=ppc_405-gcc
320 export NM=ppc_405-nm
322 ./configure --target=powerpc-hardhat-linux
323 --host=powerpc-hardhat-linux
324 --build=i586-pc-linux-gnu
325 --prefix=/opt/hardhat/devkit/ppc/405/target/usr/local
326 --exec-prefix=/usr/local
328 You may also need to provide a parameter like `--with-random=/dev/urandom` to
330 device for a target system. The `--prefix` parameter specifies where curl
336 ./configure --host=ARCH-OS
344 would mean at minimum the -Os option, and potentially the `-march=X`,
345 `-mdynamic-no-pic` and `-flto` options as well, e.g.
347 ./configure CFLAGS='-Os' LDFLAGS='-Wl,-Bsymbolic'...
352 Be sure to specify as many `--disable-` and `--without-` flags on the
353 configure command-line as you can to disable all the libcurl features that you
355 `--disable-PROTOCOL` flags for all the types of URLs your application will not
358 - `--disable-ares` (disables support for the C-ARES DNS library)
359 - `--disable-cookies` (disables support for HTTP cookies)
360 - `--disable-crypto-auth` (disables HTTP cryptographic authentication)
361 - `--disable-ipv6` (disables support for IPv6)
362 - `--disable-manual` (disables support for the built-in documentation)
363 - `--disable-proxy` (disables support for HTTP and SOCKS proxies)
364 - `--disable-unix-sockets` (disables support for UNIX sockets)
365 - `--disable-verbose` (eliminates debugging strings and error code strings)
366 - `--disable-versioned-symbols` (disables support for versioned symbols)
367 - `--enable-hidden-symbols` (eliminates unneeded symbols in the shared library)
368 - `--without-libidn` (disables support for the libidn DNS library)
369 - `--without-librtmp` (disables support for RTMP)
370 - `--without-ssl` (disables support for SSL/TLS)
371 - `--without-zlib` (disables support for on-the-fly decompression)
376 the configure command-line, e.g.
378 CFLAGS="-Os -ffunction-sections -fdata-sections
379 -fno-unwind-tables -fno-asynchronous-unwind-tables -flto"
380 LDFLAGS="-Wl,-s -Wl,-Bsymbolic -Wl,--gc-sections"
383 using 'strip' (or the appropriate variant if cross-compiling). If space is
385 library using the -R option to objcopy (e.g. the .comment section).
387 Using these techniques it is possible to create a basic HTTP-only shared
389 FTP-only library that is 113 KiB in size (as of libcurl version 7.50.3, using
396 the `--disable` statements suggested above. Use will cause tests relying on
401 - `--disable-cookies` !cookies
402 - `--disable-manual` !--manual
403 - `--disable-proxy` !HTTP\ proxy !proxytunnel !SOCKS4 !SOCKS5
411 - Alpha DEC OSF 4
412 - Alpha Digital UNIX v3.2
413 - Alpha FreeBSD 4.1, 4.5
414 - Alpha Linux 2.2, 2.4
415 - Alpha NetBSD 1.5.2
416 - Alpha OpenBSD 3.0
417 - Alpha OpenVMS V7.1-1H2
418 - Alpha Tru64 v5.0 5.1
419 - AVR32 Linux
420 - ARM Android 1.5, 2.1, 2.3, 3.2, 4.x
421 - ARM INTEGRITY
422 - ARM iOS
423 - Cell Linux
424 - Cell Cell OS
425 - HP-PA HP-UX 9.X 10.X 11.X
426 - HP-PA Linux
427 - HP3000 MPE/iX
428 - MicroBlaze uClinux
429 - MIPS IRIX 6.2, 6.5
430 - MIPS Linux
431 - OS/400
432 - Pocket PC/Win CE 3.0
433 - Power AIX 3.2.5, 4.2, 4.3.1, 4.3.2, 5.1, 5.2
434 - PowerPC Darwin 1.0
435 - PowerPC INTEGRITY
436 - PowerPC Linux
437 - PowerPC Mac OS 9
438 - PowerPC Mac OS X
439 - SH4 Linux 2.6.X
440 - SH4 OS21
441 - SINIX-Z v5
442 - Sparc Linux
443 - Sparc Solaris 2.4, 2.5, 2.5.1, 2.6, 7, 8, 9, 10
444 - Sparc SunOS 4.1.X
445 - StrongARM (and other ARM) RISC OS 3.1, 4.02
446 - StrongARM/ARM7/ARM9 Linux 2.4, 2.6
447 - StrongARM NetBSD 1.4.1
448 - Symbian OS (P.I.P.S.) 9.x
449 - TPF
450 - Ultrix 4.3a
451 - UNICOS 9.0
452 - i386 BeOS
453 - i386 DOS
454 - i386 eCos 1.3.1
455 - i386 Esix 4.1
456 - i386 FreeBSD
457 - i386 HURD
458 - i386 Haiku OS
459 - i386 Linux 1.3, 2.0, 2.2, 2.3, 2.4, 2.6
460 - i386 Mac OS X
461 - i386 MINIX 3.1
462 - i386 NetBSD
463 - i386 Novell NetWare
464 - i386 OS/2
465 - i386 OpenBSD
466 - i386 QNX 6
467 - i386 SCO unix
468 - i386 Solaris 2.7
469 - i386 Windows 95, 98, ME, NT, 2000, XP, 2003
470 - i486 ncr-sysv4.3.03 (NCR MP-RAS)
471 - ia64 Linux 2.3.99
472 - m68k AmigaOS 3
473 - m68k Linux
474 - m68k uClinux
475 - m68k OpenBSD
476 - m88k dg-dgux5.4R3.00
477 - s390 Linux
478 - x86_64 Linux
479 - XScale/PXA250 Linux 2.4
480 - Nios II uClinux