Opened 17 years ago

Closed 16 years ago

Last modified 16 years ago

#12753 closed defect (invalid)

libneon included in gnome-vfs doesn't like /usr/include/gssapi

Reported by: yaseppochi (Stephen J. Turnbull) Owned by: rhwood@…
Priority: Normal Milestone:
Component: ports Version: 1.5.0
Keywords: Cc: rhwood@…, vinc17@…
Port:

Description

 /usr/bin/gcc-4.0 -DHAVE_CONFIG_H -I. -I. -I../.. -DNE_HAVE_DAV -DNE_HAVE_SSL -O2 -I.. -I../.. -I./imported/neon -I/opt/local/include/libxml2 -I/opt/local/include -D_REENTRANT -DORBIT2=1 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include -I/opt/local/include/gconf/2 -I/opt/local/include/orbit-2.0 -I/opt/local/include/libxml2 -I/opt/local/include/dbus-1.0 -I/opt/local/lib/dbus-1.0/include -I/opt/local/include -I/opt/local/include/howl -I/opt/local/include -I../.. -I../.. -I../../libgnomevfs -I../../libgnomevfs -I/opt/local/include -no-cpp-precomp -O2 -MT ne_auth.lo -MD -MP -MF .deps/ne_auth.Tpo -c ne_auth.c  -fno-common -DPIC -o .libs/ne_auth.o
In file included from ne_auth.c:66:
/usr/include/gssapi/gssapi_generic.h:46: error: syntax error before 'extern'
/usr/include/gssapi/gssapi_generic.h:47: error: syntax error before 'extern'
/usr/include/gssapi/gssapi_generic.h:48: error: syntax error before 'extern'
/usr/include/gssapi/gssapi_generic.h:50: error: syntax error before 'extern'
make[3]: *** [ne_auth.lo] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Error: Unable to upgrade port: 1

Attachments (1)

patch-configure.diff (372 bytes) - added by vinc17@… 17 years ago.
patch to avoid the search for gssapi/gssapi_generic.h

Download all attachments as: .zip

Change History (18)

comment:1 Changed 17 years ago by nox@…

Cc: rhwood@… added
Milestone: Port Bugs
Owner: changed from macports-dev@… to rhwood@…

comment:2 Changed 17 years ago by yaseppochi (Stephen J. Turnbull)

MacPorts heimdal includes a <gssapi/gssapi.h>, but not a <gssapi/gssapi_generic.h>, and comes before /usr/include in the path. So I guess the former gets #included from heimdal, and the latter from /usr/include. Why GNOME VFS includes a libneon (from 2004, yet) that #includes gssapi_generic.h, which simply defines a bunch of broken backward-compatibility OIDs, I don't know.

comment:3 Changed 17 years ago by william.allen.simpson@…

duplicate with #12789

comment:4 Changed 17 years ago by rhwood@…

Status: newassigned

Is heimdal installed on your system?

comment:5 Changed 17 years ago by rhwood@…

Also what architecture/os are you using? I am not able to reproduce the errors on my system.

comment:6 Changed 17 years ago by william.allen.simpson@…

10.3.9 Panther iMacG5

Yes, had heimdal, it was previously installed by gnome-vfs:

heimdal                        0.7.2_1 < 1.0.1_0         

port deps heimdal
heimdal has no dependencies

port dependents heimdal
gnome-vfs depends on heimdal

But currently gnome-vfs doesn't say that (need to report a bug in MacPorts itself):

port deps gnome-vfs
gnome-vfs has library dependencies on:
        gnome-mime-data
        gconf
        howl
        neon
        dbus
        openssl
        libidl
        dbus-glib
        libxml2
        libiconv
        gettext

Something odd going on here! So, based on the other report #12789:

sudo port -f uninstall heimdal
Password:
--->  Unable to uninstall heimdal 0.7.2_1, the following ports depend on it:
--->    gnome-vfs
Warning: Uninstall forced.  Proceeding despite dependencies.
--->  Uninstalling heimdal 0.7.2_1

Unfortunately, it didn't help:

sudo port upgrade gnome-vfs
--->  Building gnome-vfs with target all
Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_gnome_gnome-vfs/work/gnome-vfs-2.20.0" && make all " returned error 2
Command output: rm -fr  .libs/libhttp.a .libs/libhttp.la .libs/libhttp.lai .libs/libhttp.so
rm -fr .libs/libhttp.lax
mkdir .libs/libhttp.lax
rm -fr .libs/libhttp.lax/libneon.a
mkdir .libs/libhttp.lax/libneon.a
Extracting /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_gnome_gnome-vfs/work/gnome-vfs-2.20.0/modules/../imported/neon/.libs/libneon.a
(cd .libs/libhttp.lax/libneon.a && ar x /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_gnome_gnome-vfs/work/gnome-vfs-2.20.0/modules/../imported/neon/.libs/libneon.a)
gcc  -o .libs/libhttp.so -bundle  .libs/http-neon-method.o .libs/http-proxy.o  .libs/libhttp.lax/libneon.a/ne_207.o .libs/libhttp.lax/libneon.a/ne_acl.o .libs/libhttp.lax/libneon.a/ne_alloc.o .libs/libhttp.lax/libneon.a/ne_auth.o .libs/libhttp.lax/libneon.a/ne_basic.o .libs/libhttp.lax/libneon.a/ne_compress.o .libs/libhttp.lax/libneon.a/ne_dates.o .libs/libhttp.lax/libneon.a/ne_gnomevfs.o .libs/libhttp.lax/libneon.a/ne_locks.o .libs/libhttp.lax/libneon.a/ne_md5.o .libs/libhttp.lax/libneon.a/ne_props.o .libs/libhttp.lax/libneon.a/ne_redirect.o .libs/libhttp.lax/libneon.a/ne_request.o .libs/libhttp.lax/libneon.a/ne_session.o .libs/libhttp.lax/libneon.a/ne_string.o .libs/libhttp.lax/libneon.a/ne_uri.o .libs/libhttp.lax/libneon.a/ne_utils.o .libs/libhttp.lax/libneon.a/ne_xml.o .libs/libhttp.lax/libneon.a/ne_xmlreq.o   -L/opt/local/lib /opt/local/lib/libgconf-2.dylib /opt/local/lib/libORBit-2.dylib /opt/local/lib/libgmodule-2.0.dylib /opt/local/lib/libgthread-2.0.dylib /opt/local/lib/libgobject-2.0.dylib /opt/local/lib/libglib-2.0.dylib /opt/local/lib/libintl.dylib -lresolv /opt/local/lib/libxml2.dylib /opt/local/lib/libz.dylib -lpthread -lz /opt/local/lib/libiconv.dylib -lm ../libgnomevfs/.libs/libgnomevfs-2.dylib /opt/local/lib/libdbus-glib-1.dylib /opt/local/lib/libdbus-1.dylib /opt/local/lib/libssl.dylib /opt/local/lib/libcrypto.dylib /opt/local/lib/libhowl.dylib
ld: warning -prebind has no effect with -bundle
ld: warning multiple definitions of symbol _locale_charset
/opt/local/lib/libiconv.dylib(localcharset.o) definition of _locale_charset
/opt/local/lib/libintl.dylib(localcharset.o) definition of _locale_charset
rm -fr .libs/libhttp.lax
mkdir .libs/libhttp.lax
rm -fr .libs/libhttp.lax/lt1-libneon.a
mkdir .libs/libhttp.lax/lt1-libneon.a
Extracting /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_gnome_gnome-vfs/work/gnome-vfs-2.20.0/modules/../imported/neon/.libs/libneon.a
(cd .libs/libhttp.lax/lt1-libneon.a && ar x /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_gnome_gnome-vfs/work/gnome-vfs-2.20.0/modules/../imported/neon/.libs/libneon.a)
ar cru .libs/libhttp.a  http-neon-method.o http-proxy.o  .libs/libhttp.lax/lt1-libneon.a/ne_207.o .libs/libhttp.lax/lt1-libneon.a/ne_acl.o .libs/libhttp.lax/lt1-libneon.a/ne_alloc.o .libs/libhttp.lax/lt1-libneon.a/ne_auth.o .libs/libhttp.lax/lt1-libneon.a/ne_basic.o .libs/libhttp.lax/lt1-libneon.a/ne_compress.o .libs/libhttp.lax/lt1-libneon.a/ne_dates.o .libs/libhttp.lax/lt1-libneon.a/ne_gnomevfs.o .libs/libhttp.lax/lt1-libneon.a/ne_locks.o .libs/libhttp.lax/lt1-libneon.a/ne_md5.o .libs/libhttp.lax/lt1-libneon.a/ne_props.o .libs/libhttp.lax/lt1-libneon.a/ne_redirect.o .libs/libhttp.lax/lt1-libneon.a/ne_request.o .libs/libhttp.lax/lt1-libneon.a/ne_session.o .libs/libhttp.lax/lt1-libneon.a/ne_string.o .libs/libhttp.lax/lt1-libneon.a/ne_uri.o .libs/libhttp.lax/lt1-libneon.a/ne_utils.o .libs/libhttp.lax/lt1-libneon.a/ne_xml.o .libs/libhttp.lax/lt1-libneon.a/ne_xmlreq.o 
ranlib .libs/libhttp.a
rm -fr .libs/libhttp.lax .libs/libhttp.lax
creating libhttp.la
(cd .libs && rm -f libhttp.la && ln -s ../libhttp.la libhttp.la)
/bin/sh ../libtool --tag=CC --mode=link gcc  -O2  -L/opt/local/lib -lresolv -flat_namespace -o libftp.la -rpath /opt/local/lib/gnome-vfs-2.0/modules -export_dynamic -avoid-version -module -no-undefined ftp-method.lo -L/opt/local/lib -lgmodule-2.0 -lgthread-2.0 -lgobject-2.0 -lglib-2.0 -lintl -liconv   -L/opt/local/lib -lgssapi -lkrb5 -lasn1 -lcom_err -lcrypto -lroken -lresolv ../libgnomevfs/libgnomevfs-2.la 
gcc  -o .libs/libftp.so -bundle  .libs/ftp-method.o  -L/opt/local/lib /opt/local/lib/libgmodule-2.0.dylib /opt/local/lib/libgthread-2.0.dylib /opt/local/lib/libgobject-2.0.dylib /opt/local/lib/libglib-2.0.dylib /opt/local/lib/libintl.dylib /opt/local/lib/libiconv.dylib -lgssapi -lkrb5 -lasn1 -lcom_err -lcrypto -lroken -lresolv ../libgnomevfs/.libs/libgnomevfs-2.dylib /opt/local/lib/libgconf-2.dylib /opt/local/lib/libORBit-2.dylib /opt/local/lib/libxml2.dylib /opt/local/lib/libdbus-glib-1.dylib /opt/local/lib/libdbus-1.dylib /opt/local/lib/libssl.dylib /opt/local/lib/libcrypto.dylib /opt/local/lib/libz.dylib /opt/local/lib/libhowl.dylib
ld: warning -prebind has no effect with -bundle
ld: can't locate file for: -lgssapi
make[2]: *** [libftp.la] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Error: Unable to upgrade port: 1

A different error, but similar!!!

comment:7 Changed 17 years ago by yaseppochi (Stephen J. Turnbull)

Here's a patch to configure.in that permitted me to build gnome-vfs, with the following warning:

Warning: violation by /dbus-1
Warning: gnome-vfs violates the layout of the ports-filesystems!
Warning: Please fix or indicate this misbehavior (if it is intended), it will be an error in future releases!

To build, I needed to do the equivalent of the following

1.  port clean gnome-vfs
2.  port extract gnome-vfs
3.  cp configure.in configure.in.orig
4.  cp configure configure.orig
5.  patch < $THE_PATCH_BELOW
6.  autoconf
7.  diff -u configure.in.orig configure.in > dports/gnome/gnome-vfs/files/patch-configure
8.  diff -u configure.orig configure >> dports/gnome/gnome-vfs/files/patch-configure
9.  add the line "patchfiles patch-configure" to Portfile
10. port clean gnome-vfs
11. port upgrade gnome-vfs

I'd provide the patch-configure file, but due to version skew between the ports tree autoconf (2.59) and the one I have installed (2.61), the configure patch is huge and the tracker barfed. It's wrong, anyway, of course, since it will break things if heimdal isn't installed.

--- configure.in.orig   2007-09-17 10:01:27.000000000 -0700
+++ configure.in        2007-11-25 02:30:53.000000000 -0800
@@ -463,7 +463,9 @@
        AC_CHECK_FUNCS(gss_init_sec_context, [
            AC_MSG_NOTICE([GSSAPI authentication support enabled])
            AC_DEFINE(HAVE_GSSAPI, 1, [Define if GSSAPI support is enabled])
-           AC_CHECK_HEADERS(gssapi/gssapi_generic.h)
+           # This picks up Apple's /usr/include/gssapi/gssapi_generic.h
+           # which doesn't work properly with Heimdal
+           # AC_CHECK_HEADERS(gssapi/gssapi_generic.h)
                 have_gssapi=yes
         
        # MIT Kerberos lacks GSS_C_NT_HOSTBASED_SERVICE

HTH

comment:8 Changed 17 years ago by vinc17@…

FYI, I've reported the bug upstream: http://bugzilla.gnome.org/show_bug.cgi?id=509630

The bug is still there in 2.20.1.

Changed 17 years ago by vinc17@…

Attachment: patch-configure.diff added

patch to avoid the search for gssapi/gssapi_generic.h

comment:9 Changed 17 years ago by vinc17@…

I've tried the attached patch with gnome-vfs 2.20.1 (using a cleaned-up Portfile).

comment:10 Changed 17 years ago by rhwood@…

Is this still an issue with the current gnome-vfs?

comment:11 Changed 17 years ago by yaseppochi (Stephen J. Turnbull)

As far as I can tell it is not, but it is hard to replicate the exact environment where the problem occurred. In any case, removing both packages and their archives, removing my hack to the gnoe-vfs Portfile, then reinstalling resulted in successful builds and installs for both ports.

comment:12 in reply to:  10 Changed 16 years ago by vinc17@…

Replying to rhwood@macports.org:

Is this still an issue with the current gnome-vfs?

Yes, I've upgraded gnome-vfs (2.22.0_1 is now installed). And the upgrade to neon 0.28.2 fails with the same error.

comment:13 Changed 16 years ago by vinc17@…

Cc: vinc17@… added

Cc Me!

comment:14 Changed 16 years ago by vinc17@…

In fact, the problem is no longer in gnome-vfs, but in port neon.

comment:15 in reply to:  14 Changed 16 years ago by vinc17@…

Replying to vinc17@macports.org:

In fact, the problem is no longer in gnome-vfs, but in port neon.

So, I've submitted #16222.

comment:16 Changed 16 years ago by rhwood@…

Resolution: invalid
Status: assignedclosed

This appears to have been resolved in #16222.

comment:17 Changed 16 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

Note: See TracTickets for help on using tickets.