Files correlati : Commento : Spostamento in libraries delle librerie esterne di Campo per una maggiore pulizia e organizzazione git-svn-id: svn://10.65.10.50/branches/R_10_00@24150 c028cbd2-c16b-5b4b-a496-9718f37d4682
		
			
				
	
	
		
			70 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			70 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|                                   _   _ ____  _
 | |
|                               ___| | | |  _ \| |
 | |
|                              / __| | | | |_) | |
 | |
|                             | (__| |_| |  _ <| |___
 | |
|                              \___|\___/|_| \_\_____|
 | |
| 
 | |
|           How To Build libcurl to Use c-ares For Asynch Name Resolves
 | |
|           ===========================================================
 | |
| 
 | |
| c-ares:
 | |
|   http://c-ares.haxx.se/
 | |
| 
 | |
| NOTE
 | |
|   The latest libcurl version requires c-ares 1.6.0 or later.
 | |
| 
 | |
|   Once upon the time libcurl built fine with the "original" ares. That is no
 | |
|   longer true. You need to use c-ares.
 | |
| 
 | |
| Build c-ares
 | |
| ============
 | |
| 
 | |
| 1. unpack the c-ares archive
 | |
| 2. cd c-ares-dir
 | |
| 3. ./configure
 | |
| 4. make
 | |
| 5. make install
 | |
| 
 | |
| Build libcurl to use c-ares in the curl source tree
 | |
| ===================================================
 | |
| 
 | |
| 1. name or symlink the c-ares source directory 'ares' in the curl source
 | |
|    directory
 | |
| 2. ./configure --enable-ares
 | |
| 
 | |
|   Optionally, you can point out the c-ares install tree root with the the
 | |
|   --enable-ares option.
 | |
| 
 | |
| 3. make
 | |
| 
 | |
| Build libcurl to use an installed c-ares
 | |
| ========================================
 | |
| 
 | |
| 1. ./configure --enable-ares=/path/to/ares/install
 | |
| 2. make
 | |
| 
 | |
| c-ares on win32
 | |
| ===============
 | |
| (description brought by Dominick Meglio)
 | |
| 
 | |
| First I compiled c-ares. I changed the default C runtime library to be the
 | |
| single-threaded rather than the multi-threaded (this seems to be required to
 | |
| prevent linking errors later on). Then I simply build the areslib project (the
 | |
| other projects adig/ahost seem to fail under MSVC).
 | |
| 
 | |
| Next was libcurl. I opened lib/config-win32.h and I added a:
 | |
|  #define USE_ARES 1
 | |
| 
 | |
| Next thing I did was I added the path for the ares includes to the include
 | |
| path, and the libares.lib to the libraries.
 | |
| 
 | |
| Lastly, I also changed libcurl to be single-threaded rather than
 | |
| multi-threaded, again this was to prevent some duplicate symbol errors. I'm
 | |
| not sure why I needed to change everything to single-threaded, but when I
 | |
| didn't I got redefinition errors for several CRT functions (malloc, stricmp,
 | |
| etc.)
 | |
| 
 | |
| I would have modified the MSVC++ project files, but I only have VC.NET and it
 | |
| uses a different format than VC6.0 so I didn't want to go and change
 | |
| everything and remove VC6.0 support from libcurl.
 |