# Upgrade of evince fails



## gps23 (Aug 1, 2011)

I am using FreeBSD 8.2 Release. I am unable to upgrade Evince.
When I try to upgrade Evince using `# portupgrade evince`
I get the following error:

```
tiff2ps.c: In function 'PS_Lvl2page':
tiff2ps.c:1131: warning: format '%u' expects type 'unsigned int', but argument 3 has type 'tsize_t'
  CCLD   libtiffdocument.la
grep: /usr/local/lib/liblzma.la: No such file or directory
sed: /usr/local/lib/liblzma.la: No such file or directory
gnome-libtool: link: `/usr/local/lib/liblzma.la' is not a valid libtool archive
gmake[3]: *** [libtiffdocument.la] Error 1
gmake[3]: Leaving directory `/usr/ports/graphics/evince/work/evince-2.32.0/backend/tiff'
gmake[2]: *** [all-recursive] Error 1
gmake[2]: Leaving directory `/usr/ports/graphics/evince/work/evince-2.32.0/backend'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/usr/ports/graphics/evince/work/evince-2.32.0'
gmake: *** [all] Error 2
*** Error code 1

Stop in /usr/ports/graphics/evince.
*** Error code 1

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

I have checked UPDATING and ran the command
`# portupgrade -o archivers/xz lzmautils\*`
but it gives no output.

Also I cannot delete xz:
`# sudo pkg_deinstall xz`

```
** No matching package found.
```

When trying to reinstall xz, I get the following error:
`# sudo make reinstall`

```
===>  xz-5.0.3 is already in the base system.
*** Error code 1

Stop in /usr/ports/archivers/xz.
```

I have tried to fix this problem by installing lzma (along with xz) but still evince compilation is giving same error.

There is a thread where OP fixed same problem by reinstalling xz:
http://forums.freebsd.org/showthread.php?t=24880
using
`# pkg_add -r -f xz`
and then running portupgrade command
`# portupgrade -o archivers/xz lzmautils\*`
but I am unable to do the same because pkg_add is unable to find package for xz (may be because I have updated ports)
Please help.


----------



## wblock@ (Aug 1, 2011)

gps23 said:
			
		

> I am using FreeBSD 8.2 Release. I am unable to upgrade Evince.
> ...
> I have checked UPDATING and ran the command
> `# portupgrade -o archivers/xz lzmautils\*`
> but it gives no output.



Of course not, xz has been in the base system for ages.  See the dates at the front of the line in UPDATING?  FreeBSD-8.2 came out in 2011.  Entries from before then are already included.



> When trying to reinstall xz, I get the following error:
> `# sudo make reinstall`
> 
> ```
> ...



Slow down.  Figure out the last time your ports were updated, most likely the 8.2-RELEASE date:
`% ls -ltr /var/db/pkg | tail -n1`

Find the date on that line.  Update your ports tree with portsnap(8).  If there are procedures in UPDATING after that date that apply to you, but you haven't done, do them.

My guess is that the problem with evince is from 20110730:

```
AFFECTS: users of x11-toolkits/gtk20
  AUTHOR: [email]gnome@FreeBSD.org[/email]

  The gtk-update-icon-cache utility has been split out of the gtk20 port.
  Use the following instructions to update your system.

  # pkg_delete -f gtk-2.\*
  # portmaster x11-toolkits/gtk20
  # portmaster -a
```

See Upgrading FreeBSD Ports for a brief overview.


----------



## gps23 (Aug 2, 2011)

First of all thanks for replying.



			
				wblock said:
			
		

> Of course not, xz has been in the base system for ages.  See the dates at the front of the line in UPDATING?  FreeBSD-8.2 came out in 2011.  Entries from before then are already included.



Yes I have checked the UPDATING. The date is quite old but it doesn't mention that xz is being added to base.




			
				wblock said:
			
		

> Slow down.  Figure out the last time your ports were updated, most likely the 8.2-RELEASE date:
> `% ls -ltr /var/db/pkg | tail -n1`
> 
> Find the date on that line.  Update your ports tree with portsnap(8).  If there are procedures in UPDATING after that date that apply to you, but you haven't done, do them.



I have quite recently updated ports.

`$ ls -ltr /var/db/pkg/ | tail -n1`

```
-rw-r--r--  1 root  wheel  22226944 Aug  1 23:36 pkgdb.db
```



			
				wblock said:
			
		

> My guess is that the problem with evince is from 20110730:
> 
> ```
> AFFECTS: users of x11-toolkits/gtk20
> ...



Hmmmm, that might be true, but I fail to see the connection between evince and gtk20 port but I have limited experience with FreeBSD so you may be right.



			
				wblock said:
			
		

> See Upgrading FreeBSD Ports for a brief overview.


Your page is quite good, especially the section "Updating Ports With Dependencies". Now that I have read it, I will definitely give Portmaster a try. Thanks for sharing the link.


----------



## wblock@ (Aug 2, 2011)

gps23 said:
			
		

> Hmmmm, that might be true, but I fail to see the connection between evince and gtk20 port but I have limited experience with FreeBSD so you may be right.



evince is part of Gnome, so it's reasonable to think it'll use GTK (Gnome Tool Kit).  It depends on poppler-gtk, which depends on GTK.  That said, I don't know for a fact if that's the problem.  But problem compiling Gnome-port-that-uses-gtk combined with recent-change-to-gtk makes it likely.


----------



## gps23 (Aug 2, 2011)

wblock said:
			
		

> evince is part of Gnome, so it's reasonable to think it'll use GTK (Gnome Tool Kit).  It depends on poppler-gtk, which depends on GTK.  That said, I don't know for a fact if that's the problem.  But problem compiling Gnome-port-that-uses-gtk combined with recent-change-to-gtk makes it likely.



I meant I am unable to see connection between "evince failing because of being unable to find *lzma.la files" and changes in gtk20.


----------



## wblock@ (Aug 2, 2011)

gps23 said:
			
		

> I meant I am unable to see connection between "evince failing because of being unable to find *lzma.la files" and changes in gtk20.



Ah.  I was looking at the warning as an error.  Okay, make sure you don't have the xz port installed in either form.
`% pkg_info -Ix xz`
`% pkg_info -Ix lzma`

If it's already installed, delete it, but you have to use the whole name or a pattern match.
`# pkg_delete xz-\*`
`# pkg_delete lzma-\*`

It could also be one of the autotools ports still referring to the old lzma port.  If so, one of the pkg_deletes would fail, showing the dependency that needs to be rebuilt.


----------



## gps23 (Aug 3, 2011)

wblock said:
			
		

> Ah.  I was looking at the warning as an error.  Okay, make sure you don't have the xz port installed in either form.
> `% pkg_info -Ix xz`
> `% pkg_info -Ix lzma`



Only lzma-9.22 was installed. I installed it myself while trying to correct the evince problem.



			
				wblock said:
			
		

> If it's already installed, delete it, but you have to use the whole name or a pattern match.
> `# pkg_delete xz-\*`
> `# pkg_delete lzma-\*`
> 
> It could also be one of the autotools ports still referring to the old lzma port.  If so, one of the pkg_deletes would fail, showing the dependency that needs to be rebuilt.


I removed lzma without any error. I wonder if this problem is coming to anybody else too because if only I am facing this problem then there might be some misconfiguration which could be solved by reinstalling FreeBSD.


----------



## wblock@ (Aug 3, 2011)

evince just built here (8.2-STABLE).

Try rebuilding, but remove the failed build first.
`# cd /usr/ports/graphics/evince`
`# make clean`
`# make install clean`


----------



## gps23 (Aug 4, 2011)

wblock said:
			
		

> evince just built here (8.2-STABLE).
> 
> Try rebuilding, but remove the failed build first.
> `# cd /usr/ports/graphics/evince`
> ...



I removed evince and when trying to reinstall it I encountered same problem.

Then I decided to end the problem by forgetting evince and installed xpdf.
But now when I do "portmaster -a" it again tries to install evince (along with other to-be upgraded ports) and then fails.


----------



## wblock@ (Aug 4, 2011)

gps23 said:
			
		

> Then I decided to end the problem by forgetting evince and installed xpdf.
> But now when I do "portmaster -a" it again tries to install evince (along with other to-be upgraded ports) and then fails.



That says evince is either installed or is being installed as a dependency of something else (Gnome?).  portmaster --check-depends may help to figure out what wants it.


----------



## gps23 (Aug 6, 2011)

Ewald Jenisch kindly posted a solution to this problem in freebsd-questions mailing list.

http://lists.freebsd.org/pipermail/freebsd-questions/2011-August/232558.html

Here is the excerpt:


> Here's what I did (in case others are suffering from this problem too):
> 
> fgrep -e lzma -nHr /usr/local/lib --include='*.la' yielded a bunch of
> results - grep-ed for "/usr/local/lib/liblzma.la".  Then feeded these
> ...



Fortunately or unfortunately I didn't waited long enough and reinstalled FreeBSD with Fluxbox on top of it.

Thank you wblock for replying to my post and trying to help.


----------

