Dear matroska developers,

libmatroska is currently failing to build the test suite with gcc-4.4.4 with the following error message:


make[1]: Entering directory `/home/fabian/Debian/libmatroska/make/linux'
g++ -c -g -O2 -Wall -Wno-unknown-pragmas -ansi -fno-gnu-keywords -D_GNU_SOURCE -Wshadow -I/home/fabian/Debian/libmatroska/make/linux/../.. -I/home/fabian/Debian/libmatroska/make/linux/../../../libebml -o test6.o /home/fabian/Debian/libmatroska/make/linux/../../test/mux/test6.cpp /home/fabian/Debian/libmatroska/make/linux/../../test/mux/test6.cpp: In function 'int main(int, char**)': /home/fabian/Debian/libmatroska/make/linux/../../test/mux/test6.cpp:125: error: converting to execution character set: Invalid or incomplete multibyte or wide character /home/fabian/Debian/libmatroska/make/linux/../../test/mux/test6.cpp:323: error: converting to execution character set: Invalid or incomplete multibyte or wide character /home/fabian/Debian/libmatroska/make/linux/../../test/mux/test6.cpp:352: error: converting to execution character set: Invalid or incomplete multibyte or wide character /home/fabian/Debian/libmatroska/make/linux/../../test/mux/test6.cpp:355: error: converting to execution character set: Invalid or incomplete multibyte or wide character
make[1]: *** [test6.o] Error 1
make[1]: Leaving directory `/home/fabian/Debian/libmatroska/make/linux'

The cause for this error messages are invalid wide characters in test/mux/test6.cpp. They should be either converted to valid UTF-8 (01-execution-character-set.patch) or, in case you want to keep them as they are, the compiler should be explicitely told which character set they are to be converted from (01-input-charset.patch). Please find a patch for either case attached to this message, both are sufficient to fix the failing compilation.

Cheers,
Fabian
--- libmatroska.orig/make/linux/Makefile
+++ libmatroska/make/linux/Makefile
@@ -132,7 +132,7 @@ test6:	test6.o $(LIBRARY) $(LIBRARY_SO)
 	$(LD) -o $@ $(LINKFLAGS) $< $(MUX_LIBS)
 
 test6.o: $(MUX_SRC_DIR)test6.cpp
-	$(CXX) -c $(COMPILEFLAGS) -o $@ $<
+	$(CXX) -c $(COMPILEFLAGS) -finput-charset=ISO8859-15 -o $@ $<
 
 test8:	test8.o $(LIBRARY) $(LIBRARY_SO)
 	$(LD) -o $@ $(LINKFLAGS) $< $(MUX_LIBS)
--- libmatroska.orig/test/mux/test6.cpp
+++ libmatroska/test/mux/test6.cpp
@@ -122,7 +122,7 @@ int main(int argc, char **argv)
 		*(static_cast<EbmlFloat *>(&SegDuration)) = 0.0;
 
 		*((EbmlUnicodeString *)&GetChild<KaxMuxingApp>(MyInfos))  = L"libmatroska 0.5.0";
-		*((EbmlUnicodeString *)&GetChild<KaxWritingApp>(MyInfos)) = L"éàôï";
+		*((EbmlUnicodeString *)&GetChild<KaxWritingApp>(MyInfos)) = L"éàôï";
 		GetChild<KaxWritingApp>(MyInfos).SetDefaultSize(25);
 
 		uint32 InfoSize = MyInfos.Render(out_file);
@@ -320,7 +320,7 @@ int main(int argc, char **argv)
 
 		KaxChapterDisplay & aDisplay = GetChild<KaxChapterDisplay>(aAtom);
 		KaxChapterString & aChapString = GetChild<KaxChapterString>(aDisplay);
-		*static_cast<EbmlUnicodeString *>(&aChapString) = L"Le film réduit à un chapitre";
+		*static_cast<EbmlUnicodeString *>(&aChapString) = L"Le film réduit à un chapitre";
 
 		KaxChapterLanguage & aChapLang = GetChild<KaxChapterLanguage>(aDisplay);
 		*static_cast<EbmlString *>(&aChapLang) = "fra";
@@ -349,10 +349,10 @@ int main(int argc, char **argv)
 		*static_cast<EbmlUInteger *>(&ChapterUID) = 0x67890;
 
 		KaxTagSubject & Subject = GetChild<KaxTagSubject>(TagGeneral);
-		*static_cast<EbmlUnicodeString *>(&Subject) = L"Testé123";
+		*static_cast<EbmlUnicodeString *>(&Subject) = L"Testé123";
 
 		KaxTagBibliography & Biblio = GetChild<KaxTagBibliography>(TagGeneral);
-		*static_cast<EbmlUnicodeString *>(&Biblio) = L"ça marche";
+		*static_cast<EbmlUnicodeString *>(&Biblio) = L"ça marche";
 
 		KaxTagFile & File = GetChild<KaxTagFile>(TagGeneral);
 		*static_cast<EbmlUnicodeString *>(&File) = L"Fichier";
_______________________________________________
pkg-multimedia-maintainers mailing list
pkg-multimedia-maintainers@lists.alioth.debian.org
http://lists.alioth.debian.org/mailman/listinfo/pkg-multimedia-maintainers

Reply via email to