octave-maintainers
[Top][All Lists]
Advanced

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

gnulib woes & run-octave fails, suggestions?


From: Jarno Rajahalme
Subject: gnulib woes & run-octave fails, suggestions?
Date: Fri, 2 Apr 2010 16:06:22 -0700

Hi,

I' trying to compile the development version of Octave, and have encountered 
some gnulib-related problems:

1. My system does not have fchownat, and compilation fails in misc/quit.cc:

libtool: compile:  /opt/local/bin/g++-mp-4.4 -DHAVE_CONFIG_H -I. -I.. 
-I/opt/local/include -I../libgnu -I../libgnu -I/opt/local/include -O0 -m64 
-DHAVE_CONFIG_H -I/opt/local/include -I/opt/local/include/freetype2 
-I/opt/local/include -I/opt/local/include -Wall -W -Wshadow -Wold-style-cast 
-Wformat -O0 -m64 -D_THREAD_SAFE -pthread -O0 -m64 -MT misc/libcruft_la-quit.lo 
-MD -MP -MF misc/.deps/libcruft_la-quit.Tpo -c misc/quit.cc  -fno-common -DPIC 
-o misc/.libs/libcruft_la-quit.o
In file included from 
/opt/local/include/gcc44/c++//x86_64-apple-darwin10/bits/gthr-default.h:42,
                from 
/opt/local/include/gcc44/c++//x86_64-apple-darwin10/bits/gthr.h:162,
                from /opt/local/include/gcc44/c++/ext/atomicity.h:34,
                from /opt/local/include/gcc44/c++/bits/ios_base.h:41,
                from /opt/local/include/gcc44/c++/ios:43,
                from /opt/local/include/gcc44/c++/ostream:40,
                from /opt/local/include/gcc44/c++/iostream:40,
                from misc/quit.cc:29:
../libgnu/unistd.h:731: error: 'fchownat' was not declared in this scope
../libgnu/unistd.h:731: error: invalid type in declaration before ';' token

I get past this by commenting this line in libgnu/unistd.h:

_GL_CXXALIASWARN (fchownat);

Maybe the C++ alias warning should be enabled in unistd.in.h only if 
@HAVE_FCHOWNAT@ ?? (no point about warning about non-existing function?)


2. gnulib:: usage warnings, even if the gnulib:: namespace is used in sources:

137 warnings about missing gnulib:: -prefixes, out of which this one was the 
only one that actually did not have it:

file-ops.cc: In function 'std::string octave_canonicalize_file_name(const 
std::string&, std::string&)':
file-ops.cc:780: warning: call to 'realpath' declared with attribute warning: 
The symbol ::realpath refers to the system function. Use gnulib::realpath 
instead.

I followed the suggestion and changed "::realpath" to "gnulib::realpath". After 
that this warning does not come again.

NOTE: only some gnulib:: calls created the warnings, not all of them.

For example, gnulib::open calls generate no warnings, while gnulib::close calls 
do. etc.


3. Finally the compilation fails at doc/interpreter like this:

../../run-octave -f -q -H -p . --eval "geometryimages ('voronoi', 'txt');"
octave(99458) malloc: *** error for object 0x103b28d60: pointer being freed was 
not allocated
*** set a breakpoint in malloc_error_break to debug
panic: Abort trap -- stopping myself...
octave(99458) malloc: *** error for object 0x103b28d60: pointer being freed was 
not allocated
*** set a breakpoint in malloc_error_break to debug
panic: attempted clean up apparently failed -- aborting...
make[3]: *** [voronoi.txt] Abort trap
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Same happens by running ./run-octave by itself:

laptop231:octave rajahalm$ ./run-octave
GNU Octave, version 3.3.51+
Copyright (C) 2010 John W. Eaton and others.
This is free software; see the source code for copying conditions.
There is ABSOLUTELY NO WARRANTY; not even for MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.  For details, type `warranty'.

Octave was configured for "x86_64-apple-darwin10.3.0".

Additional information about Octave is available at http://www.octave.org.

Please contribute if you find this software useful.
For more information, visit http://www.octave.org/help-wanted.html

Read http://www.octave.org/bugs.html to learn how to submit bug reports.

For information about changes from previous versions, type `news'.

octave(35888) malloc: *** error for object 0x103b28d60: pointer being freed was 
not allocated
*** set a breakpoint in malloc_error_break to debug
panic: Abort trap -- stopping myself...
octave(35888) malloc: *** error for object 0x103b28d60: pointer being freed was 
not allocated
*** set a breakpoint in malloc_error_break to debug
panic: attempted clean up apparently failed -- aborting...
Abort trap
laptop231:octave rajahalm$ 


Anyone seen this kind of failure before? Suggestions?

I run these environment variable settings before running ./autogen.sh, 
./configure, & make:

prefix=/opt/local

   export OPTFLAGS="-O2"
   export CPPFLAGS="-g"
   export CFLAGS="$CPPFLAGS -mieee-fp -D_REENTRANT $OPTFLAGS -m64"
   export CXXFLAGS=$CFLAGS
   export FFLAGS=$CFLAGS

   export LDFLAGS="-L${prefix}/lib"

   export CC="gcc-mp-4.4"
   export CPP="cpp-mp-4.4"
   export CXX="g++-mp-4.4"
   export FC="gfortran-mp-4.4"
   export F77="gfortran-mp-4.4"
   export F90="gfortran-mp-4.4"

   export PERL="${prefix}/bin/perl"
   export AWK="${prefix}/bin/gawk"
   export SED="${prefix}/bin/gsed"
   export FLEX="${prefix}/bin/flex"
   export MAKEINFO="${prefix}/bin/makeinfo"
   export TEXI2DVI="${prefix}/bin/texi2dvi"
   export TEXI2PDF="${prefix}/bin/texi2pdf"
   export LIBTOOLIZE="${prefix}/bin/glibtoolize"
   export LIBTOOL="${prefix}/bin/glibtool"


(I tried attaching config.log, but it was too big.)

Thanks,

  Jarno




reply via email to

[Prev in Thread] Current Thread [Next in Thread]