Bug 212939

Summary: multimedia/libv4l: Failes to build: error: conflicting types for 'jpeg_mem_src'
Product: Ports & Packages Reporter: iron.udjin
Component: Individual Port(s)Assignee: freebsd-multimedia (Nobody) <multimedia>
Status: Closed Overcome By Events    
Severity: Affects Only Me CC: hselasky, riggs
Priority: --- Flags: riggs: maintainer-feedback+
Version: Latest   
Hardware: amd64   
OS: Any   

Description iron.udjin 2016-09-23 17:43:22 UTC
Hello,

libv4l failes to build on FreeBSD 11-STABLE r305813M.


/bin/sh ../../libtool  --tag=CC   --mode=compile cc -DHAVE_CONFIG_H -I. -I../..  -fvisibility=hidden  -I../../lib/include -Wall -Wpointer-arith -D_GNU_SOURCE -I../../contrib/freebsd/include -I/usr/local/include -DLIBICONV_PLUG  -O2 -pipe -march=native  -DLIBICONV_PLUG -fstack-protector -fno-strict-aliasing -MT libv4lconvert_la-jpeg.lo -MD -MP -MF .deps/libv4lconvert_la-jpeg.Tpo -c -o libv4lconvert_la-jpeg.lo `test -f 'jpeg.c' || echo './'`jpeg.c
libtool: compile:  cc -DHAVE_CONFIG_H -I. -I../.. -fvisibility=hidden -I../../lib/include -Wall -Wpointer-arith -D_GNU_SOURCE -I../../contrib/freebsd/include -I/usr/local/include -DLIBICONV_PLUG -O2 -pipe -march=native -DLIBICONV_PLUG -fstack-protector -fno-strict-aliasing -MT libv4lconvert_la-jpeg.lo -MD -MP -MF .deps/libv4lconvert_la-jpeg.Tpo -c jpeg.c  -fPIC -DPIC -o .libs/libv4lconvert_la-jpeg.o
In file included from jpeg.c:24:
./jpeg_memsrcdest.h:4:1: error: conflicting types for 'jpeg_mem_src'
jpeg_mem_src (j_decompress_ptr cinfo, unsigned char * buffer,
^
/usr/local/include/jpeglib.h:923:14: note: previous declaration is here
EXTERN(void) jpeg_mem_src (j_decompress_ptr cinfo,
             ^
1 error generated.
gmake[4]: *** [Makefile:838: libv4lconvert_la-jpeg.lo] Error 1


I have instlled jpeg-turbo-1.5.0. Possibly it's related to it.
Comment 1 Thomas Zander freebsd_committer freebsd_triage 2016-10-03 12:36:46 UTC
jpeg-turbo-1.5.0 is not in the ports tree. Did you install this manually?
Comment 2 iron.udjin 2016-10-03 15:42:23 UTC
(In reply to Thomas Zander from comment #1)

No. It was installed automatically as a dependency of some application in the port tree.

Here is it in the ports tree: http://www.freshports.org/graphics/jpeg-turbo
Comment 3 iron.udjin 2016-10-03 15:45:34 UTC
Ah...sorry, I see 1.4.2 version in the ports tree. Possibly yes, it was installed by hands, but I don't quite remember when and who instaled it. I'll downgrade jpeg-turbo and test again.
Comment 4 iron.udjin 2016-10-03 16:08:16 UTC
With jpeg-turbo-1.4.2 libv4l compilles fine. We can close this PR.

P.S: it would be great to upgrade jpeg-turbo up to 1.5.1 version. Only libv4l had problems with jpeg-turbo-1.5.0 version. All other ports were compilled fine.
Comment 5 Hans Petter Selasky freebsd_committer freebsd_triage 2016-10-03 16:19:41 UTC
Hi,

Did you check if a newver version of libv4l solves this issue?

--HPS
Comment 6 Hans Petter Selasky freebsd_committer freebsd_triage 2016-10-03 16:20:11 UTC
s/newver/newer/
Comment 7 iron.udjin 2016-10-03 17:19:27 UTC
(In reply to Hans Petter Selasky from comment #6)
Yes, I've tested a few versions. 1.8.0 and 1.8.1 fail to compille with the same error. 1.10.1 - compilles fine with jpeg-turbo-1.5.1.
Comment 8 Thomas Zander freebsd_committer freebsd_triage 2016-12-04 16:51:09 UTC
This compiles fine with an up to date ports tree irrespective of whether jpeg-turbo from ports is installed or not. Closing for now.