3.0.2 build failure on RHELv5.1
Jeff Blaine
jblaine at mitre.org
Mon Sep 22 21:56:31 CDT 2008
Jeff Blaine wrote:
> Jeff Blaine wrote:
>> John W. Eaton wrote:
>>> On 22-Sep-2008, Jeff Blaine wrote:
>>>
>>> | That's correct:
>>> | | octave-3.0.2:beijing> grep ZLIB config.h
>>> | /* Define if ZLIB is available. */
>>> | #define HAVE_ZLIB 1
>>> | #define HAVE_ZLIB_H 1
>>> | octave-3.0.2:beijing>
>>> | | It's possible there is some other zlib.h being included, but
>>> | there is no reasonable explanation as to why. For example:
>>> | | octave-3.0.2:beijing> grep gzclearerr /usr/rcf/include/zlib.h
>>> | octave-3.0.2:beijing>
>>> | | However, I have nothing whatsoever in my shell's environment
>>> | that suggests /usr/rcf anywhere.
>>> | | octave-3.0.2:beijing> env | grep /usr/rcf
>>> | octave-3.0.2:beijing>
>>>
>>> Try the following in your Octave build directory:
>>>
>>> cd src
>>> make CXXFLAGS=-save-temps pic/c-file-ptr-stream.o
>>>
>>> then look at the resulting c-file-ptr-stream.ii file (it will be in
>>> the src directory, not the src/pic directory) and see if it gives you
>>> any clues about why these symbols are not declared. It should at
>>> least tell you which zlib.h file is included and precisely what the
>>> declaration for gzclearerr is, assuming it is there.
>>>
>>> When I do this, I see
>>>
>>> # 1 "/usr/include/zlib.h" 1 3 4
>>>
>>> in the .ii file at the point where zlib.h is included, and
>>>
>>> extern void gzclearerr (gzFile file);
>>>
>>> later on in the file. What happens on your system?
>>>
>>> jwe
>>
>> I see:
>>
>> # 1 "/usr/local/include/zlib.h" 1 3
>>
>> And this is the same path as /usr/rcf/include/zlib.h (one
>> is symlinked to another).
>>
>> Configure is being a little too helpful on its own by
>> searching /usr/local, which I don't want.
>>
>> I even see this in ChangeLog.1 from 1992 :)
>>
>> ===================================================================
>> Fri Dec 4 01:51:05 1992 John W. Eaton (jwe at schoch.che.utexas.edu)
>>
>> * configure.in (INCDIRS): Don't include /usr/local/include.
>> (LIBDIRS): Don't include /usr/local/lib.
>> ===================================================================
>>
>> I've now edited configure and changed ac_default_prefix to
>> read "/tmp" instead of "/usr/local" and started a build.
>
> This did not solve the problem. Same error.
>
> Got any ideas how to get the build to stop looking in
> /usr/local?
I ended up building zlib 1.2.3 into /usr/local (aka /usr/rcf)
as a workaround. I still consider it a bug though :)
More information about the Bug-octave
mailing list