help-octave
[Top][All Lists]
Advanced

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

Re: " strerror not found" while compiling octave-3.3.51


From: Philip Nienhuis
Subject: Re: " strerror not found" while compiling octave-3.3.51
Date: Wed, 16 Jun 2010 19:06:07 +0200
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.9) Gecko/20100317 SeaMonkey/2.0.4

David Grundberg wrote:
On 06/16/2010 10:29 AM, Philip Nienhuis wrote:
Hi,

While trying to build octave-3.3.51 (downloaded .tar.gz earlier this
week) I get the following error:

(System: Mandrivalinux 2009.1 CoreDuo 2.5 Ghz, 2GB RAM, 32b)

<./configure>
<make>
:
mv -f .deps/liboctinterp_la-defun.Tpo .deps/liboctinterp_la-defun.Plo
/bin/sh ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I.
-I.. -I../libgnu -I../libgnu -I../libcruft/misc -I../liboctave
-I../liboctave -I. -I. -g -O2 -DHAVE_CONFIG_H -mieee-fp
-I/usr/include/freetype2 -Wall -W -Wshadow -Wold-style-cast -Wformat
-g -O2 -pthread -g -O2 -MT liboctinterp_la-dirfns.lo -MD -MP -MF
.deps/liboctinterp_la-dirfns.Tpo -c -o liboctinterp_la-dirfns.lo `test
-f 'dirfns.cc' || echo './'`dirfns.cc
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -I../libgnu -I../libgnu
-I../libcruft/misc -I../liboctave -I../liboctave -I. -I. -g -O2
-DHAVE_CONFIG_H -mieee-fp -I/usr/include/freetype2 -Wall -W -Wshadow
-Wold-style-cast -Wformat -g -O2 -pthread -g -O2 -MT
liboctinterp_la-dirfns.lo -MD -MP -MF .deps/liboctinterp_la-dirfns.Tpo
-c dirfns.cc -fPIC -DPIC -o .libs/liboctinterp_la-dirfns.o
dirfns.cc: In function "int octave_change_to_directory(const
std::string&)":
dirfns.cc:86: error: "strerror" is not a member of "gnulib"
make[3]: *** [liboctinterp_la-dirfns.lo] Error 1
make[3]: Leaving directory `/home/philip/octave-3.3.51/src'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/philip/octave-3.3.51/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/philip/octave-3.3.51'
make: *** [all] Error 2



My problem was that the C++ standard headers on my system were buggy.
For example, the faulty cstring header did an

#include_next <string.h>

instead of the correct (or by gnulib required)

#include <string.h>

Read more here:

http://octave.1599824.n4.nabble.com/build-fails-strerror-is-not-a-member-of-gnulib-td1680164i20.html


You can check this by running:

grep '#include.*string.h' /usr/include/c++/*/cstring

Yep, 5 mins after clicking the "Send" button, Nabble search showed me that thread. Murphy at work.

Indeed, I got the same cstring header problem (I had gcc 4.3.2) and I've upgraded gcc to 4.4.0 but in the meantime my Madrivalinux got borked (I suspect Archlinux wasn't too careful with mounting Mandriva partitions). Again, Murphy at work :-(

I'll install Mandrivalinux 2010.1 and try again (with newer build tools) to build octave-3.3.51.
Hopefully the contest.c errors will disappear, too.

Thank you,

Philip


reply via email to

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