cURL
Haxx ad
libcurl

curl's project page on SourceForge.net

Sponsors:
Haxx

cURL > Mailing List > Monthly Index > Single Mail

curlpp mailing list Archives

Re: [cURLpp] compiling cURLpp in Visual Studio 2008

From: Piotr Dobrogost <curlpp_at_2008.autoera.pl>
Date: Sat, 08 Nov 2008 17:38:07 +0100

Andrei

> Could you let me know what troubles do you have with MSVS 2008?

Sure. Nice you're asking :)

> I do not have MSVS 2008, but I believe there is a trial version around
> and I can probably find some time coming weeks to look at it.

There was problem with no declaration of CURLPP_STATIC when I was building static curlpp and examples using it.I see you already fixed this by adding new configurations and defining this in static ones. (I was using version without your changes).

I took a look at curlpp.sln and curlpp.vcproj files you modified.

I see you changed names of directories and output files from hard coded ones to a new form using macros like "$(ConfigurationName)". That was something I was going to make before I saw you already did this :)

You also changed hard coded path to libcurl to one using LIBCURL_PATH macro. It's nice.
Maybe we should do the same for curlpp and change accordingly this information in README.win32
"The makefile requires the libcurlpp.lib file to be in the examples/directory; after building curlpp copy it here." ?

You divided full path to libcurl from AdditionalDependencies to a filename (AdditionalDependencies) and path (AdditionalLibraryDirectories).
I had to learn this by my mistakes... (I'm new to VC).

What I would propose is to make IntermediateDirectory different then OutputDirectory. It may be a subdirectory of OutputDirectory. So instead of
IntermediateDirectory="$(ConfigurationName)"
I would write
IntermediateDirectory="$(ConfigurationName)\intermediate"

In curlpp.vcproj;

there is this line
InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops&quot;

I'm not sure if we should keep this.
What do you think?

there is this setting
Detect64BitPortabilityProblems="true"

whereas I get warning saying this compiler switch is depreciated and will be removed. We should change it to false.

warning level is set to 3.
I set it to 4 and got warning C4512 (assignment operator could not be generated) for the following classes
FormPart, FormParts::File, FormParts::Content.
I think we should change warning level to the highest one (4) and of course fix these classes.

I get warning C4005: 'PACKAGE_NAME' : macro redefinition but I see you fixed SList.cpp include list. Still includes in this file don't look ok with this double inclusion of global.h - one with guard and one without. I think we should change this.

I get warning C4706: assignment within conditional expression in line 107 of multi.cpp
while ((msg = curl_multi_info_read(mMultiHandle, &msgsInQueue)))
This should be rewritten to
while ((msg = curl_multi_info_read(mMultiHandle, &msgsInQueue)) !=NULL)

I don't know why you defined this
#define BUILDING_CURLPP 1
in config.win32.h? This should only be defined when building curlpp. Did I missed something?

We should rename curlpp.sln and curlpp.vcproj files to curlpp.vc8.sln and curlpp.vc8.vcproj and add curlpp.vc9.sln and curlpp.vc9.vcproj files when they'll be ready.

The last but not the least we should add support for compiling with OpenSSL.

I think instead of writing all these I should have changed the code and post diffs :)
cURLpp is a fine and very usefull library and it deserves more time spent on making it even better.

Regards
Piotr Dobrogost

ps.
It would be cool to write some kind of FSM configurable from a script, taking as its states urls and as its actions urls, posts and gets. That would be kind of a generic web crawler.
_______________________________________________
cURLpp mailing list
cURLpp_at_rrette.com
http://www.rrette.com/mailman/listinfo/curlpp
Received on 2008-11-08

These mail archives are generated by hypermail.

donate! Page updated November 12, 2010.
web site info

File upload with ASP.NET