# cannot install x11-toolkits/gtk20.



## ccc (Mar 2, 2012)

hi

I have 7.4-RELEASE-p3 and newest ports tree update, but cannot install x11-toolkits/gtk20 from ports due the following errors:
	
	



```
# cd /usr/ports/ftp/gftp
# make install clean
.................................................................
.................................................................
.................................................................
Traceback (most recent call last):
  File "/usr/local/bin/g-ir-scanner", line 43, in <module>
    from giscanner.scannermain import scanner_main
  File "/usr/local/lib/gobject-introspection/giscanner/scannermain.py", line 34, in <module>
    from giscanner.dumper import compile_introspection_binary
  File "/usr/local/lib/gobject-introspection/giscanner/dumper.py", line 26, in <module>
    from .gdumpparser import IntrospectionBinary
  File "/usr/local/lib/gobject-introspection/giscanner/gdumpparser.py", line 30, in <module>
    from .transformer import TransformerException
  File "/usr/local/lib/gobject-introspection/giscanner/transformer.py", line 28, in <module>
    from .girparser import GIRParser
  File "/usr/local/lib/gobject-introspection/giscanner/girparser.py", line 26, in <module>
    from .girwriter import COMPATIBLE_GIR_VERSION
  File "/usr/local/lib/gobject-introspection/giscanner/girwriter.py", line 25, in <module>
    from .xmlwriter import XMLWriter
  File "/usr/local/lib/gobject-introspection/giscanner/xmlwriter.py", line 71, in <module>
    from giscanner._giscanner import collect_attributes
[B]ImportError: Shared object "libpcre.so.0" not found, required by "_giscanner.so"
gmake[4]: *** [Gdk-2.0.gir] Error 1
gmake[4]: Leaving directory `/usr/ports/x11-toolkits/gtk20/work/gtk+-2.24.6/gdk'
gmake[3]: *** [all-recursive] Error 1
gmake[3]: Leaving directory `/usr/ports/x11-toolkits/gtk20/work/gtk+-2.24.6/gdk'
gmake[2]: *** [all] Error 2
gmake[2]: Leaving directory `/usr/ports/x11-toolkits/gtk20/work/gtk+-2.24.6/gdk'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/usr/ports/x11-toolkits/gtk20/work/gtk+-2.24.6'
gmake: *** [all] Error 2
*** Error code 1
[/B]
```

BTW I've done already portupgrade -a, but didn't help.


----------



## wblock@ (Mar 3, 2012)

Always check /usr/ports/UPDATING before upgrading ports.  There's a note about pcre in there.


----------



## ccc (Mar 3, 2012)

wblock@ said:
			
		

> Always check /usr/ports/UPDATING before upgrading ports.  There's a note about pcre in there.



I've already done [cmd=]portupgrade devel/pcre[/cmd] according to /usr/ports/UPDATING, but it doesn't help.


----------



## kpa (Mar 3, 2012)

Recompile devel/gobject-introspection first, the error you're seeing comes from missing devel/pcre shared library that the port depends on.


----------



## wblock@ (Mar 3, 2012)

ccc said:
			
		

> I've already done [cmd=]portupgrade devel/pcre[/cmd] according to /usr/ports/UPDATING, but it doesn't help.



Doing that after pcre has already been upgraded is too late.  Now all the ports that depend on pcre need to be rebuilt to use the new version.  It's been a while since I used portupgrade, but I think it would be
`# portupgrade -fr pcre`

The manual way is to install sysutils/bsdadminscripts and run pkg_libchk(1).  That will show anything still depending on the old version of pcre.


----------



## ccc (Mar 3, 2012)

wblock@ said:
			
		

> Doing that after pcre has already been upgraded is too late.  Now all the ports that depend on pcre need to be rebuilt to use the new version.  It's been a while since I used portupgrade, but I think it would be
> `# portupgrade -fr pcre`
> 
> The manual way is to install sysutils/bsdadminscripts and run pkg_libchk(1).  That will show anything still depending on the old version of pcre.



I've done what you suggested and now I get the following erros:
	
	



```
/libexec/ld-elf.so.1: Shared object "libpcre.so.0" not found, required by "libatk-1.0.so.0"
Command '['/usr/ports/x11-toolkits/gtk20/work/gtk+-2.24.6/gtk/tmp-introspectBRzCpX/Gtk-2.0', '--introspect-dump=/usr/ports/x11-toolkits/gtk20/work/gtk+-2.24.6/gtk/tmp-introspectBRzCpX/types.txt,/usr/ports/x11-toolkits/gtk20/work/gtk+-2.24.6/gtk/tmp-introspectBRzCpX/dump.xml']' returned non-zero exit status 1
gmake[4]: *** [Gtk-2.0.gir] Error 1
gmake[4]: Leaving directory `/usr/ports/x11-toolkits/gtk20/work/gtk+-2.24.6/gtk'
gmake[3]: *** [all-recursive] Error 1
gmake[3]: Leaving directory `/usr/ports/x11-toolkits/gtk20/work/gtk+-2.24.6/gtk'
gmake[2]: *** [all] Error 2
gmake[2]: Leaving directory `/usr/ports/x11-toolkits/gtk20/work/gtk+-2.24.6/gtk'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/usr/ports/x11-toolkits/gtk20/work/gtk+-2.24.6'
gmake: *** [all] Error 2
*** Error code 1

Stop in /usr/ports/x11-toolkits/gtk20.
*** Error code 1

Stop in /usr/ports/x11-toolkits/gtk20.
```


----------



## kpa (Mar 3, 2012)

`# pkg_info -Rx pcre`, that should give a full list of ports that depend on devel/pcre and require a recompilation (except the ones you already recompiled).


----------



## ccc (Mar 4, 2012)

kpa said:
			
		

> `# pkg_info -Rx pcre`, that should give a full list of ports that depend on devel/pcre and require a recompilation (except the ones you already recompiled).



Thanks, reinstalling all dependencies and *make distclean* solved this problem.


----------

