octave-maintainers
[Top][All Lists]
Advanced

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

Re: Default not compiling


From: Daniel J Sebald
Subject: Re: Default not compiling
Date: Thu, 20 Sep 2012 19:31:49 -0500
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.24) Gecko/20111108 Fedora/3.1.16-1.fc14 Thunderbird/3.1.16

On 09/20/2012 10:17 AM, John W. Eaton wrote:
On 20-Sep-2012, JuanPi wrote:

| Hi,
| Since today the default branches fails to compile
|
| interpfcn/graphics.cc: In member function ‘int
| gh_manager::do_process_events(bool)’:
| interpfcn/graphics.cc:8206: error: ‘Fdrawnow’ was not declared in this scope
| make[3]: *** [interpfcn/interpfcn_libinterpfcn_la-graphics.lo] Error 1
|
| Anyone knows how to fix this?

Try removing the file libinterp/builtin-defun-decls.h from your build
tree and then run make again.

If it still fails, or if you don't have a builtin-defun-decls.h, or if
it doesn't contain any declarations, then there must be some other
problem and I'll need more details.

fresh clone
./bootstrap
../octave/configure
(no libinterp/builtin-defun-decls.h file present)
make
(octave starts compiling, but I don't see any MAKE_BUILTINs rolling by the screen; Array-i.cc and so on are compiling but I've yet to see a libinterp/builtin-defun-decls.h file, then...) libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../octave/libinterp -I.. -I../../octave/liboctave/cruft/misc -I../../octave/liboctave/array -I../liboctave/numeric -I../../octave/liboctave/numeric -I../liboctave/operators -I../../octave/liboctave/operators -I../../octave/liboctave/system -I../../octave/liboctave/util -I../../octave/libinterp/octave-value -I../../octave/libinterp/operators -Iparse-tree -I../../octave/libinterp/parse-tree -Iinterp-core -I../../octave/libinterp/interp-core -Iinterpfcn -I../../octave/libinterp/interpfcn -Icorefcn -I../libgnu -I../../octave/libgnu -I/usr/include/freetype2 -Wall -W -Wshadow -Wold-style-cast -Wformat -Wpointer-arith -Wwrite-strings -Wcast-align -Wcast-qual -g -O2 -pthread -MT octave-value/octave_value_liboctave_value_la-ov-usr-fcn.lo -MD -MP -MF octave-value/.deps/octave_value_liboctave_value_la-ov-usr-fcn.Tpo -c ../../octave/libinterp/octave-value/ov-usr-fcn.cc -fPIC -DPIC -o octave-value/.libs/octave_value_liboctave_value_la-ov-usr-fcn.o ../../octave/libinterp/octave-value/ov-usr-fcn.cc: In member function 'void octave_user_function::restore_warning_states()': ../../octave/libinterp/octave-value/ov-usr-fcn.cc:675:42: error: 'Fwarning' was not declared in this scope make[3]: *** [octave-value/octave_value_liboctave_value_la-ov-usr-fcn.lo] Error 1 make[3]: Leaving directory `/usr/local/src/octave/octave-gui_no_casts/build-gui-1/libinterp'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/usr/local/src/octave/octave-gui_no_casts/build-gui-1/libinterp'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/octave/octave-gui_no_casts/build-gui-1'
make: *** [all] Error 2

Somewhere along the way

libinterp/builtin-defun-decls.h
libinterp/builtins.cc
libinterp/octave.df
libinterp/oct-conf.h
libinterp/version.h

were constructed.  (I should have saved the output.)

builtin_defun_decls.h is empty:

[build-gui-1]# cat libinterp/builtin-defun-decls.h
// DO NOT EDIT!  Generated automatically by mkbuiltins.

#if !defined (octave_builtin_defun_decls_h)
#define octave_builtin_defun_decls_h 1

#include "oct-obj.h"

#define DEFUN_DECL(name) \
  extern OCTINTERP_API octave_value_list \
  name (const octave_value_list& = octave_value_list (), int = 0);


#undef DEFUN_DECL

#endif

[build-gui-1]# cat libinterp/builtins.cc

// DO NOT EDIT!  Generated automatically by mkbuiltins.

#ifdef HAVE_CONFIG_H
#include <config.h>
#endif

#include "defun.h"
#include "oct-obj.h"
#include "variables.h"
#include "builtins.h"

#if defined (quad)
#undef quad
#endif

[snip]

static void
install_typecast_fcns (void)
{
// DO NOT EDIT!  Generated automatically by mkdefs.
 XDEFUN_FILE_NAME ("libinterp/corefcn/typecast.cc")
}


void
install_builtins (void)
{
  install_octave_fcns ();
  install_ov_base_fcns ();
  install_ov_bool_mat_fcns ();
[snip]
  install_typecast_fcns ();
}

make (again, but same error message)
touch ../octave/libinterp/interpfcn/error.cc
(why?  just try something, I guess)
make
(compilation proceeds a little further, but fails at...)
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../octave/libinterp -I.. -I../../octave/liboctave/cruft/misc -I../../octave/liboctave/array -I../liboctave/numeric -I../../octave/liboctave/numeric -I../liboctave/operators -I../../octave/liboctave/operators -I../../octave/liboctave/system -I../../octave/liboctave/util -I../../octave/libinterp/octave-value -I../../octave/libinterp/operators -Iparse-tree -I../../octave/libinterp/parse-tree -Iinterp-core -I../../octave/libinterp/interp-core -Iinterpfcn -I../../octave/libinterp/interpfcn -Icorefcn -I../libgnu -I../../octave/libgnu -I/usr/include/freetype2 -Wall -W -Wshadow -Wold-style-cast -Wformat -Wpointer-arith -Wwrite-strings -Wcast-align -Wcast-qual -g -O2 -pthread -MT interpfcn/interpfcn_libinterpfcn_la-graphics.lo -MD -MP -MF interpfcn/.deps/interpfcn_libinterpfcn_la-graphics.Tpo -c ../../octave/libinterp/interpfcn/graphics.cc -fPIC -DPIC -o interpfcn/.libs/interpfcn_libinterpfcn_la-graphics.o ../../octave/libinterp/interpfcn/graphics.cc: In member function 'int gh_manager::do_process_events(bool)': ../../octave/libinterp/interpfcn/graphics.cc:8206:17: error: 'Fdrawnow' was not declared in this scope
make[3]: *** [interpfcn/interpfcn_libinterpfcn_la-graphics.lo] Error 1
make[3]: Leaving directory `/usr/local/src/octave/octave-gui_no_casts/build-gui-1/libinterp'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/usr/local/src/octave/octave-gui_no_casts/build-gui-1/libinterp'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/octave/octave-gui_no_casts/build-gui-1'
make: *** [all] Error 2

The contents of builtin-defun-decls.h now has a partial list that includes "Fwarning", hence the previous error no longer is an issue.

[libinterp]# cat builtin-defun-decls.h
// DO NOT EDIT!  Generated automatically by mkbuiltins.

#if !defined (octave_builtin_defun_decls_h)
#define octave_builtin_defun_decls_h 1

#include "oct-obj.h"

#define DEFUN_DECL(name) \
  extern OCTINTERP_API octave_value_list \
  name (const octave_value_list& = octave_value_list (), int = 0);

DEFUN_DECL (Frethrow);
DEFUN_DECL (Ferror);
DEFUN_DECL (Fwarning);
DEFUN_DECL (Flasterror);
DEFUN_DECL (Flasterr);
DEFUN_DECL (Flastwarn);
DEFUN_DECL (Fusage);
DEFUN_DECL (Fbeep_on_error);
DEFUN_DECL (Fdebug_on_error);
DEFUN_DECL (Fdebug_on_warning);

#undef DEFUN_DECL

#endif

rm libinterp/builtin-defun-decls.h
make
(same result, same error message, contents of -defun-decls.h looks the same)

[build-gui-1]# cat */*.df
// DO NOT EDIT!  Generated automatically by mkdefs.
 XDEFUN_FILE_NAME ("libinterp/octave.cc")

[build-gui-1]# cat */*/*.df
// DO NOT EDIT!  Generated automatically by mkdefs.
 XDEFUN_FILE_NAME ("libinterp/corefcn/balance.cc")
// DO NOT EDIT!  Generated automatically by mkdefs.
 XDEFUN_FILE_NAME ("libinterp/corefcn/besselj.cc")
[snip]
// DO NOT EDIT!  Generated automatically by mkdefs.
 XDEFUN_FILE_NAME ("libinterp/interpfcn/dirfns.cc")
// DO NOT EDIT!  Generated automatically by mkdefs.
 XDEFUN_FILE_NAME ("libinterp/interpfcn/error.cc")
XDEFUN_INTERNAL (rethrow, args, , "-*- texinfo address@hidden {Built-in Function} {} rethrow (@var{err})\nReissue a previous error as defined by @var{err}. @var{err} is a structure\nthat must contain at least the 'message' and 'identifier' fields. @var{err}\ncan also contain a field 'stack' that gives information on the assumed\nlocation of the error. Typically @var{err} is returned address@hidden@seealso{lasterror, lasterr, address@hidden deftypefn")
[snip]
XDEFUN_INTERNAL (error, args, , "-*- texinfo address@hidden {Built-in Function} {} error (@var{template}, @dots{})address@hidden {Built-in Function} {} error (@var{id}, @var{template}, @dots{})\nFormat the optional arguments under the control of the template address@hidden using the same rules as the @code{printf} family
[snip]
@code{regexptranslate} address@hidden, address@hidden deftypefn") XDEFUN_INTERNAL (warning, args, nargout, "-*- texinfo address@hidden {Built-in Function} {} warning (@var{template}, @dots{})address@hidden [snip] XDEFUN_INTERNAL (debug_on_warning, args, nargout, "-*- texinfo address@hidden {Built-in Function} address@hidden =} debug_on_warning ()address@hidden {Built-in Function} address@hidden =} debug_on_warning (@var{new_val})address@hidden {Built-in Function} {} debug_on_warning (@var{new_val}, \"local\")\nQuery or set the internal variable that controls whether Octave will try\nto enter the debugger when a warning is encountered.\n\nWhen called from inside a function with the \"local\" option, the variable is\nchanged locally for the function and any subroutines it calls. The original\nvariable value is restored when exiting the address@hidden deftypefn")
// DO NOT EDIT!  Generated automatically by mkdefs.
 XDEFUN_FILE_NAME ("libinterp/interpfcn/file-io.cc")
// DO NOT EDIT!  Generated automatically by mkdefs.
 XDEFUN_FILE_NAME ("libinterp/interpfcn/graphics.cc")
[snip]

OK, those .df files don't look good.

rm -f */*.df
rm -f */*/*.df
make
(Now I see all the -DMAKE_BUILTINS commands stream by.)
cat */*/*.df
(All the .df files look good...compilation successful.)

Dan


reply via email to

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