Re: A question for the expert

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



lappin writes:
 > On Sunday 28 December 2003 01:54 pm, Robert Brown wrote:
 > > lappin writes:
 > >  > On Sunday 28 December 2003 01:22 pm, Robert Brown wrote:
 > >  > > lappin writes:
 > >  > >  > >>>>>>>>>>> error <<<<<<<<<<<<<<<<<<<<<
 > >  > >  >
 > >  > >  > make[2]: Entering directory
 > >  > >  > `/usr/local/resin/resin-2.1.11/src/c/plugin/resin' gcc -g -O2
 > >  > >  > -DRESIN_HOME=\"/usr/resin\" -I -I/usr/kerberos/include
 > >  > >  > -I/usr/java/include -I/usr/java/include/linux -I../common
 > >  > >  > -DCPU=\"i386\" -DOS=    -c -o ssl.o ssl.c
 > >  > >  > In file included from /usr/include/openssl/ssl.h:179,
 > >  > >  >                  from ssl.c:62:
 > >  > >  > /usr/include/openssl/kssl.h:72:18: krb5.h: No such file or
 > >  > >  > directory In file included from /usr/include/openssl/ssl.h:179,
 > >  > >  >
 > >  > >  >                  from ssl.c:62:
 > >  > >  > >>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<
 > >  > >
 > >  > > Are you sure you are looking for the right file?  The file that it
 > >  > > can't find is:
 > >  > >
 > >  > >    krb5.h
 > >  > >
 > >  > > and it could be in any directory in the include path.  This means that
 > >  > > you are looking for one of the following:
 > >  > >
 > >  > >     /usr/kerberos/include/krb5.h
 > >  > >     /usr/java/include/krb5.h
 > >  > >     /usr/java/include/linux/krb5.h
 > >  > >     /usr/local/resin/resin-2.1.11/src/c/plugin/common/krb5.h
 > >  > >
 > >  > > Did you actually find one of these files, and the perms are such that
 > >  > > the compiler could read it?
 > >  > >
 > >  > > This does not look like and apache problem, but a compilation
 > >  > > problem.  If you have found one of the files I listed above, and the
 > >  > > compiler cannot find it, then something is bonkers!
 > >  > >
 > >  > > --
 > >  > > --------  "And there came a writing to him from Elijah"  [2Ch 21:12]
 > >  > > -------- R. J. Brown III  rj@xxxxxxxxxxx http://www.elilabs.com/~rj 
 > >  > > voice 859 567-7311 Elijah Laboratories Inc.    P. O. Box 166, Warsaw
 > >  > > KY 41095 fax 859 567-7311 -----  M o d e l i n g   t h e   M e t h o d
 > >  > > s   o f   t h e   M i n d  ------
 > >  >
 > >  > Hi,
 > >  > Thanks you're the first person to respond.  I found the file in one
 > >  > directory.
 > >  >
 > >  > $  ls -ltr /usr/kerberos/include/krb5.h
 > >  > $ -rw-r--r--    1 root     root       112782 Mar 31  2003
 > >  > /usr/kerberos/include/krb5.h
 > >  >
 > >  > Do you think may be the problem is that the file needs to be in all of
 > >  > the directories you listed?  I can copy the file in all of the other
 > >  > directories and try again.  Would you advise that?
 > >
 > > No, don't do that.  We need to figure out why the compiler can't see
 > > the file.  It is in an allowable path, and it is world readable, so it
 > > should see it.  This is very strange.
 > >
 > > You might try the following for a test:
 > >
 > >    $ cd /usr/local/resin/resin-2.1.11/src/c/plugin/resin
 > >    $ gcc -E -C -DRESIN_HOME=\"/usr/resin\" -I -I/usr/kerberos/include
 > > -I/usr/java/include -I/usr/java/include/linux -I../common
 > > -DCPU=\"i386\" -DOS=    -c -o ssl.o ssl.c > ssl.E
 > >
 > > This will run the preprocessor and output to the file ssl.E so that
 > > you can examine it with less, more, your favorite editer, whatever.
 > > You want to take a close look at what is happening near line 62 of
 > > ssl.c to get a clue what is wrong.
 > >
 > > --
 > > --------  "And there came a writing to him from Elijah"  [2Ch 21:12] 
 > > -------- R. J. Brown III  rj@xxxxxxxxxxx http://www.elilabs.com/~rj  voice
 > > 859 567-7311 Elijah Laboratories Inc.    P. O. Box 166, Warsaw KY 41095   
 > > fax 859 567-7311 -----  M o d e l i n g   t h e   M e t h o d s   o f   t h
 > > e   M i n d  ------
 > 
 > 
 > I ran the command: 
 > $ gcc -E -C -DRESIN_HOME=\"/usr/resin\" -I -I/usr/kerberos/include 
 > -I/usr/java/include -I/usr/java/include/linux -I../common-DCPU=\"i386\" -DOS=    
 > -c -o ssl.o ssl.c > ssl.E
 > 
 >  and Here's the response: 
 >  
 > >>>>>>>>>>>>><<<<<<<<< ERROR <<<<<<<<<<<<<<<<<<<<<<<<< 
 > In file included from /usr/include/openssl/ssl.h:179, 
 >                  from ssl.c:62: 
 > /usr/include/openssl/kssl.h:72:18: krb5.h: No such file or directory 
 > >>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 
 >  
 > The file kssl.h is in /usr/include/openssl and it is including <krb5.h> but 
 > krb5.h is not in /usr/include/openssl.  Here's the exact include statement 
 > that's causing the problem 
 >  
 > >>>>>>>>>>>>>>>>>>>>>>>>>> EXCERPT FROM kssl.h  >>>>> 
 > #ifndef OPENSSL_NO_KRB5 
 > #include <stdio.h> 
 > #include <ctype.h> 
 > #include <krb5.h>      ##### ERROR LINE 
 > #ifdef  __cplusplus 
 > extern "C" { 
 > #endif 
 > >>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
 >  
 > Judging by this it seems that krb5.h needs to be in /usr/include/openssl/.  
 > It's not.  Although, from what I remember that shouldn't be a problem because 
 > the compiler should search all paths included.  But that's my best assessment 
 > from what I see, Does that make any sense? 

Eurika!  There's your problem!  The file name is in angle brackets
instead of in quotes.  This means that it will be searched for only in 
system directories, such as /usr/include, and not user supplied
directories.  It is only looking for krb5.h in /usr/include of one of
its subdirectories.  If you change the angle brackets to  double
quotes, it should work.

But the question remains, why did the original use angle brackets?  Is 
theree a *DIFFERENT* version supposed to be in /usr/include?  Was
there just coincidentally a krb5.h in /usr/include on the original
build system, so it worked in spite of the mistake?  I do not know the 
intent here of the original programmer, but you can either change the
angle brackets to double quotes in the source file, or you can copy
the krb5.h file into /usr/include -- its you choice how to crock it.

-- 
--------  "And there came a writing to him from Elijah"  [2Ch 21:12]  --------
R. J. Brown III  rj@xxxxxxxxxxx http://www.elilabs.com/~rj  voice 859 567-7311
Elijah Laboratories Inc.    P. O. Box 166, Warsaw KY 41095    fax 859 567-7311
-----  M o d e l i n g   t h e   M e t h o d s   o f   t h e   M i n d  ------


-- 
redhat-list mailing list
unsubscribe mailto:redhat-list-request@xxxxxxxxxx?subject=unsubscribe
https://www.redhat.com/mailman/listinfo/redhat-list

[Index of Archives]     [CentOS]     [Kernel Development]     [PAM]     [Fedora Users]     [Red Hat Development]     [Big List of Linux Books]     [Linux Admin]     [Gimp]     [Asterisk PBX]     [Yosemite News]     [Red Hat Crash Utility]


  Powered by Linux