2012-04-20 2 views
3

Я пытаюсь скомпилировать некоторый базовый пример загрузки/записи изображения .png с помощью png ++ (который является оболочкой C++ для libpng. Мне очень важно использовать png ++, а не альтернативу. As предпосылки детские ++ нуждаются как Libpng, который я успешно построен.Настройка png ++ для работы

пример, что я пытаюсь выяснить, как установить расположен по следующей ссылке. http://fedetft.wordpress.com/2010/10/05/handling-png-images-in-cpp/ он поставляется с cmakelist и я использую CMake строить два примера.

Однако, когда я его создаю, я получаю следующую ошибку: «Байтовый порядок не может быть обнаружен». com эс от config.hpp

большое спасибо

ответ

4

Я думаю, Libpng ++ неправильно определяет WIN32 платформу.

Вы можете попробовать заменить #elif определенный (__ WIN32) к #elif определенной (WIN32) в config.hpp файле.

P.S. У меня сейчас нет libpng ++, поэтому я могу ошибаться.

P.S.S. И он подходит только для Windows, ofc.

+0

спасибо за ваш ответ ... Я сделал изменение, и теперь я получаю некоторые ошибки от error.hpp (т.е. ошибка C2784: 'std :: _ String_iterator <_Elem, _Traits, _Alloc> std :: operator + (_ String_iterator <_Elem, _Traits, _Alloc> :: difference_type, std :: _ String_iterator <_Elem, _Traits, _Alloc>) ': не удалось вывести аргумент шаблона для' std :: _ String_iterator <_Elem, _Traits, _Alloc> 'from' const char [3 ] '// Большинство из этих ошибок связаны с' const char [3] ... и из io_base.hpp (т.е. ошибка C3861: 'png_set_gray_1_2_4_to_8': идентификатор не найден) приветствует – valentin

+0

Я решил проблему, изменив: png_set_gray_1_2_4_to_8 на png_set_expand_gray_1_2_4_to_8 и комментирует часть из error.hhp, ответственную за предупреждение. – valentin

+2

Эй, я был бы признателен, если бы вы отправили отчеты об ошибках на официальном трекере ошибок для png ++: http://savannah.nongnu.org/bugs/ ? = группа pngpp Кстати, я автор, поэтому не стесняйтесь задавать больше вопросов в списке или в частном порядке;) – alex