zinonet / naclports

Automatically exported from code.google.com/p/naclports
0 stars 0 forks source link

opencv port in r1054 may have its dependencies wrong #107

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?

OpenCV is listed to depend on zlib, libpng and jpeg6b. But 1) during the 
compilation the internal jpeg library ends up being instead used and 2) when I 
tried to link my program, it could not make it work* with the libpng.a from the 
port (libpng in version 1.2) and had to recompile OpenCV to also use its 
internal libpng (version 1.5 I believe).

*) because of a missing symbol in libpng.a that is referenced from 
libopencv_highgui.a; somewhat similar to 
http://stackoverflow.com/questions/20698905/unsatisfiedlinkerror-in-android-4-4-
libdevil-cannot-locate-symbol-png-set-longj

What is the expected output? What do you see instead?
During the compilation I see

--   Media I/O: 
--     ZLib:                        
[…]/nacl_sdk/pepper_canary/toolchain/linux_pnacl/usr/lib/libz.a (ver 1.2.3)
--     JPEG:                        build (ver 62)
--     PNG:                         
[…]//nacl_sdk/pepper_canary/toolchain/linux_pnacl/usr/lib/libpng.a (ver 
1.2.40)
--     TIFF:                        NO
--     JPEG 2000:                   NO
--     OpenEXR:                     NO

this suggests that it defaults to its internal jpeg library. (the fragment is 
from a file attached to Issue #106),

I would like to know why there is libpng in version 1.2 and not a newer version 
and also if there is a point in not using the internal libraries. What should 
be done about this definitely depends on the answer. Recompiling OpenCV takes 
long and I do not want to waste time working in a wrong direction.

Original issue reported on code.google.com by 374...@mail.muni.cz on 17 Jan 2014 at 11:16

GoogleCodeExporter commented 9 years ago
Feel free to update the version of libpng.

The reasons for not using the internal version of these libraries would be:
a) to save time
b) to avoid more patching (since the external ports have already be patched to 
support nacl)

Original comment by sbc@google.com on 17 Jan 2014 at 11:22

GoogleCodeExporter commented 9 years ago
libpng is now on version 1.6.12.

Investigating why libjpg is not being detected.

Original comment by sbc@google.com on 30 Sep 2014 at 6:57

GoogleCodeExporter commented 9 years ago
This should be fixes as of: https://codereview.chromium.org/612383005

Original comment by sbc@google.com on 1 Oct 2014 at 4:34