我使用ndk-build在调试模式下编译libpng源代码,然后在pngrtran.c中显示“内部编译器错误”。但是当我在发布模式下编译时,它可以成功。这是libpng中的错误吗?我怎么解决这个问题?
答案 0 :(得分:1)
这不是libpng中的错误;程序描述为“内部错误”的任何东西都是程序中的错误(libpng会这样做,但它会显示“libpng:internal error”!)所以这是编译器中的一个错误。
您应该向ndk人员报告,或者您可以直接转到编译器供应商(可能是GNU),因为他们可能会更敏感。
你无法解决问题 - 它需要一个编译器修复(可能只是输出一个不声称它是内部错误的消息,但至少是那个。)你可以通过简单地不编译libpng来避免这个问题。调试模式。因为我认为这是针对Android的,所以你可以(我相信)混合和匹配调试,现在调试代码(这样做 NOT 在Windows上至少有一个编译器工作!)
您还可以尝试找出哪个编译器选项显示问题;比较在发布和调试中传递给编译器的选项,然后将差异平分,看看是否可以将问题缩小到一个设置。
John Bowler jbowler 2 acm.org
答案 1 :(得分:0)
android团队应该知道这个bug。正如它的旧表面: http://code.google.com/p/android/issues/detail?id=20862