--- id3lib-3.8.3/examples/demo_convert.cpp.ark 2007-10-23 19:17:30.000000000 +0200 +++ id3lib-3.8.3/examples/demo_convert.cpp 2007-10-23 19:17:44.000000000 +0200 @@ -84,7 +84,7 @@ void DisplayTags(ostream &os, luint nTag } } -int main( unsigned int argc, char * const argv[]) +int main( int argc, char * const argv[]) { flags_t ulFlag = ID3TT_ALL; gengetopt_args_info args; --- id3lib-3.8.3/examples/demo_copy.cpp.ark 2007-10-23 19:18:29.000000000 +0200 +++ id3lib-3.8.3/examples/demo_copy.cpp 2007-10-23 19:18:33.000000000 +0200 @@ -81,7 +81,7 @@ void DisplayTags(ostream &os, luint nTag } } -int main( unsigned int argc, char * const argv[]) +int main( int argc, char * const argv[]) { int ulFlag = ID3TT_ID3; ID3D_INIT_DOUT(); --- id3lib-3.8.3/examples/demo_info.cpp.ark 2007-10-23 19:17:03.000000000 +0200 +++ id3lib-3.8.3/examples/demo_info.cpp 2007-10-23 19:17:11.000000000 +0200 @@ -309,7 +309,7 @@ void PrintInformation(const ID3_Tag &myT #define DEBUG -int main( unsigned int argc, char * const argv[]) +int main( int argc, char * const argv[]) { ID3D_INIT_DOUT(); --- id3lib-3.8.3/examples/demo_tag.cpp.ark 2007-10-23 19:18:10.000000000 +0200 +++ id3lib-3.8.3/examples/demo_tag.cpp 2007-10-23 19:18:15.000000000 +0200 @@ -46,7 +46,7 @@ void DisplayTags(ostream &os, luint nTag os << "v2"; } -int main( unsigned int argc, char * const argv[]) +int main( int argc, char * const argv[]) { int ulFlag = ID3TT_ID3; ID3D_INIT_DOUT(); --- id3lib-3.8.3/src/tag.cpp.ark 2007-10-23 19:10:27.000000000 +0200 +++ id3lib-3.8.3/src/tag.cpp 2007-10-23 19:12:30.000000000 +0200 @@ -1064,9 +1064,10 @@ int32 ID3_IsTagHeader(const uchar data[I } -namespace -{ - class IteratorImpl : public ID3_Tag::Iterator +// anonymous namespace breaks gcc 4.3 -- but hidden visibility doesn't +//namespace +//{ + class __attribute__((visibility("hidden"))) IteratorImpl : public ID3_Tag::Iterator { ID3_TagImpl::iterator _cur; ID3_TagImpl::iterator _end; @@ -1089,7 +1090,7 @@ namespace }; - class ConstIteratorImpl : public ID3_Tag::ConstIterator + class __attribute__((visibility("hidden"))) ConstIteratorImpl : public ID3_Tag::ConstIterator { ID3_TagImpl::const_iterator _cur; ID3_TagImpl::const_iterator _end; @@ -1109,7 +1110,7 @@ namespace return next; } }; -} +//} ID3_Tag::Iterator* ID3_Tag::CreateIterator() --- id3lib-3.8.3/include/id3/id3lib_strings.h.ark 2007-10-23 19:21:14.000000000 +0200 +++ id3lib-3.8.3/include/id3/id3lib_strings.h 2007-10-23 19:21:20.000000000 +0200 @@ -30,6 +30,7 @@ #define _ID3LIB_STRINGS_H_ #include <string> +#include <cstring> #if (defined(__GNUC__) && (__GNUC__ >= 3) || (defined(_MSC_VER) && _MSC_VER > 1000)) namespace std --- id3lib-3.8.3/include/id3/writers.h.ark 2007-10-23 19:35:10.000000000 +0200 +++ id3lib-3.8.3/include/id3/writers.h 2007-10-23 19:35:16.000000000 +0200 @@ -30,7 +30,7 @@ #include "id3/writer.h" #include "id3/id3lib_streams.h" -//#include <string.h> +#include <cstring> class ID3_CPP_EXPORT ID3_OStreamWriter : public ID3_Writer { --- id3lib-3.8.3/configure.in.ark 2007-10-23 20:38:26.000000000 +0200 +++ id3lib-3.8.3/configure.in 2007-10-23 20:38:40.000000000 +0200 @@ -227,7 +227,6 @@ AC_CHECK_HEADERS(fstream iostream iomani ) AC_CHECK_HEADERS( \ string \ - iomanip.h \ ,,AC_MSG_ERROR([Missing a vital header file for id3lib]) )