request for help (uberftp) ...

Ryan Schmidt ryandesign at macports.org
Tue Sep 3 13:55:33 PDT 2013


On Sep 3, 2013, at 15:38, Peter Danecek wrote:

> On Sep 3, 2013, at 22:06 , Ryan Schmidt wrote:
> 
>> On Sep 3, 2013, at 15:00, Peter Danecek wrote:
>> 
>>> I am trying to setup a port for uberftp (or UberFTP). This probably will not end up in there repo soon, as it depends on ports which are not yet official, i.e. the globus stuff from Dennis.
>>> 
>>> However, I now run into some problem. The port would configure, but fails to build. If I use apparently the equivalent procedure manually it build fine and i could even install when I leave the manual build around.
>>> 
>>> The port depends on port:globus-gssapi-gsi (which is not yet official)
>>> 
>>> I attach the main.log. Any hint what is going wrong? 
>> 
>> The log says:
>> 
>> :info:build gsi.c: In function ‘gsi_init_sec_context’:
>> :info:build gsi.c:237: error: ‘GSS_C_GLOBUS_LIMITED_DELEG_PROXY_FLAG’ undeclared (first use in this function)
>> 
>> Where should GSS_C_GLOBUS_LIMITED_DELEG_PROXY_FLAG be defined?
> 
> This is from port:globus-gssapi-gsi
> 
> [radegast:local/include/globus] petr% pwd
> /opt/local/include/globus
> [radegast:local/include/globus] petr% grep GSS_C_GLOBUS_LIMITED_DELEG_PROXY_FLAG *
> gssapi.h: * GSS_C_GLOBUS_LIMITED_DELEG_PROXY_FLAG
> gssapi.h:#define GSS_C_GLOBUS_LIMITED_DELEG_PROXY_FLAG  4096
> [radegast:local/include/globus] petr% port provides gssapi.h
> /opt/local/include/globus/gssapi.h is provided by: globus-gssapi-gsi
> [radegast:local/include/globus] petr% 
> 
> The above path is specified for with -I …
> 
> :info:build /usr/bin/gcc -DHAVE_CONFIG_H -I.   -I/opt/local/include -O -pipe -O2 -arch x86_64 -m64 -fno-common -Wall -I/opt/local/include/globus -I/opt/local/include -I/opt/local/include/globus -I/opt/local/lib/globus/include -no-cpp-precomp -pipe -Os -arch x86_64 -MT uberftp-gsi.o -MD -MP -MF .deps/uberftp-gsi.Tpo -c -o uberftp-gsi.o `test -f 'gsi.c' || echo './'`gsi.c
> 
> In gsi there is this include …
> 
> #include <gssapi.h>
> 
> 
> So I do not see what I am missing.

gssapi.h is also located at /opt/local/include/gssapi.h as provided by the kerberos5 port. Presumably that is being found first, since -I/opt/local/include precedes -I/opt/local/include/globus in the compile line.


>> The other thing I see, which may not be related but which is still a problem, is that it's building with /usr/bin/gcc. That's not the right compiler:
>> 
>> https://trac.macports.org/wiki/UsingTheRightCompiler
> 
> My understanding was that for standard `./configure` scripts base should care about this. The environment variable CC is set during configure

Yes, MacPorts does that.

> and the ./configure script would obey this choice. 

That's entirely up to the configure script. This one appears not to honor this variable.

> Makefile.in has among others the following lines …
> --- snip ---
> CC = @CC@
> CCDEPMODE = @CCDEPMODE@
> CFLAGS = @CFLAGS@
> CPPFLAGS = @CPPFLAGS@
> CYGPATH_W = @CYGPATH_W@
> DEFS = @DEFS@
> DEPDIR = @DEPDIR@
> ECHO_C = @ECHO_C@
> ECHO_N = @ECHO_N@
> ECHO_T = @ECHO_T@
> EXEEXT = @EXEEXT@
> GLOBUS_CC = @GLOBUS_CC@
> --- snap ---
> 
> which in Makefile the become 
> --- snip ---
> CC = /usr/bin/gcc
> CCDEPMODE = depmode=gcc3
> CFLAGS = -pipe -Os -arch x86_64
> CPPFLAGS = -I/opt/local/include
> CYGPATH_W = echo
> DEFS = -DHAVE_CONFIG_H
> DEPDIR = .deps
> ECHO_C = \c
> ECHO_N = 
> ECHO_T = 
> EXEEXT = 
> GLOBUS_CC = /usr/bin/gcc
> --- snap ---
> 
> So the choice is wrong, but I do not see why.

A bug or design error in their configure script, somewhere.


> I find also the following in ./configure --help
> 
> Some influential environment variables:
>  CC          C compiler command
>  CFLAGS      C compiler flags
>  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
>              nonstandard directory <lib dir>
>  LIBS        libraries to pass to the linker, e.g. -l<library>
>  CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
>              you have headers in a nonstandard directory <include dir>


These messages are printed by default for all autoconf-based configure scripts but this particular configure script is not obeying all these variables.




More information about the macports-dev mailing list