Bug 784614 - curlpp-devel does not contain the curlpp/config.h file
Summary: curlpp-devel does not contain the curlpp/config.h file
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: curlpp
Version: 16
Hardware: All
OS: Linux
unspecified
high
Target Milestone: ---
Assignee: Veeti Paananen
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-01-25 15:06 UTC by Ankur Sinha (FranciscoD)
Modified: 2012-01-28 20:57 UTC (History)
1 user (show)

Fixed In Version: curlpp-0.7.3-6.fc16
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-01-28 20:57:29 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Ankur Sinha (FranciscoD) 2012-01-25 15:06:01 UTC
Description of problem:
I am trying to build a program that uses curlpp. I get this error while compiling:

 || echo './'`main.cpp
In file included from /usr/include/curlpp/internal/../Types.hpp:28:0,
                 from /usr/include/curlpp/internal/OptionContainerType.hpp:31,
                 from /usr/include/curlpp/internal/OptionContainer.hpp:29,
                 from /usr/include/curlpp/Option.hpp:29,
                 from /usr/include/curlpp/Options.hpp:28,
                 from Session.h:49,
                 from main.cpp:38:
/usr/include/curlpp/internal/../internal/global.h:30:28: fatal error: curlpp/config.h: No such file or directory
compilation terminated.


Version-Release number of selected component (if applicable):
[root@ankur ~]# rpm -q curlpp-devel curlpp
curlpp-devel-0.7.3-4.fc16.x86_64
curlpp-0.7.3-4.fc16.x86_64

-------------------

How reproducible:
Always

-------------------

Is this file supposed to be in the package? It contains config.h.in and config.h.sample, but no config.h

-------------------

[root@ankur ~]# rpm -ql curlpp-devel | egrep include/curlpp
/usr/include/curlpp
/usr/include/curlpp/Easy.hpp
/usr/include/curlpp/Easy.inl
/usr/include/curlpp/Exception.hpp
/usr/include/curlpp/Form.hpp
/usr/include/curlpp/Info.hpp
/usr/include/curlpp/Info.inl
/usr/include/curlpp/Infos.hpp
/usr/include/curlpp/Multi.hpp
/usr/include/curlpp/Option.hpp
/usr/include/curlpp/Option.inl
/usr/include/curlpp/OptionBase.hpp
/usr/include/curlpp/Options.hpp
/usr/include/curlpp/Types.hpp
/usr/include/curlpp/cURLpp.hpp
/usr/include/curlpp/config.h.in
/usr/include/curlpp/config.h.sample
/usr/include/curlpp/internal
/usr/include/curlpp/internal/CurlHandle.hpp
/usr/include/curlpp/internal/CurlHandle.inl
/usr/include/curlpp/internal/OptionContainer.hpp
/usr/include/curlpp/internal/OptionContainer.inl
/usr/include/curlpp/internal/OptionContainerType.hpp
/usr/include/curlpp/internal/OptionList.hpp
/usr/include/curlpp/internal/OptionSetter.hpp
/usr/include/curlpp/internal/OptionSetter.inl
/usr/include/curlpp/internal/SList.hpp
/usr/include/curlpp/internal/buildconfig.h
/usr/include/curlpp/internal/global.h
[root@ankur ~]#


Thanks,
Ankur

Comment 1 Veeti Paananen 2012-01-25 17:14:43 UTC
Hi!

What application are you trying to compile? curlpp seems to generate the config.h file during configure but make install doesn't copy it.

The examples compile fine without it. Perhaps the program could be doing doing something non-standard/hacky with the library?

Comment 2 Ankur Sinha (FranciscoD) 2012-01-27 04:56:37 UTC
No, I don't think so :/

I'm using in via autotools if that makes a difference. I checked the contents of /internal/global.h:

#ifndef CURLPP_GLOBAL_H$
#define CURLPP_GLOBAL_H$
$
#ifndef HAVE_CONFIG_H$
|   #include "curlpp/config.win32.h"$
#else$
|   #include "curlpp/config.h"$
#endif$
$
#endif // #ifndef CURLPP_GLOBAL_H$


All this file is doing is including curlpp/config.h, so I think config.h should be part of the package somehow. 

I've only included the following in my source file:
#include	<curlpp/cURLpp.hpp>
#include	<curlpp/Options.hpp>

The error message shows the hierarchy in which the includes ultimately lead to config.h The examples arent compiling on my system:

[ankur@ankur curlpp]$ gcc -Wall -Wextra -pedantic -Wl,-z,relro -lcurlpp -lstdc++ -lcurl example01.cpp -o example1
In file included from /usr/include/curlpp/internal/../Types.hpp:28:0,
                 from /usr/include/curlpp/internal/CurlHandle.hpp:31,
                 from /usr/include/curlpp/Easy.hpp:29,
                 from example01.cpp:36:
/usr/include/curlpp/internal/../internal/global.h:28:34: fatal error: curlpp/config.win32.h: No such file or directory
compilation terminated.
[ankur@ankur curlpp]$ gcc -Wall -Wextra -pedantic -Wl,-z,relro -lcurlpp -lstdc++ -lcurl example02.cpp -o example2
In file included from /usr/include/curlpp/internal/../Types.hpp:28:0,
                 from /usr/include/curlpp/internal/CurlHandle.hpp:31,
                 from /usr/include/curlpp/Easy.hpp:29,
                 from example02.cpp:37:
/usr/include/curlpp/internal/../internal/global.h:28:34: fatal error: curlpp/config.win32.h: No such file or directory
compilation terminated.
[ankur@ankur curlpp]$


(its looking for config.win32.h because HAVE_CONFIG_H isn't defined apparently).

Maybe we should ask upstream if the file is to be included?

Thanks for looking into this,
Regards,
Ankur

Comment 3 Veeti Paananen 2012-01-27 20:18:46 UTC
I'll see about asking upstream about it. For now, I don't see any harm in including the headers - I'll push out an update.

Comment 4 Fedora Update System 2012-01-27 20:19:16 UTC
curlpp-0.7.3-6.fc16 has been submitted as an update for Fedora 16.
https://admin.fedoraproject.org/updates/curlpp-0.7.3-6.fc16

Comment 5 Fedora Update System 2012-01-28 03:30:20 UTC
Package curlpp-0.7.3-6.fc16:
* should fix your issue,
* was pushed to the Fedora 16 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing curlpp-0.7.3-6.fc16'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2012-0988/curlpp-0.7.3-6.fc16
then log in and leave karma (feedback).

Comment 6 Fedora Update System 2012-01-28 20:57:29 UTC
curlpp-0.7.3-6.fc16 has been pushed to the Fedora 16 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.