# Webp error - undefined reference to `png_set_longjmp_fn'



## beamar (Feb 20, 2013)

*T*rying to install ImageMagick on 9.1 and when I try to install webp, I get the following error:


```
===>  Building for webp-0.1.3_1
make  all-recursive
Making all in src
Making all in dec
Making all in enc
Making all in dsp
Making all in utils
Making all in examples
/bin/sh ../libtool --tag=CC    --mode=link cc  -O2 -pipe -fno-strict-aliasing    -o dwebp dwebp-dwebp.o ../src/libwebp.la -L/usr/local/lib -lpng -ljpeg
libtool: link: cc -O2 -pipe -fno-strict-aliasing -o .libs/dwebp dwebp-dwebp.o  ../src/.libs/libwebp.so -L/usr/local/lib /usr/local/lib/libpng12.so -lz -lm /usr/local/lib/libjpeg.so -Wl,-rpath -Wl,/usr/local/lib
dwebp-dwebp.o: In function `error_function':
dwebp.c:(.text+0x1f): undefined reference to `png_set_longjmp_fn'
dwebp-dwebp.o: In function `WritePNG':
dwebp.c:(.text+0xae): undefined reference to `png_set_longjmp_fn'
*** [dwebp] Error code 1

Stop in /usr/ports/graphics/webp/work/libwebp-0.1.3/examples.
*** [all-recursive] Error code 1

Stop in /usr/ports/graphics/webp/work/libwebp-0.1.3.
*** [all] Error code 1

Stop in /usr/ports/graphics/webp/work/libwebp-0.1.3.
*** [do-build] Error code 1

Stop in /usr/ports/graphics/webp.
```

Using  libpng-1.5.14

Any ideas?


----------



## beamar (Feb 21, 2013)

*G*et the same error installing jbig2dec:


```
===>  Building for jbig2dec-0.11_1
make  all-am
/bin/sh ./libtool --mode=link cc  -O2 -pipe -I/usr/local/include/libpng15 -fno-strict-aliasing -Wall -I/usr/local/include   -L/usr/local/lib -o jbig2dec -lmd jbig2dec.o libjbig2dec.la  jbig2_image_png.o -lpng -lz -lm
libtool: link: cc -O2 -pipe -I/usr/local/include/libpng15 -fno-strict-aliasing -Wall -I/usr/local/include -o .libs/jbig2dec jbig2dec.o jbig2_image_png.o  -L/usr/local/lib -lmd ./.libs/libjbig2dec.so /usr/local/lib/libpng12.so -lz -lm -Wl,-rpath -Wl,/usr/local/lib
jbig2_image_png.o: In function `jbig2_image_write_png':
jbig2_image_png.c:(.text+0xa6): undefined reference to `png_set_longjmp_fn'
*** [jbig2dec] Error code 1
1 error
*** [all] Error code 2
1 error
*** [do-build] Error code 1

Stop in /usr/ports/graphics/jbig2dec.
*** [install] Error code 1

Stop in /usr/ports/graphics/jbig2dec.
```


----------



## beamar (Feb 21, 2013)

*F*rom what it looks like to me, the system is using /usr/local/lib/libpng12.so and it should be using 15. Not sure how to change the environment to use the correct one.


----------



## wblock@ (Feb 21, 2013)

What does pkg_info -Ix png show?  Have you upgraded png without following /usr/ports/UPDATING?


----------



## beamar (Feb 21, 2013)

```
png-1.5.14          Library for manipulating PNG images
```


----------



## wblock@ (Feb 21, 2013)

And the second question?  The guess there is that something that depends on libpng did not get rebuilt when the png port was rebuilt.

Install sysutils/bsdadminscripts and run pkg_libchk(1).  It will report packages that are missing libraries and need to be rebuilt.


----------



## beamar (Feb 21, 2013)

*W*ill try that now, did a `portupgrade -fr graphics/png`

Wouldn't that rebuild anything that is required?


----------



## beamar (Feb 21, 2013)

```
exim-4.77-1: /usr/sbin/exim misses libpcre.so.0
ghostscript9-nox11-9.06_1: /usr/local/lib/libgs.so.9.06 misses libjbig2dec.so.0
```

I know the second one throws the same error when I try to install it.


----------



## beamar (Feb 21, 2013)

*A*s for upgrading I have just been doing `portupdate -a`


----------



## wblock@ (Feb 21, 2013)

/usr/ports/UPDATING is there because updating some ports requires special steps.  Always, yes _always_ check the new entries in it before upgrading or installing new ports.  pcre as mentioned above is one of the ports that needed special steps.  Unrelated to the png problem, but it shows there are problems.


----------



## beamar (Feb 21, 2013)

Will do in the future. I fixed the pcre error.

To fix the libpng problem, I did a rm of the old libpng12* files. Seems to take care of everything. 


Now onto my new issue!


```
I/O error : Attempt to load network entity http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl
warning: failed to load external entity "http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl"
cannot parse http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl
```


Fix for above error:


```
xsltproc -v http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl eggdbus-binding-tool.xml
```


----------



## wblock@ (Feb 21, 2013)

Just deleting those files is not a good solution.  They are supposed to be managed by the package system.

Please start a new thread for problems that are not described by the thread title.


----------



## beamar (Feb 21, 2013)

wblock@ said:
			
		

> Just deleting those files is not a good solution.  They are supposed to be managed by the package system.
> 
> Please start a new thread for problems that are not described by the thread title.




It's the only one that seemed to work for me. I forget the command I used, but I checked to see what packages were using those files (something with a -w option?) and it returned nothing. As far as I can tell, they were old lib files that should of been deleted and just never were? 


Sorry, didn't want to start a million threads. All of the errors posted in this threat are related to trying to get Imagemagick installed.


Thanks,
Brian


----------

