# cyrus-sasl2 fails to update



## esheesle (Nov 4, 2013)

I get the following error when running portupgrade for cyrus-sasl2 (freebsd FreeBSD 8.4):


```
===>  Building package for cyrus-sasl-2.1.26_3
Creating package /usr/ports/security/cyrus-sasl2/work/cyrus-sasl-2.1.26_3.tbz
Registering depends: mysql56-client-5.6.14 openssl-1.0.1_8.
Creating bzip'd tar ball in '/usr/ports/security/cyrus-sasl2/work/cyrus-sasl-2.1.26_3.tbz'
tar: lib/sasl2/libgssapiv2.a: Cannot stat: No such file or directory
tar: lib/sasl2/libgssapiv2.la: Cannot stat: No such file or directory
tar: lib/sasl2/libgssapiv2.so: Cannot stat: No such file or directory
tar: lib/sasl2/libgssapiv2.so.3: Cannot stat: No such file or directory
tar: Error exit delayed from previous errors.
pkg_create: make_dist: tar command failed with code 256
*** Error code 1

Stop in /usr/ports/security/cyrus-sasl2.
*** Error code 1

Stop in /usr/ports/security/cyrus-sasl2.
```
Any ideas?


----------



## esheesle (Nov 4, 2013)

Looking through the initial make command output I am also getting this:
 Disabling GSSAPI - no library


----------



## esheesle (Nov 4, 2013)

Managed to get it to compile by installing krb5 (no clue how this wasn't already there). Seems like all this started after upgrading from 8.3->8.4.

Now I'm having the below error with curl:


```
configure: error: one or more libs available at link-time are not available run-time. Libs used at link-time: -L/usr/lib -lgssapi -lheimntlm -lkrb5 -lhx509 -lcom_err -lcrypto -lasn1 -lroken -lcrypt -lz
```

Thoughts?


----------



## Mikanoshi (Nov 5, 2013)

Exact same problem, but installing krb5 doesn't work for me.
You can install curl by disabling GSSAPI in "make config".
No idea why suddenly auth libs went missing...


----------



## Mikanoshi (Nov 5, 2013)

Adding 
	
	



```
WITHOUT_GSSAPI=1
```
 to make.conf allowed me to make and install cyrus-sasl2. How to restore GSSAPI libraries? I don't use it and don't even know what it is  but it seems that many ports compile with GSSAPI by default.


----------



## ShelLuser (Nov 5, 2013)

I've had issues too this evening, but those turned out to be staging related.


```
test -z "/usr/local/libdata/pkgconfig" || /bin/mkdir -p "/usr/ports/security/cyr
us-sasl2/work/stage/usr/local/libdata/pkgconfig"
 install  -o root -g wheel -m 444 libsasl2.pc '/usr/ports/security/cyrus-sasl2/w
ork/stage/usr/local/libdata/pkgconfig'
====> Compressing man pages (compress-man)
===>  Building package for cyrus-sasl-2.1.26_3
Creating package /usr/ports/security/cyrus-sasl2/work/cyrus-sasl-2.1.26_3.tbz
Registering depends: db41-4.1.25_4 sqlite-2.8.17_1.
Creating bzip'd tar ball in '/usr/ports/security/cyrus-sasl2/work/cyrus-sasl-2.1
.26_3.tbz'
===>  Installing for cyrus-sasl-2.1.26_3
===>  Checking if security/cyrus-sasl2 already installed
*** [install-package] Error code 1

Stop in /usr/ports/security/cyrus-sasl2.
*** [install] Error code 1

Stop in /usr/ports/security/cyrus-sasl2.
```
When going to the security/cyrus-sasl2 directory itself it build just find (using `# make build` obviously) but the moment I tried to re-install it it gave out an error which mentioned something in the likes of:


```
./INSTALL permission denied
```
(not the actual error, I always log updates but not manually done installations).

Although its officially not supported adding the following to /etc/make.conf fixed this particular issue for me:


```
NO_STAGE=yes
```
As mentioned before this option is not officially supported and should not be used casually. But sometimes it does manage to solve issues which packages which apparently are still having some problems with their staging support.


----------



## kpa (Nov 6, 2013)

If you have to use NO_STAGE for a port do it this way in make.conf:


```
.if ${.CURDIR:M*/security/cyrus-sasl2}
NO_STAGE=yes
.endif
```

Setting NO_STAGE unconditionally for all ports is a bad idea because the ports that have already been converted to staging will then fail. Expect the NO_STAGE option to be removed in the near future and non-stageble ports to be also removed from the ports tree.


----------

