Re: opencv update

2013-12-05 Thread Mark Atkinson
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 12/04/2013 17:38, Andrew W. Nosenko wrote:
 PS. @Mark: cvCreateImageHeader, symbol, which test program tries to
 find in opencv-core.so library, exists there and exported indeed.
 It absent in the output of plain nm (or 'nm -a' in your case) just
 because library is heavy stripped (removed anything unneeded for
 ld.so).  If use 'nm -D', you will see that symbol.

Interesting.  Thank you.   Looks like I have some scripts to change.

-BEGIN PGP SIGNATURE-
Version: GnuPG v2.0.22 (FreeBSD)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iEYEARECAAYFAlKgkaEACgkQrDN5kXnx8yY86QCeMHjT4LS/mk6SRB9GTqZHbBXO
IbYAn1CYmVvYMrKRxhtE70lmtw64j9l4
=MLNR
-END PGP SIGNATURE-

___
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to freebsd-ports-unsubscr...@freebsd.org


opencv update

2013-12-04 Thread Ajtim
I did what is in /usr/ports/UPDATING and looks like I am in trouble now. My 
system is FreeBSD 10.0-BETA4 (amd64):

===   FreeBSD 10 autotools fix applied to 
/usr/ports/multimedia/ffmpeg0/work/ffmpeg-0.7.16/configure
ERROR: opencv-core not found

If you think configure made a mistake, make sure you are using the latest
version from Git.  If the latest version fails, report the problem to the
ffmpeg-u...@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file config.log produced by configure as this will help
solving the problem.
===  Script configure failed unexpectedly.
Please report the problem to w...@freebsd.org [maintainer] and attach the
/usr/ports/multimedia/ffmpeg0/work/ffmpeg-0.7.16/config.err including the
output of the failure of your make command. Also, it might be a good idea to
provide an overview of all packages installed on your system (e.g. a
/usr/local/sbin/pkg-static info -g -Ea).
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/multimedia/ffmpeg0
*** Error code 1

Stop.
make: stopped in /usr/ports/multimedia/ffmpeg0

=== make failed for multimedia/ffmpeg0
=== Aborting update

=== Update for multimedia/ffmpeg0 failed
=== Aborting update

=== Killing background jobs
Terminated
=== The following actions were performed:
Installation of graphics/opencv-core (opencv-core-2.4.7)
Upgrade of ffmpeg-2.1.1,1 to ffmpeg-2.1.1_1,1


=== You can restart from the point of failure with this command line:
   portmaster flags multimedia/ffmpeg0 graphics/gstreamer-plugins-opencv 
graphics/opencv graphics/openimageio x11/xterm 

Thank you.
-- 
Mitja
---
http://www.redbubble.com/people/lumiwa

___
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to freebsd-ports-unsubscr...@freebsd.org


Re: opencv update

2013-12-04 Thread Daniel Nebdal
On Wed, Dec 4, 2013 at 2:10 PM, Ajtim lum...@gmail.com wrote:

 I did what is in /usr/ports/UPDATING and looks like I am in trouble now.
 My system is FreeBSD 10.0-BETA4 (amd64):

 ===   FreeBSD 10 autotools fix applied to
 /usr/ports/multimedia/ffmpeg0/work/ffmpeg-0.7.16/configure
 ERROR: opencv-core not found

 If you think configure made a mistake, make sure you are using the latest
 version from Git.  If the latest version fails, report the problem to the
 ffmpeg-u...@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
 Include the log file config.log produced by configure as this will help
 solving the problem.
 ===  Script configure failed unexpectedly.
 Please report the problem to w...@freebsd.org [maintainer] and attach the
 /usr/ports/multimedia/ffmpeg0/work/ffmpeg-0.7.16/config.err including the
 output of the failure of your make command. Also, it might be a good idea
 to
 provide an overview of all packages installed on your system (e.g. a
 /usr/local/sbin/pkg-static info -g -Ea).
 *** Error code 1

 Stop.
 make[1]: stopped in /usr/ports/multimedia/ffmpeg0
 *** Error code 1

 Stop.
 make: stopped in /usr/ports/multimedia/ffmpeg0

 === make failed for multimedia/ffmpeg0
 === Aborting update

 === Update for multimedia/ffmpeg0 failed
 === Aborting update

 === Killing background jobs
 Terminated
 === The following actions were performed:
 Installation of graphics/opencv-core (opencv-core-2.4.7)
 Upgrade of ffmpeg-2.1.1,1 to ffmpeg-2.1.1_1,1


 === You can restart from the point of failure with this command line:
portmaster flags multimedia/ffmpeg0
 graphics/gstreamer-plugins-opencv graphics/opencv graphics/openimageio
 x11/xterm

 Thank you.
 --
 Mitja
 ---
 http://www.redbubble.com/people/lumiwa



I ran into something like that when the relevant files were installed, but
didn't work (missing symbols in something it was linked to, I believe).
What does the config.err file say?

-- 
Daniel Nebdal
___
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to freebsd-ports-unsubscr...@freebsd.org


Re: opencv update

2013-12-04 Thread Mark Atkinson
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 12/04/2013 05:33, Daniel Nebdal wrote:
 On Wed, Dec 4, 2013 at 2:10 PM, Ajtim lum...@gmail.com wrote:
 
 I did what is in /usr/ports/UPDATING and looks like I am in
 trouble now. My system is FreeBSD 10.0-BETA4 (amd64):
 
 ===   FreeBSD 10 autotools fix applied to 
 /usr/ports/multimedia/ffmpeg0/work/ffmpeg-0.7.16/configure ERROR:
 opencv-core not found
 
 If you think configure made a mistake, make sure you are using
 the latest version from Git.  If the latest version fails, report
 the problem to the ffmpeg-u...@ffmpeg.org mailing list or IRC
 #ffmpeg on irc.freenode.net. Include the log file config.log
 produced by configure as this will help solving the problem. ===
 Script configure failed unexpectedly. Please report the problem
 to w...@freebsd.org [maintainer] and attach the 
 /usr/ports/multimedia/ffmpeg0/work/ffmpeg-0.7.16/config.err
 including the output of the failure of your make command. Also,
 it might be a good idea to provide an overview of all packages
 installed on your system (e.g. a /usr/local/sbin/pkg-static info
 -g -Ea). *** Error code 1
 
 Stop. make[1]: stopped in /usr/ports/multimedia/ffmpeg0 *** Error
 code 1
 
 Stop. make: stopped in /usr/ports/multimedia/ffmpeg0
 
 === make failed for multimedia/ffmpeg0 === Aborting update
 
 === Update for multimedia/ffmpeg0 failed === Aborting
 update
 
 === Killing background jobs Terminated === The following
 actions were performed: Installation of graphics/opencv-core
 (opencv-core-2.4.7) Upgrade of ffmpeg-2.1.1,1 to
 ffmpeg-2.1.1_1,1
 
 
 === You can restart from the point of failure with this
 command line: portmaster flags multimedia/ffmpeg0 
 graphics/gstreamer-plugins-opencv graphics/opencv
 graphics/openimageio x11/xterm
 
 Thank you. -- Mitja --- 
 http://www.redbubble.com/people/lumiwa
 
 
 
 I ran into something like that when the relevant files were
 installed, but didn't work (missing symbols in something it was
 linked to, I believe). What does the config.err file say?
 


BEGIN /tmp/ffconf.h5eweeVe.c
1   #include opencv2/core/core_c.h
2   long check_cvCreateImageHeader(void) { return (long)
cvCreateImageHeader; }
3   int main(void) { return 0; }
END /tmp/ffconf.h5eweeVe.c
cc -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC
- -O2 -pipe -march=native -msse -fno-strict-aliasing
- -I/usr/local/include/vorbis -I/usr/local/include -std=c99
- -fomit-frame-pointer -fPIC -I/usr/local/include/freetype2
- -I/usr/local/include -I/usr/local/include/opencv -I/usr/local/include
/usr/local/lib/libopencv_core.so /usr/local/lib/libopencv_imgproc.so
- -c -o /tmp/ffconf.KAxUBGTa.o /tmp/ffconf.h5eweeVe.c
cc: warning: /usr/local/lib/libopencv_core.so: 'linker' input unused
cc: warning: /usr/local/lib/libopencv_imgproc.so: 'linker' input unused
cc -L/usr/local/lib -Wl,--as-needed -I/usr/local/include/opencv
- -I/usr/local/include /usr/local/lib/libopencv_core.so
/usr/local/lib/libopencv_imgproc.so -o /tmp/ffconf.OA02kgLA
/tmp/ffconf.KAxUBGTa.o -L/usr/local/lib -lfreetype -lm -lbz2 -lz -pthread
/tmp/ffconf.KAxUBGTa.o: In function `check_cvCreateImageHeader':
/tmp/ffconf.h5eweeVe.c:(.text+0x3): undefined reference to
`cvCreateImageHeader'
cc: error: linker command failed with exit code 1 (use -v to see
invocation)


$ nm -a /usr/local/lib/libopencv_core.so.2
nm: /usr/local/lib/libopencv_core.so.2: no symbols

$ nm -a /usr/local/lib/libopencv_imgproc.so.2
nm: /usr/local/lib/libopencv_imgproc.so.2: no symbols
-BEGIN PGP SIGNATURE-
Version: GnuPG v2.0.22 (FreeBSD)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iEYEARECAAYFAlKfWgQACgkQrDN5kXnx8yZkPwCfTIIT5UzopcSi2K5CuYyAU/SM
ly8AnjwJXvn9OcHVq6MwbFIBFN1A12ab
=dX+E
-END PGP SIGNATURE-

___
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to freebsd-ports-unsubscr...@freebsd.org


Re: opencv update

2013-12-04 Thread Lowell Gilbert
Ajtim lum...@gmail.com writes:

 I did what is in /usr/ports/UPDATING and looks like I am in trouble now. My 
 system is FreeBSD 10.0-BETA4 (amd64):

 ===   FreeBSD 10 autotools fix applied to 
 /usr/ports/multimedia/ffmpeg0/work/ffmpeg-0.7.16/configure
 ERROR: opencv-core not found

Looks like ffmpeg0's opencv support should now depend on graphics/opencv
rather than graphics/opencv-core. I'm testing this theory now...
___
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to freebsd-ports-unsubscr...@freebsd.org


Re: opencv update

2013-12-04 Thread Lowell Gilbert
Lowell Gilbert freebsd-ports-lo...@be-well.ilk.org writes:

 Ajtim lum...@gmail.com writes:

 I did what is in /usr/ports/UPDATING and looks like I am in trouble
 now. My system is FreeBSD 10.0-BETA4 (amd64):

 === FreeBSD 10 autotools fix applied to
 /usr/ports/multimedia/ffmpeg0/work/ffmpeg-0.7.16/configure
 ERROR: opencv-core not found

 Looks like ffmpeg0's opencv support should now depend on graphics/opencv
 rather than graphics/opencv-core. I'm testing this theory now...

No, that's not right. There's some configure-script editing in the port
that I hadn't noticed. It's probably a minor fix, but in the meantime
turning off ffmpeg0's option for opencv should get you around it.
___
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to freebsd-ports-unsubscr...@freebsd.org


Re: opencv update

2013-12-04 Thread Andrew W. Nosenko
On Thu, Dec 5, 2013 at 12:07 AM, Lowell Gilbert 
freebsd-ports-lo...@be-well.ilk.org wrote:

 Lowell Gilbert freebsd-ports-lo...@be-well.ilk.org writes:

  Ajtim lum...@gmail.com writes:
 
  I did what is in /usr/ports/UPDATING and looks like I am in trouble
  now. My system is FreeBSD 10.0-BETA4 (amd64):
 
  === FreeBSD 10 autotools fix applied to
  /usr/ports/multimedia/ffmpeg0/work/ffmpeg-0.7.16/configure
  ERROR: opencv-core not found
 
  Looks like ffmpeg0's opencv support should now depend on graphics/opencv
  rather than graphics/opencv-core. I'm testing this theory now...

 No, that's not right. There's some configure-script editing in the port
 that I hadn't noticed. It's probably a minor fix, but in the meantime
 turning off ffmpeg0's option for opencv should get you around it.


I didn't verified it yet, but my assumption that it's combination of wrong
order of linker parameters and --as-needed option.  Libraries placed before
object file, which uses them (wrong order), so at the time of theirs
occurrence they are unneeded and therefore skipped.  Similar problem would
to occur independently of --as-needed if static libraries would be used
instead of dynamic, or linker occur more strict/conservative.

PS. @Mark: cvCreateImageHeader, symbol, which test program tries to find in
opencv-core.so library, exists there and exported indeed.  It absent in the
output of plain nm (or 'nm -a' in your case) just because library is heavy
stripped (removed anything unneeded for ld.so).  If use 'nm -D', you will
see that symbol.


-- 
Andrew W. Nosenko andrew.w.nose...@gmail.com
___
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to freebsd-ports-unsubscr...@freebsd.org


Re: opencv update

2013-12-04 Thread Andrew W. Nosenko
On Thu, Dec 5, 2013 at 3:38 AM, Andrew W. Nosenko 
andrew.w.nose...@gmail.com wrote:

 On Thu, Dec 5, 2013 at 12:07 AM, Lowell Gilbert 
 freebsd-ports-lo...@be-well.ilk.org wrote:

 Lowell Gilbert freebsd-ports-lo...@be-well.ilk.org writes:

  Ajtim lum...@gmail.com writes:
 
  I did what is in /usr/ports/UPDATING and looks like I am in trouble
  now. My system is FreeBSD 10.0-BETA4 (amd64):
 
  === FreeBSD 10 autotools fix applied to
  /usr/ports/multimedia/ffmpeg0/work/ffmpeg-0.7.16/configure
  ERROR: opencv-core not found
 
  Looks like ffmpeg0's opencv support should now depend on graphics/opencv
  rather than graphics/opencv-core. I'm testing this theory now...

 No, that's not right. There's some configure-script editing in the port
 that I hadn't noticed. It's probably a minor fix, but in the meantime
 turning off ffmpeg0's option for opencv should get you around it.


 I didn't verified it yet, but my assumption that it's combination of wrong
 order of linker parameters and --as-needed option.  Libraries placed before
 object file, which uses them (wrong order), so at the time of theirs
 occurrence they are unneeded and therefore skipped.  Similar problem would
 to occur independently of --as-needed if static libraries would be used
 instead of dynamic, or linker occur more strict/conservative.

 PS. @Mark: cvCreateImageHeader, symbol, which test program tries to find
 in opencv-core.so library, exists there and exported indeed.  It absent in
 the output of plain nm (or 'nm -a' in your case) just because library is
 heavy stripped (removed anything unneeded for ld.so).  If use 'nm -D', you
 will see that symbol.


ffmpeg0 configure script considers as libraries only parameters started
with '-l'.  See check_ld() functions.

But opencv-core pkg-config file (opencv-core.pc) reports absolute
library filenames
/usr/local/lib/libopencv_core.so /usr/local/lib/libopencv_imgproc.so
instead of expected by configure
-L/usr/local/lib -lopencv_core -lopencv_imgproc.
It results in treating these .so as CFLAGS with all consequences.

There are two ways to cure:
1. patch ffmpeg0 configure to detect libraries without -l
2. patch opencv-core .pc file to report libraries as -lname instead of
   /path/to/libname.so

Patch for ffmpeg0 configure is attached.

-- 
Andrew W. Nosenko andrew.w.nose...@gmail.com


patch-configure-check-ld
Description: Binary data
___
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to freebsd-ports-unsubscr...@freebsd.org