Package: libextractor
Version: 0.5.18-1
Usertags: ftbfs-gcc-4.3
Tags: patch

Your package fails to build with GCC 4.3.  Version 4.3 has not been
released yet but I'm building with a snapshot in order to find errors
and give people an advance warning.  In GCC 4.3, the C++ header
dependencies have been cleaned up.  The advantage of this is that
programs will compile faster.  The downside is that you actually
need to directly #include everything you use (but you really should
do this anyway, otherwise your program won't work with any compiler
other than GCC).  Some background of this can be found at
http://gcc.gnu.org/PR28080

You can reproduce this problem with gcc-snapshot from unstable.

> Automatic build of libextractor_0.5.18-1 on coconut0 by sbuild/ia64 0.49
...
>  ia64-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I../../../src/include 
> -I../../../src/include -g -O2 -MT basicio.lo -MD -MP -MF .deps/basicio.Tpo -c 
> basicio.cpp  -fPIC -DPIC -o .libs/basicio.o
> In file included from basicio.cpp:39:
> basicio.hpp:59: error: ISO C++ forbids declaration of 'auto_ptr' with no type
> basicio.hpp:59: error: typedef name may not be a nested-name-specifier
> basicio.hpp:59: error: expected ';' before '<' token
> basicio.hpp:216: error: 'AutoPtr' in class 'Exiv2::BasicIo' does not name a 
> type
> basicio.hpp:432: error: 'AutoPtr' in class 'Exiv2::BasicIo' does not name a 
> type
> basicio.hpp:624: error: 'AutoPtr' in class 'Exiv2::BasicIo' does not name a 
> type
> basicio.hpp: In destructor 'virtual Exiv2::MemIo::~MemIo()':
> basicio.hpp:489: error: 'free' was not declared in this scope
> basicio.cpp: At global scope:
> basicio.cpp:75: error: 'AutoPtr' in class 'Exiv2::BasicIo' does not name a 
> type
> basicio.cpp:354: error: 'AutoPtr' in class 'Exiv2::BasicIo' does not name a 
> type
> basicio.cpp: In member function 'void Exiv2::MemIo::checkSize(long int)':
> basicio.cpp:369: error: 'malloc' was not declared in this scope
> basicio.cpp:374: error: 'realloc' was not declared in this scope
> basicio.cpp:378: error: 'malloc' was not declared in this scope
> basicio.cpp: In member function 'virtual void 
> Exiv2::MemIo::transfer(Exiv2::BasicIo&)':
> basicio.cpp:405: error: 'free' was not declared in this scope

--- src/plugins/exiv2/basicio.hpp~      2007-04-02 10:49:28.000000000 +0000
+++ src/plugins/exiv2/basicio.hpp       2007-04-02 10:50:10.000000000 +0000
@@ -33,7 +33,8 @@
 // included header files
 #include "types.hpp"
 
-// + standard includes
+#include <cstdlib>
+#include <memory>
 #include <string>
 #include <vector>
 #include <cstdio>
--- src/plugins/exiv2/value.cpp~        2007-04-02 10:52:34.000000000 +0000
+++ src/plugins/exiv2/value.cpp 2007-04-02 10:52:41.000000000 +0000
@@ -36,7 +36,7 @@
 #include "types.hpp"
 #include "error.hpp"
 
-// + standard includes
+#include <cstdlib>
 #include <iostream>
 #include <iomanip>
 #include <sstream>

-- 
Martin Michlmayr
http://www.cyrius.com/


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to