Hi,

I have the similar problem as Jeff. Since I want to use the config.h generated 
by configure, I have to copy it manually to my include-dir and additionally 
have to set the HAVE_CONFIG_H by myself to insure it will be loaded instead of 
the win32 version.

But then it works ... almost. :-)

A small problem with some namespace definitions: In some header files is a 
semikolon behind the closing bracket of a namespace. The semikolon is not 
correct in c++, but most compilers ignore it and do not complain. But gcc  
4.1.x does complain, if I set the -pedantic flag for my project and include the 
curlpp headers. It should be save to delete these semikolons, so I suggest a 
small patch (see below) to get rid of them.

Thanks,

Joerg





diff -ru curlpp-0.7.1/curlpp/Info.hpp curlpp-0.7.1-joza-patch/curlpp/Info.hpp
--- curlpp-0.7.1/curlpp/Info.hpp        2007-01-14 01:43:26.000000000 +0100
+++ curlpp-0.7.1-joza-patch/curlpp/Info.hpp     2007-09-04 12:23:52.064493482 
+0200
@@ -78,7 +78,7 @@
     template< typename T >
     static void get(cURLpp::Easy &handle, CURLINFO info, T &value);
   };
-};
+}

 #include "Info.inl"

diff -ru curlpp-0.7.1/curlpp/NonCopyable.hpp 
curlpp-0.7.1-joza-patch/curlpp/NonCopyable.hpp
--- curlpp-0.7.1/curlpp/NonCopyable.hpp 2007-01-14 01:43:26.000000000 +0100
+++ curlpp-0.7.1-joza-patch/curlpp/NonCopyable.hpp      2007-09-04 
12:24:57.930544110 +0200
@@ -38,6 +38,6 @@
          non_copyable( const non_copyable& r )
          {}
    };
-};
+}

 #endif
diff -ru curlpp-0.7.1/utilspp/EmptyType.hpp 
curlpp-0.7.1-joza-patch/utilspp/EmptyType.hpp
--- curlpp-0.7.1/utilspp/EmptyType.hpp  2007-01-14 01:43:26.000000000 +0100
+++ curlpp-0.7.1-joza-patch/utilspp/EmptyType.hpp       2007-09-04 
12:30:01.202056366 +0200
@@ -27,6 +27,6 @@
 namespace utilspp
 {
   struct EmptyType {};
-};
+}

 #endif
diff -ru curlpp-0.7.1/utilspp/functor/Binder.hpp 
curlpp-0.7.1-joza-patch/utilspp/functor/Binder.hpp
--- curlpp-0.7.1/utilspp/functor/Binder.hpp     2007-01-14 01:43:26.000000000 
+0100
+++ curlpp-0.7.1-joza-patch/utilspp/functor/Binder.hpp  2007-09-04 
12:30:21.841053104 +0200
@@ -102,6 +102,6 @@
     return Outgoing(std::auto_ptr<typename Outgoing::Impl>(new 
BinderFirst<Incoming>(fun, bound)));
   }

-};
+}

 #endif
diff -ru curlpp-0.7.1/utilspp/functor/FunctorHandler.hpp 
curlpp-0.7.1-joza-patch/utilspp/functor/FunctorHandler.hpp
--- curlpp-0.7.1/utilspp/functor/FunctorHandler.hpp     2007-01-22 
01:22:19.000000000 +0100
+++ curlpp-0.7.1-joza-patch/utilspp/functor/FunctorHandler.hpp  2007-09-04 
12:31:00.571663653 +0200
@@ -88,7 +88,7 @@
   private:
     Fun mFun;
   };
-};
+}

 #endif

diff -ru curlpp-0.7.1/utilspp/functor/Functor.hpp 
curlpp-0.7.1-joza-patch/utilspp/functor/Functor.hpp
--- curlpp-0.7.1/utilspp/functor/Functor.hpp    2007-01-22 01:22:19.000000000 
+0100
+++ curlpp-0.7.1-joza-patch/utilspp/functor/Functor.hpp 2007-09-04 
12:30:41.511284529 +0200
@@ -161,7 +161,7 @@
     return utilspp::Functor<typename utilspp::PointerOnMemberFunction< MemFun 
>::ReturnType,
       typename utilspp::PointerOnMemberFunction< MemFun >::ParamList>(obj, 
fun);
   }
-};
+}

 #include "Binder.hpp"

diff -ru curlpp-0.7.1/utilspp/functor/FunctorImpl.hpp 
curlpp-0.7.1-joza-patch/utilspp/functor/FunctorImpl.hpp
--- curlpp-0.7.1/utilspp/functor/FunctorImpl.hpp        2007-01-14 
01:43:26.000000000 +0100
+++ curlpp-0.7.1-joza-patch/utilspp/functor/FunctorImpl.hpp     2007-09-04 
12:31:16.992682529 +0200
@@ -201,6 +201,6 @@
     virtual FunctorImpl *clone() const = 0;
     virtual ~FunctorImpl(){};
   };
-};
+}

 #endif
diff -ru curlpp-0.7.1/utilspp/functor/MemFunHandler.hpp 
curlpp-0.7.1-joza-patch/utilspp/functor/MemFunHandler.hpp
--- curlpp-0.7.1/utilspp/functor/MemFunHandler.hpp      2007-01-14 
01:43:26.000000000 +0100
+++ curlpp-0.7.1-joza-patch/utilspp/functor/MemFunHandler.hpp   2007-09-04 
12:31:30.160490038 +0200
@@ -94,7 +94,7 @@
     PointerToObj mObj;
     PointerToMemFn mMemFn;
   };
-};
+}

 #endif

diff -ru curlpp-0.7.1/utilspp/NonCopyable.hpp 
curlpp-0.7.1-joza-patch/utilspp/NonCopyable.hpp
--- curlpp-0.7.1/utilspp/NonCopyable.hpp        2007-01-14 01:43:26.000000000 
+0100
+++ curlpp-0.7.1-joza-patch/utilspp/NonCopyable.hpp     2007-09-04 
12:31:53.152915439 +0200
@@ -36,6 +36,6 @@
          NonCopyable(const NonCopyable& r)
          {}
    };
-};
+}

 #endif
diff -ru curlpp-0.7.1/utilspp/NullType.hpp 
curlpp-0.7.1-joza-patch/utilspp/NullType.hpp
--- curlpp-0.7.1/utilspp/NullType.hpp   2007-01-14 01:43:26.000000000 +0100
+++ curlpp-0.7.1-joza-patch/utilspp/NullType.hpp        2007-09-04 
12:32:12.863136458 +0200
@@ -27,6 +27,6 @@
 namespace utilspp
 {
        struct NullType;
-};
+}

 #endif
diff -ru curlpp-0.7.1/utilspp/singleton/CreationStatic.hpp 
curlpp-0.7.1-joza-patch/utilspp/singleton/CreationStatic.hpp
--- curlpp-0.7.1/utilspp/singleton/CreationStatic.hpp   2007-01-14 
01:43:26.000000000 +0100
+++ curlpp-0.7.1-joza-patch/utilspp/singleton/CreationStatic.hpp        
2007-09-04 12:32:25.915971558 +0200
@@ -47,7 +47,7 @@
          static T* create();
          static void destroy( T* obj );
    };
-};
+}

 #include "CreationStatic.inl"

diff -ru curlpp-0.7.1/utilspp/singleton/CreationUsingNew.hpp 
curlpp-0.7.1-joza-patch/utilspp/singleton/CreationUsingNew.hpp
--- curlpp-0.7.1/utilspp/singleton/CreationUsingNew.hpp 2007-01-14 
01:43:26.000000000 +0100
+++ curlpp-0.7.1-joza-patch/utilspp/singleton/CreationUsingNew.hpp      
2007-09-04 12:32:36.392431299 +0200
@@ -36,7 +36,7 @@
          static T *create();
          static void destroy( T *obj );
    };
-};
+}

 #include "CreationUsingNew.inl"

diff -ru curlpp-0.7.1/utilspp/singleton/LifetimeDefault.hpp 
curlpp-0.7.1-joza-patch/utilspp/singleton/LifetimeDefault.hpp
--- curlpp-0.7.1/utilspp/singleton/LifetimeDefault.hpp  2007-01-14 
01:43:26.000000000 +0100
+++ curlpp-0.7.1-joza-patch/utilspp/singleton/LifetimeDefault.hpp       
2007-09-04 12:32:52.155609070 +0200
@@ -36,7 +36,7 @@
          static void scheduleDestruction( T *obj, void (*func)() );
          static void onDeadReference();
    };
-};
+}


 #endif
diff -ru curlpp-0.7.1/utilspp/singleton/LifetimeLibrary.hpp 
curlpp-0.7.1-joza-patch/utilspp/singleton/LifetimeLibrary.hpp
--- curlpp-0.7.1/utilspp/singleton/LifetimeLibrary.hpp  2007-01-14 
01:43:26.000000000 +0100
+++ curlpp-0.7.1-joza-patch/utilspp/singleton/LifetimeLibrary.hpp       
2007-09-04 12:33:10.384188919 +0200
@@ -97,7 +97,7 @@
   public:
     ~LifetimeLibraryGuard();
   };
-};
+}

 #include "LifetimeLibrary.inl"

diff -ru curlpp-0.7.1/utilspp/singleton/LifetimeWithLongevity.hpp 
curlpp-0.7.1-joza-patch/utilspp/singleton/LifetimeWithLongevity.hpp
--- curlpp-0.7.1/utilspp/singleton/LifetimeWithLongevity.hpp    2007-01-14 
01:43:26.000000000 +0100
+++ curlpp-0.7.1-joza-patch/utilspp/singleton/LifetimeWithLongevity.hpp 
2007-09-04 12:33:23.046118518 +0200
@@ -49,7 +49,7 @@
     static void scheduleDestruction( T *obj, void (*func)() );
     static void onDeadReference();
   };
-};
+}

 #include "LifetimeWithLongevity.inl"

diff -ru curlpp-0.7.1/utilspp/singleton/PrivateMembers.hpp 
curlpp-0.7.1-joza-patch/utilspp/singleton/PrivateMembers.hpp
--- curlpp-0.7.1/utilspp/singleton/PrivateMembers.hpp   2007-01-14 
01:43:26.000000000 +0100
+++ curlpp-0.7.1-joza-patch/utilspp/singleton/PrivateMembers.hpp        
2007-09-04 12:33:37.577594695 +0200
@@ -85,8 +85,8 @@
       void operator()(T*);
       void (*mFunc)();
     };
-  };
-};
+  }
+}

 #include "PrivateMembers.inl"

diff -ru curlpp-0.7.1/utilspp/SmartPtr.hpp 
curlpp-0.7.1-joza-patch/utilspp/SmartPtr.hpp
--- curlpp-0.7.1/utilspp/SmartPtr.hpp   2007-01-14 01:43:26.000000000 +0100
+++ curlpp-0.7.1-joza-patch/utilspp/SmartPtr.hpp        2007-09-04 
12:34:16.242218289 +0200
@@ -181,6 +181,6 @@
   private:
     CountingBodyPolicy * mContent;
   };
-};
+}

 #endif
diff -ru curlpp-0.7.1/utilspp/ThreadingFactoryMutex.hpp 
curlpp-0.7.1-joza-patch/utilspp/ThreadingFactoryMutex.hpp
--- curlpp-0.7.1/utilspp/ThreadingFactoryMutex.hpp      2007-01-14 
01:43:26.000000000 +0100
+++ curlpp-0.7.1-joza-patch/utilspp/ThreadingFactoryMutex.hpp   2007-09-04 
12:34:26.981613820 +0200
@@ -37,7 +37,7 @@

          typedef T VolatileType;
       };
-};
+}

 #include "ThreadingFactoryMutex.inl"

diff -ru curlpp-0.7.1/utilspp/ThreadingSingle.hpp 
curlpp-0.7.1-joza-patch/utilspp/ThreadingSingle.hpp
--- curlpp-0.7.1/utilspp/ThreadingSingle.hpp    2007-01-14 01:43:26.000000000 
+0100
+++ curlpp-0.7.1-joza-patch/utilspp/ThreadingSingle.hpp 2007-09-04 
12:35:35.405019072 +0200
@@ -45,7 +45,7 @@

          typedef T VolatileType;
       };
-};
+}

 #include "ThreadingSingle.inl"

diff -ru curlpp-0.7.1/utilspp/TypeList.hpp 
curlpp-0.7.1-joza-patch/utilspp/TypeList.hpp
--- curlpp-0.7.1/utilspp/TypeList.hpp   2007-01-14 01:43:26.000000000 +0100
+++ curlpp-0.7.1-joza-patch/utilspp/TypeList.hpp        2007-09-04 
12:36:21.388865615 +0200
@@ -208,8 +208,8 @@
       typedef TypeList< THead, typename erase< TTail, T >::Result >
       Result;
     };
-  };
-};
+  }
+}


 #endif
diff -ru curlpp-0.7.1/utilspp/TypeTrait.hpp 
curlpp-0.7.1-joza-patch/utilspp/TypeTrait.hpp
--- curlpp-0.7.1/utilspp/TypeTrait.hpp  2007-01-14 01:43:26.000000000 +0100
+++ curlpp-0.7.1-joza-patch/utilspp/TypeTrait.hpp       2007-09-04 
12:36:45.717964242 +0200
@@ -863,6 +863,6 @@
     typedef TYPE_LIST_15(W, X, Y, Z, A, B, C, D, E, F, G, H, I, J, K) 
ParamList;
   };

-};
+}

 #endif

Jean-Philippe Barrette-LaPierre schrieb:
> On 3-Sep-07, at 3:52 PM, Jeff Ye wrote:
> 
>> Thanks! This is the feature I have been looking for for centuries. :-)
>>
>> However, while try to put it together with my project, I got an error
>> saying Types.hpp need global.h, which was missing.
> 
> It seems that it's included in the distribution, but it's not within  
> the pkginclude
> variable. I just changed it. I'll wait 2-3 days to see if there's not  
> an another
> mistake like this to release a very minor version. However, for now  
> you can
> just copy the curlpp/global.h within the installed include dir.
> 
>> Since global.h will include curlpp's config.h, which will conflict  
>> with
>> the version of my project, I can not just copy those two files to
>> /usr/include/curlpp .
>>
>> I commented out the #include "curlpp/global.h" clause in Types.hpp  
>> and my
>> project builds. I believe if I add the boost related features to my
>> project (that why I want to use 0.7.1), I will have to manually modify
>> other header files removing the conditional include of HAVE_BOOST,  
>> or I
>> have to add #define HAVE_BOOST before I include curlpp's header files.
>> Unfortunately both are not perfect to me.
>>
>> I am wondering can we have some sort of cleaned up version of header
>> installed?
>>
>> Thanks.
>>
>> Jeff Ye
>>
>>> This is the first “stable” version that includes boost library
>>> support. Some bugs were fixed by contributors. Thanks to you all!
>>>
>>> Major changes:
>>> Added boost.function (http://www.boost.org) feature.
>>> Minor changes:
>>> Enabled example 10 (Added make_functor function).
>>> WriteData is now called WriteFile.
>>> Added example17 (binded method functor).
>>> Added example18 (boost binded method function).
>>> Bug fixes:
>>> mErrorBuffer memset problem fixed (Thanks to Graziano Giuliani)
>>> Fixed HttpPost problem (https://www.rrette.com/pipermail/curlpp/2007-
>>> February/000273.html) (Thanks to Gazi Alankus)
>>> Disabled buggy  
>>> WriteStream._______________________________________________
>>> cURLpp mailing list
>>> [email protected]
>>> http://www.rrette.com/mailman/listinfo/curlpp
>>>
>> _______________________________________________
>> cURLpp mailing list
>> [email protected]
>> http://www.rrette.com/mailman/listinfo/curlpp
> 
> _______________________________________________
> cURLpp mailing list
> [email protected]
> http://www.rrette.com/mailman/listinfo/curlpp
> 
_______________________________________________
cURLpp mailing list
[email protected]
http://www.rrette.com/mailman/listinfo/curlpp

Reply via email to