texmacs-dev
[Top][All Lists]
Advanced

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

[Texmacs-dev] Re: TeXmacs-1.0.5.4-src: build comments


From: Joris van der Hoeven
Subject: [Texmacs-dev] Re: TeXmacs-1.0.5.4-src: build comments
Date: Sun, 17 Jul 2005 19:19:40 +0200
User-agent: Mutt/1.5.9i

Hi,

I am going through the list of compilation problems you had.
Since I don't have access to any of the architectures you mention,
please take a look at my comments and questions.

On Thu, Jun 23, 2005 at 08:36:10AM -0600, Nelson H. F. Beebe wrote:
> ------------------------------------------------------------------------
> 
> There are hard-coded g++ compilation options in ./src/common.makefile:
> 
>       CXXWARNING = -Wall -Wno-return-type
> 
> Attempts to override this and build with native (non-gcc) compilers
> failed everywhere.  It would be much better if the code could be
> compiled with pretty much any C++ compiler; there are relatively few
> shared library dependencies in texmacs (yeah!!!), so it ought to be
> possible to program it portably to conform to ISO C/C++ and IEEE POSIX
> standards.

I added a configuration option --enable-warnings / --disable-warnings

> ------------------------------------------------------------------------
> 
> Machinetype:            Intel Pentium III (600 MHz);    FreeBSD 5.0
> Remote gcc version:     gcc (GCC) 3.4.3
> Remote g++ version:     g++ (GCC) 3.4.3
> Configure environment:  CC=gcc CXX=g++ LDFLAGS=-Wl,-rpath,/usr/local/lib
> 
> g++ -I./System -I./System/Boot -I./System/Classes -I./System/Files 
> -I./System/Link -I./System/Misc -I./Classes/Abstract -I./Classes/Atomic 
> -I./Classes/Compound -I./Data/Drd -I./Data/String -I./Data/Tree 
> -I./Data/Convert -I./Guile -I./Resource -I./Window -I./Plugins 
> -I/usr/local/include/freetype2 -I/usr/local/include -I/usr/local/include 
> -Wall -Wno-return-type -O3 -fexpensive-optimizations -fno-rtti 
> -fno-exceptions -c ./Window/Widget/Composite/array_widget.cpp -o 
> Objects/array_widget.o
> In file included from ./Window/widget.hpp:15,
>                  from ./Window/Widget/basic_widget.hpp:15,
>                  from ./Window/Widget/composite_widget.hpp:15,
>                  from ./Window/Widget/Composite/array_widget.cpp:16:
> ./Window/event.hpp:20: error: conflicting declaration 'typedef long int 
> time_t'
> /usr/local/lib/gcc/i386-unknown-freebsd5.0/3.4.3/include/sys/types.h:266: 
> error: 'time_t' has a previous declaration as `typedef __time_t time_t'
> ./Window/event.hpp:20: error: declaration of `typedef long int time_t'
> /usr/local/lib/gcc/i386-unknown-freebsd5.0/3.4.3/include/sys/types.h:266: 
> error: conflicts with previous declaration `typedef __time_t time_t'
> ./Window/event.hpp:20: error: declaration of `typedef long int time_t'
> /usr/local/lib/gcc/i386-unknown-freebsd5.0/3.4.3/include/sys/types.h:266: 
> error: conflicts with previous declaration `typedef __time_t time_t'
> make[1]: make[1]: Leaving directory `/local/build/TeXmacs-1.0.5.4-src/src'

How to test whether "time_t" has been defined?
On the supported architectures, I use

#ifndef _TIME_T
#define _TIME_T
typedef long time_t;
#endif

> ------------------------------------------------------------------------
> 
> Machinetype:            Apple PowerMac G4 (2 1400 MHz PowerPC 7450 CPUs, 2GB 
> RAM);   Darwin 7.2.0 (Mac OS 10.3.2 (7D26))
> Remote gcc version:     cc (GCC) 3.3 20030304 (Apple Computer, Inc. build 
> 1495)
> Remote g++ version:     c++ (GCC) 3.3 20030304 (Apple Computer, Inc. build 
> 1495)
> 
> c++ -I./System -I./System/Boot -I./System/Classes -I./System/Files 
> -I./System/Link -I./System/Misc -I./Classes/Abstract -I./Classes/Atomic 
> -I./Classes/Compound -I./Data/Drd -I./Data/String -I./Data/Tree 
> -I./Data/Convert -I./Guile -I./Resource -I./Window -I./Plugins 
> -I/usr/local/include/freetype2 -I/usr/local/include -I/usr/local/include 
> -Wall -Wno-return-type -O2 -fno-rtti -fno-exceptions -INONE/include -c 
> ./Plugins/Ghostscript/ghostscript.cpp -o Objects/ghostscript.o
> c++ -I./System -I./System/Boot -I./System/Classes -I./System/Files 
> -I./System/Link -I./System/Misc -I./Classes/Abstract -I./Classes/Atomic 
> -I./Classes/Compound -I./Data/Drd -I./Data/String -I./Data/Tree 
> -I./Data/Convert -I./Guile -I./Resource -I./Window -I./Typeset 
> -I./Typeset/Bridge -I./Typeset/Concat -I./Typeset/Page -I./Edit -I./Plugins 
> -I./Texmacs -I/usr/local/include/freetype2 -I/usr/local/include 
> -I/usr/local/include -Wall -Wno-return-type -O2 -fno-rtti -fno-exceptions 
> -INONE/include -c ./Guile/Glue/glue_all.cpp -o Objects/glue_all.o
> In file included from ./Guile/Glue/glue_all.cpp:1:
> ./Guile/Glue/glue.cpp: In function `void initialize_glue()':
> ./Guile/Glue/glue.cpp:877: error: invalid conversion from 
> `scm_unused_struct*(*)()' to `scm_unused_struct*(*)(...)'
> ./Guile/Glue/glue.cpp:877: error:   initializing argument 2 of 
> `scm_unused_struct* gh_new_procedure(const char*, scm_unused_struct*(*)(...), 
> int, int, int)'
> ...many more...

Do you have a line

#define DOTS_OK 1

in tm_configure.hpp? In principle, the necessity of ... in function
declarations should be detacted by the ./configure script.

#ifdef DOTS_OK
typedef SCM (*FN)(...);
#else
typedef SCM (*FN)();
#endif

Could you please find out what is going on and tell me what typedef
will result in a successful build?

> ------------------------------------------------------------------------
> 
> Machinetype:            Sun W2100z (2 CPUs, 2000 MHz AMD64 Opteron, 2GB RAM); 
> GNU/Linux 2.6.9-1.681_FC3smp (Fedora Core release 3 (Heidelberg))
> Remote gcc version:     gcc (GCC) 3.3.5
> Remote g++ version:     g++ (GCC) 3.3.5
> 
> g++ -dynamic Objects/analyze.o Objects/array.o Objects/array_widget.o 
> Objects/attribute_event.o Objects/attribute_widget.o Objects/balloon_widget.o 
> Objects/basic.o Objects/basic_boxes.o Objects/basic_event.o 
> Objects/basic_widget.o Objects/bibtex.o Objects/bitmap_font.o Objects/boxes.o 
> Objects/bridge.o Objects/bridge_argument.o Objects/bridge_auto.o 
> Objects/bridge_compound.o Objects/bridge_default.o Objects/bridge_docrange.o 
> Objects/bridge_document.o Objects/bridge_eval.o Objects/bridge_formatting.o 
> Objects/bridge_mark.o Objects/bridge_rewrite.o Objects/bridge_surround.o 
> Objects/bridge_with.o Objects/button_widget.o Objects/canvas_widget.o 
> Objects/cell.o Objects/change_boxes.o Objects/command.o 
> Objects/composite_boxes.o Objects/composite_event.o 
> Objects/composite_widget.o Objects/compound_font.o Objects/concat_active.o 
> Objects/concat_boxes.o Objects/concat_graphics.o Objects/concat_inactive.o 
> Objects/concat_macro.o Objects/concat_math.o Objects/concat_post.o 
> Objects/concat_te!
>  xt.o Objects/concater.o Objects/connection.o Objects/converter.o 
> Objects/curve.o Objects/decoration_boxes.o Objects/dictionary.o 
> Objects/drd_info.o Objects/drd_std.o Objects/dyn_link.o Objects/edit_aux.o 
> Objects/edit_complete.o Objects/edit_cursor.o Objects/edit_delete.o 
> Objects/edit_dynamic.o Objects/edit_footer.o Objects/edit_graphics.o 
> Objects/edit_interface.o Objects/edit_keyboard.o Objects/edit_main.o 
> Objects/edit_math.o Objects/edit_modify.o Objects/edit_mouse.o 
> Objects/edit_search.o Objects/edit_select.o Objects/edit_session.o 
> Objects/edit_spell.o Objects/edit_table.o Objects/edit_text.o 
> Objects/edit_typeset.o Objects/encoding.o Objects/env.o Objects/env_default.o 
> Objects/env_exec.o Objects/env_inactive.o Objects/env_length.o 
> Objects/env_semantics.o Objects/equations.o Objects/evaluate.o 
> Objects/fast_alloc.o Objects/file.o Objects/file_chooser_widget.o 
> Objects/find_font.o Objects/font.o Objects/format.o Objects/formatter.o 
> Objects/frame.o Objects/free_type.o Objects/!
>  from_scheme.o Objects/fromtex.o Objects/fromtm.o Objects/fromx!
>  ml.o Obj
> ects/generic.o Objects/ghostscript.o Objects/glue_all.o Objects/glue_widget.o 
> Objects/glyph.o Objects/glyph_ops.o Objects/glyph_shrink.o 
> Objects/graphics_boxes.o Objects/grid.o Objects/grid_boxes.o 
> Objects/hashfunc.o Objects/hashmap.o Objects/hashmap_extra.o 
> Objects/hashset.o Objects/hashtree.o Objects/hyphenate.o 
> Objects/image_files.o Objects/init_texmacs.o Objects/init_upgrade.o 
> Objects/inittex.o Objects/input.o Objects/input_widget.o 
> Objects/inputs_list_widget.o Objects/ip_observer.o Objects/ispell.o 
> Objects/iterator.o Objects/language.o Objects/layout.o 
> Objects/lazy_paragraph.o Objects/lazy_typeset.o Objects/lazy_vstream.o 
> Objects/line_breaker.o Objects/line_item.o Objects/list.o 
> Objects/list_observer.o Objects/list_widget.o Objects/load_pk.o 
> Objects/load_tex.o Objects/load_tfm.o Objects/make_pages.o 
> Objects/math_boxes.o Objects/math_font.o Objects/math_language.o 
> Objects/misc_boxes.o Objects/modifier_boxes.o Objects/object.o 
> Objects/observer.o Objects/page_breaker.o Obj!
>  ects/page_item.o Objects/page_type.o Objects/pager.o Objects/parsetex.o 
> Objects/parsexml.o Objects/path.o Objects/pipe_link.o Objects/point.o 
> Objects/polynomial.o Objects/popup_button.o Objects/popup_widget.o 
> Objects/printer.o Objects/ps_device.o Objects/rectangles.o 
> Objects/rel_hashmap.o Objects/rubber_boxes.o Objects/script_boxes.o 
> Objects/scroll_event.o Objects/scroll_widget.o Objects/scrollable_widget.o 
> Objects/scrollbar_widget.o Objects/separator_widget.o Objects/skeleton.o 
> Objects/socket_link.o Objects/space.o Objects/stack_boxes.o Objects/stacker.o 
> Objects/stretch_boxes.o Objects/string.o Objects/superpose_boxes.o 
> Objects/switch_widget.o Objects/sys_utils.o Objects/tab.o Objects/table.o 
> Objects/tag_info.o Objects/tex_files.o Objects/tex_font.o Objects/tex_init.o 
> Objects/tex_rubber_font.o Objects/text_boxes.o Objects/text_language.o 
> Objects/text_widget.o Objects/tile_widget.o Objects/timer.o 
> Objects/to_scheme.o Objects/totm.o Objects/translator.o Objects/tree.o Object!
>  s/tree_cursor.o Objects/tree_label.o Objects/tree_position.o O!
>  bjects/t
> ree_traverse.o Objects/tt_face.o Objects/tt_file.o Objects/tt_font.o 
> Objects/typesetter.o Objects/upgradetm.o Objects/url.o Objects/vars.o 
> Objects/verb_language.o Objects/verbatim.o Objects/virtual_font.o 
> Objects/vpenalty.o Objects/wait_widget.o Objects/web_files.o Objects/widget.o 
> Objects/x_display.o Objects/x_drawable.o Objects/x_font.o Objects/x_init.o 
> Objects/x_loop.o Objects/x_window.o Objects/xpm_widget.o Objects/tm_config.o 
> Objects/tm_data.o Objects/tm_file.o Objects/tm_button.o Objects/tm_menus.o 
> Objects/tm_widget.o Objects/tm_scheme.o Objects/tm_server.o Objects/texmacs.o 
> -L/local/build/gcc/TeXmacs-1.0.5.4-src/TeXmacs/lib -lm -Wl,-rpath, 
> -L/usr/X11R6/lib -lXext -lX11 -L/usr/local/lib -lguile -lguile-ltdl 
> -Wl,-rpath,/usr/local/lib -lcrypt -lm -lltdl -ldl -L/usr/local/lib -lfreetype 
> -lz -liconv -ldl -o Objects/texmacs-shared.bin
> 
>  incompatible /usr/X11R6/lib/libXext.so when searching for -lXext
> /usr/bin/ld: skipping incompatible /usr/X11R6/lib/libXext.a when searching 
> for -lXext
> /usr/bin/ld: cannot find -lXext
> 
> The AMD64 has a default 64-bit environment and an extra 32-bit
> environment.  The library path /usr/X11R6/lib leads to the 32-bit
> world, while /usr/X11R6/lib64 is the 64-bit world.  A restart with
> 
> make LDXWINDOW='-L/usr/X11R6/lib64 -lXext -lX11' 
> LDBXWINDOW='-L/usr/X11R6/lib64 -lXext -lX11'
> 
> produced a successful build and a working TeXmacs.

Please tell me which entry should be added for this architecture to
the configure.in, so as to make these options the default.

> ------------------------------------------------------------------------
> 
> Machinetype:            Apple PowerMac G3 (267 MHz);    GNU/Linux 2.4.19-4a 
> (Yellow Dog Linux release 2.3 (Dayton))
> Remote gcc version:     gcc (GCC) 3.2.2
> Remote g++ version:     g++ (GCC) 3.2.2
> Configure environment:  CC=gcc CXX=g++ LDFLAGS="-Wl,-rpath,/usr/local/lib"
> 
> g++ -dynamic Objects/analyze.o Objects/array.o Objects/array_widget.o 
> Objects/attribute_event.o Objects/attribute_widget.o Objects/balloon_widget.o 
> Objects/basic.o Objects/basic_boxes.o Objects/basic_event.o 
> Objects/basic_widget.o Objects/bibtex.o Objects/bitmap_font.o Objects/boxes.o 
> Objects/bridge.o Objects/bridge_argument.o Objects/bridge_auto.o 
> Objects/bridge_compound.o Objects/bridge_default.o Objects/bridge_docrange.o 
> Objects/bridge_document.o Objects/bridge_eval.o Objects/bridge_formatting.o 
> Objects/bridge_mark.o Objects/bridge_rewrite.o Objects/bridge_surround.o 
> Objects/bridge_with.o Objects/button_widget.o Objects/canvas_widget.o 
> Objects/cell.o Objects/change_boxes.o Objects/command.o 
> Objects/composite_boxes.o Objects/composite_event.o 
> Objects/composite_widget.o Objects/compound_font.o Objects/concat_active.o 
> Objects/concat_boxes.o Objects/concat_graphics.o Objects/concat_inactive.o 
> Objects/concat_macro.o Objects/concat_math.o Objects/concat_post.o 
> Objects/concat_te!
>  xt.o Objects/concater.o Objects/connection.o Objects/converter.o 
> Objects/curve.o Objects/decoration_boxes.o Objects/dictionary.o 
> Objects/drd_info.o Objects/drd_std.o Objects/dyn_link.o Objects/edit_aux.o 
> Objects/edit_complete.o Objects/edit_cursor.o Objects/edit_delete.o 
> Objects/edit_dynamic.o Objects/edit_footer.o Objects/edit_graphics.o 
> Objects/edit_interface.o Objects/edit_keyboard.o Objects/edit_main.o 
> Objects/edit_math.o Objects/edit_modify.o Objects/edit_mouse.o 
> Objects/edit_search.o Objects/edit_select.o Objects/edit_session.o 
> Objects/edit_spell.o Objects/edit_table.o Objects/edit_text.o 
> Objects/edit_typeset.o Objects/encoding.o Objects/env.o Objects/env_default.o 
> Objects/env_exec.o Objects/env_inactive.o Objects/env_length.o 
> Objects/env_semantics.o Objects/equations.o Objects/evaluate.o 
> Objects/fast_alloc.o Objects/file.o Objects/file_chooser_widget.o 
> Objects/find_font.o Objects/font.o Objects/format.o Objects/formatter.o 
> Objects/frame.o Objects/free_type.o Objects/!
>  from_scheme.o Objects/fromtex.o Objects/fromtm.o Objects/fromx!
>  ml.o Obj
> ects/generic.o Objects/ghostscript.o Objects/glue_all.o Objects/glue_widget.o 
> Objects/glyph.o Objects/glyph_ops.o Objects/glyph_shrink.o 
> Objects/graphics_boxes.o Objects/grid.o Objects/grid_boxes.o 
> Objects/hashfunc.o Objects/hashmap.o Objects/hashmap_extra.o 
> Objects/hashset.o Objects/hashtree.o Objects/hyphenate.o 
> Objects/image_files.o Objects/init_texmacs.o Objects/init_upgrade.o 
> Objects/inittex.o Objects/input.o Objects/input_widget.o 
> Objects/inputs_list_widget.o Objects/ip_observer.o Objects/ispell.o 
> Objects/iterator.o Objects/language.o Objects/layout.o 
> Objects/lazy_paragraph.o Objects/lazy_typeset.o Objects/lazy_vstream.o 
> Objects/line_breaker.o Objects/line_item.o Objects/list.o 
> Objects/list_observer.o Objects/list_widget.o Objects/load_pk.o 
> Objects/load_tex.o Objects/load_tfm.o Objects/make_pages.o 
> Objects/math_boxes.o Objects/math_font.o Objects/math_language.o 
> Objects/misc_boxes.o Objects/modifier_boxes.o Objects/object.o 
> Objects/observer.o Objects/page_breaker.o Obj!
>  ects/page_item.o Objects/page_type.o Objects/pager.o Objects/parsetex.o 
> Objects/parsexml.o Objects/path.o Objects/pipe_link.o Objects/point.o 
> Objects/polynomial.o Objects/popup_button.o Objects/popup_widget.o 
> Objects/printer.o Objects/ps_device.o Objects/rectangles.o 
> Objects/rel_hashmap.o Objects/rubber_boxes.o Objects/script_boxes.o 
> Objects/scroll_event.o Objects/scroll_widget.o Objects/scrollable_widget.o 
> Objects/scrollbar_widget.o Objects/separator_widget.o Objects/skeleton.o 
> Objects/socket_link.o Objects/space.o Objects/stack_boxes.o Objects/stacker.o 
> Objects/stretch_boxes.o Objects/string.o Objects/superpose_boxes.o 
> Objects/switch_widget.o Objects/sys_utils.o Objects/tab.o Objects/table.o 
> Objects/tag_info.o Objects/tex_files.o Objects/tex_font.o Objects/tex_init.o 
> Objects/tex_rubber_font.o Objects/text_boxes.o Objects/text_language.o 
> Objects/text_widget.o Objects/tile_widget.o Objects/timer.o 
> Objects/to_scheme.o Objects/totm.o Objects/translator.o Objects/tree.o Object!
>  s/tree_cursor.o Objects/tree_label.o Objects/tree_position.o O!
>  bjects/t
> ree_traverse.o Objects/tt_face.o Objects/tt_file.o Objects/tt_font.o 
> Objects/typesetter.o Objects/upgradetm.o Objects/url.o Objects/vars.o 
> Objects/verb_language.o Objects/verbatim.o Objects/virtual_font.o 
> Objects/vpenalty.o Objects/wait_widget.o Objects/web_files.o Objects/widget.o 
> Objects/x_display.o Objects/x_drawable.o Objects/x_font.o Objects/x_init.o 
> Objects/x_loop.o Objects/x_window.o Objects/xpm_widget.o Objects/tm_config.o 
> Objects/tm_data.o Objects/tm_file.o Objects/tm_button.o Objects/tm_menus.o 
> Objects/tm_widget.o Objects/tm_scheme.o Objects/tm_server.o Objects/texmacs.o 
> -L/local/build/TeXmacs-1.0.5.4-src/TeXmacs/lib -lm -Wl,-rpath, 
> -L/usr/local/lib -lXext -lX11 -L/usr/local/lib -lguile -lguile-ltdl -lcrypt 
> -lm -lltdl -ldl -L/usr/local/lib -Wl,--rpath -Wl,/usr/local/lib -lfreetype 
> -lz -liconv -ldl -o Objects/texmacs-shared.bin
> 
> unknown-linux-gnu/bin/ld: cannot find -lXext
> collect2: ld returned 1 exit status
> 
> This is an autoconf bug that impacts a great many packages.  The
> configure script correctly searches X11R6 directories for header
> files, but not for library files.
> 
> A restart with
> 
> make LDXWINDOW="-L/usr/X11R6/lib -L/usr/local/lib -lXext -lX11" 
> LDBXWINDOW="-L/usr/X11R6/lib -L/usr/local/lib -lXext -lX11"
> 
> produced a working TeXmacs.

Like above; I need entries for configure.in in order to correctly guess
this kind of situation.

> ------------------------------------------------------------------------
> 
> Machinetype:            Intel Itanium-2 (1400 MHz) (2 CPUs); GNU/Linux 
> 2.4.18-e.41smp (Red Hat Advanced Server release 2.1AS (Derry))
> 
> Remote gcc version:     2.96
> Remote g++ version:     2.96
> ...
> /usr/bin/ld: cannot find -lXext
> 
> Same problem as for GNU/Linux on PowerPC.  However, the workaround
> failed:
> 
> make LDXWINDOW='-L/usr/X11R6/lib -lXext -lX11' LDBXWINDOW='-L/usr/X11R6/lib 
> -lXext -lX11'
> 
> /usr/bin/c++ -shared Objects/analyze.o Objects/array.o  ...long arglist...
> 
> /usr/bin/ld: Objects/boxes.o: @gprel relocation against dynamic symbol 
> nr_painted
> /usr/bin/ld: Objects/boxes.o: @gprel relocation against dynamic symbol 
> nr_painted
> /usr/bin/ld: Objects/boxes.o: @gprel relocation against dynamic symbol 
> nr_painted
> collect2: ld returned 1 exit status
> make[1]: *** [Objects/texmacs-shared.bin] Error 1

!!!???

Maybe you should try modifying some of the linker (and/or compiler) flags.
You may try the -fPIC option, static/dynamic linking, etc.

> ------------------------------------------------------------------------
> 
> Machinetype:            Intel Itanium-2 (1400 MHz) (2 CPUs); GNU/Linux 
> 2.4.18-e.41smp (Red Hat Advanced Server release 2.1AS (Derry))
> Remote gcc3 version:    3.0.4
> Remote g++3 version:    3.0.4
> Configure environment:  CC=gcc3 CXX=g++3 LDFLAGS="-Wl,-rpath,/usr/local/lib"
> g++3 -I./System -I./System/Boot -I./System/Classes -I./System/Files 
> -I./System/Link -I./System/Misc -I./Classes/Abstract -I./Classes/Atomic 
> -I./Classes/Compound -I./Data/Drd -I./Data/String -I./Data/Tree 
> -I./Data/Convert -I./Guile -I./Resource -I./Window -I./Typeset 
> -I./Typeset/Bridge -I./Typeset/Concat -I./Typeset/Page -I./Edit 
> -I/usr/local/include/freetype2 -I/usr/local/include -I/usr/local/include 
> -Wall -Wno-return-type -O2 -fno-default-inline -fno-inline -fno-rtti 
> -fno-exceptions -c ./Typeset/Boxes/Modifier/change_boxes.cpp -o 
> Objects/change_boxes.o
> In file included from /usr/include/signal.h:324,
>                  from /usr/include/sys/ucontext.h:23,
>                  from /usr/local/include/libguile/continuations.h:49,
>                  from /usr/local/include/libguile.h:63,
>                  from Guile/Scheme/object.hpp:19,
>                  from Guile/scheme.hpp:22,
>                  from Typeset/Boxes/Modifier/change_boxes.cpp:15:
> /usr/include/ucontext.h:32: `ucontext_t' was not declared in this scope
> /usr/include/ucontext.h:32: `__ucp' was not declared in this scope
> /usr/include/ucontext.h:35: parse error before `*' token
> /usr/include/ucontext.h:39: `ucontext_t' was not declared in this scope
> ....

This looks like a bug in Guile and/or signal.h

> ------------------------------------------------------------------------
> 
> Machinetype:            DEC Alpha 4100-5/466 (4 21164 EV5 CPUs, 466 MHz, 2GB 
> RAM);          OSF/1 4.0F
> 
> Remote gcc version:     gcc (GCC) 3.3.3
> Remote g++ version:     g++ (GCC) 3.3.3
> Configure environment:  CC=gcc CFLAGS="-mieee -I/usr/local/include" CXX=g++ 
> CXXFLAGS="-mieee -I/usr/local/include" LDFLAGS="-Wl,-rpath,/usr/local/lib  
> -L/usr/local/lib"
> 
> gcc -lutil src/tm_r.c -o bin/tm_r
> snprintf
> pselect
> 
> This is the ONLY platform among the 20+ flavors of Unix that I have
> that lacks snprintf() and vsnprintf().  I have a locally-installed
> library that provides the portable implementation from
> 
>       http://www.ijs.si/software/snprintf/
> 
> I therefore tried
> 
>       gcc -lutil src/tm_r.c -o bin/tm_r /usr/local/lib/libgccsnprintf.a
> 
> That resolved the missing snprintf(), but left pselect() missing.  On
> each of our build servers, we kept a directory of nm output for all
> known libraries on that system; pselect is not found in any of those
> libraries.
> 
> The rest of the TeXmacs build succeeded, but I've left it uninstalled
> because of the missing plugin tm_r.

This is not really an important problem, because R is merely one among
the twenty plug-ins to TeXmacs. In principle, compilation should finish,
even if one or more errors are encountered in the plug-ins.
Was that indeed the case for you?

> ------------------------------------------------------------------------
> 
> Machinetype:            Intel Pentium III (600 MHz);    NetBSD 1.6 (GENERIC)
> Remote gcc version:     gcc (GCC) 3.4.3
> Remote g++ version:     g++ (GCC) 3.4.3
> Configure environment:  CC=gcc CXX=g++ LDFLAGS=-Wl,-rpath,/usr/local/lib
> 
> g++ -I./System -I./System/Boot -I./System/Classes -I./System/Files 
> -I./System/Link -I./System/Misc -I./Classes/Abstract -I./Classes/Atomic 
> -I./Classes/Compound -I./Data/Drd -I./Data/String -I./Data/Tree 
> -I./Data/Convert -I./Guile -I./Resource -I./Window -I./Typeset 
> -I./Typeset/Bridge -I./Typeset/Concat -I./Typeset/Page -I./Edit -I./Plugins 
> -I./Texmacs -I/usr/local/include/freetype2 -I/usr/local/include 
> -I/usr/local/include -Wall -Wno-return-type -O2 -fno-rtti -fno-exceptions -c 
> ./Guile/Glue/glue_all.cpp -o Objects/glue_all.o
> In file included from ./Guile/Glue/glue_all.cpp:1:
> ./Guile/Glue/glue.cpp: In function `void initialize_glue()':
> ./Guile/Glue/glue.cpp:877: error: invalid conversion from 
> `scm_unused_struct*(*)()' to `scm_unused_struct*(*)(...)'
> ...many more...

Same error as ^^^

> ------------------------------------------------------------------------
> 
> Machinetype:            Intel Pentium III (600 MHz);    OpenBSD 3.2 
> GENERIC#25 i386
> Remote gcc version:     gcc (GCC) 3.3.5
> Remote g++ version:     g++ (GCC) 3.3.5
> Configure environment:  CC=gcc CXX=g++ LDFLAGS=-Wl,-rpath,/usr/local/lib
> 
> g++ -I./System -I./System/Boot -I./System/Classes -I./System/Files 
> -I./System/Link -I./System/Misc -I./Classes/Abstract -I./Classes/Atomic 
> -I./Classes/Compound -I./Data/Drd -I./Data/String -I./Data/Tree 
> -I./Data/Convert -I./Guile -I/usr/local/include/freetype2 
> -I/usr/local/include -I/usr/local/include -Wall -Wno-return-type -O2 
> -fno-default-inline -fno-inline -fno-rtti -fno-exceptions -c 
> ./Classes/Compound/array.cpp -o Objects/array.o
> g++ -I./System -I./System/Boot -I./System/Classes -I./System/Files 
> -I./System/Link -I./System/Misc -I./Classes/Abstract -I./Classes/Atomic 
> -I./Classes/Compound -I./Data/Drd -I./Data/String -I./Data/Tree 
> -I./Data/Convert -I./Guile -I./Resource -I./Window -I./Plugins 
> -I/usr/local/include/freetype2 -I/usr/local/include -I/usr/local/include 
> -Wall -Wno-return-type -O2 -fno-default-inline -fno-inline -fno-rtti 
> -fno-exceptions -c ./Window/Widget/Composite/array_widget.cpp -o 
> Objects/array_widget.o
> In file included from Window/widget.hpp:15,
>                  from Window/Widget/basic_widget.hpp:15,
>                  from Window/Widget/composite_widget.hpp:15,
>                  from Window/Widget/Composite/array_widget.cpp:16:
> Window/event.hpp:20: error: conflicting types for `typedef long int time_t'
> /usr/include/sys/types.h:114: error: previous declaration as `typedef int
>    time_t'

Also like ^^^.

> ------------------------------------------------------------------------
> 
> Machinetype:            Intel Pentium II MMX (333 MHz); Solaris 10 x86
> Remote gcc version:     gcc (GCC) 3.3 20030407 (prerelease)
> Remote g++ version:     g++ (GCC) 3.3 20030407 (prerelease)
> Configure environment:  CC=gcc CFLAGS=-I/usr/local/include CXX=g++ 
> CXXFLAGS=-I/usr/local/include LDFLAGS="-R/usr/local/lib -L/usr/local/lib"
> 
> g++ -I./System -I./System/Boot -I./System/Classes -I./System/Files 
> -I./System/Link -I./System/Misc -I./Classes/Abstract -I./Classes/Atomic 
> -I./Classes/Compound -I./Data/Drd -I./Data/String -I./Data/Tree 
> -I./Data/Convert -I./Guile -I./Resource 
> -I/local/build/gcc/TeXmacs-1.0.5.4-src/TeXmacs/include -I/usr/local/include 
> -Wall -Wno-return-type -O2 -fno-default-inline -fno-inline -fno-rtti 
> -fno-exceptions -c ./Data/String/analyze.cpp -o Objects/analyze.o
> In file included from /usr/include/sys/wait.h:24,
>                  from /usr/include/stdlib.h:22,
>                  from Classes/Abstract/basic.hpp:16,
>                  from Classes/Atomic/string.hpp:16,
>                  from Data/String/analyze.hpp:15,
>                  from Data/String/analyze.cpp:13:
> /usr/include/sys/siginfo.h:259: error: 'ctid_t' is used as a type, but is not
>    defined as a type.
> /usr/include/sys/siginfo.h:260: error: 'zoneid_t' is used as a type, but is 
> not
>    defined as a type.
> /usr/include/sys/siginfo.h:390: error: 'ctid_t' is used as a type, but is not
>    defined as a type.
> ...

This seems to be a problem with your wait.h
Merely including stdlib.h should be OK, right?

> ------------------------------------------------------------------------
> 
> Machinetype:            Intel Pentium II MMX (333 MHz); Solaris 10 x86
> Remote gcc version:     gcc (GCC) 3.4.3 (csl-sol210-3_4-branch+sol_rpath)
> Remote g++ version:     g++ (GCC) 3.4.3 (csl-sol210-3_4-branch+sol_rpath)
> Configure environment:  CC=/usr/sfw/bin/gcc CFLAGS=-I/usr/local/include 
> CXX=/usr/sfw/bin/g++ CXXFLAGS=-I/usr/local/include LDFLAGS="-R/usr/local/lib 
> -L/usr/local/lib"
> 
> [This is the Sun-provided version of gcc/g++]
> 
> /usr/sfw/bin/g++ -dynamic Objects/analyze.o Objects/array.o 
> Objects/array_widget.o Objects/attribute_event.o Objects/attribute_widget.o 
> Objects/balloon_widget.o Objects/basic.o Objects/basic_boxes.o 
> Objects/basic_event.o Objects/basic_widget.o Objects/bibtex.o 
> Objects/bitmap_font.o Objects/boxes.o Objects/bridge.o 
> Objects/bridge_argument.o Objects/bridge_auto.o Objects/bridge_compound.o 
> Objects/bridge_default.o Objects/bridge_docrange.o Objects/bridge_document.o 
> Objects/bridge_eval.o Objects/bridge_formatting.o Objects/bridge_mark.o 
> Objects/bridge_rewrite.o Objects/bridge_surround.o Objects/bridge_with.o 
> Objects/button_widget.o Objects/canvas_widget.o Objects/cell.o 
> Objects/change_boxes.o Objects/command.o Objects/composite_boxes.o 
> Objects/composite_event.o Objects/composite_widget.o Objects/compound_font.o 
> Objects/concat_active.o Objects/concat_boxes.o Objects/concat_graphics.o 
> Objects/concat_inactive.o Objects/concat_macro.o Objects/concat_math.o 
> Objects/concat_post.o Obje!
>  cts/concat_text.o Objects/concater.o Objects/connection.o 
> Objects/converter.o Objects/curve.o Objects/decoration_boxes.o 
> Objects/dictionary.o Objects/drd_info.o Objects/drd_std.o Objects/dyn_link.o 
> Objects/edit_aux.o Objects/edit_complete.o Objects/edit_cursor.o 
> Objects/edit_delete.o Objects/edit_dynamic.o Objects/edit_footer.o 
> Objects/edit_graphics.o Objects/edit_interface.o Objects/edit_keyboard.o 
> Objects/edit_main.o Objects/edit_math.o Objects/edit_modify.o 
> Objects/edit_mouse.o Objects/edit_search.o Objects/edit_select.o 
> Objects/edit_session.o Objects/edit_spell.o Objects/edit_table.o 
> Objects/edit_text.o Objects/edit_typeset.o Objects/encoding.o Objects/env.o 
> Objects/env_default.o Objects/env_exec.o Objects/env_inactive.o 
> Objects/env_length.o Objects/env_semantics.o Objects/equations.o 
> Objects/evaluate.o Objects/fast_alloc.o Objects/file.o 
> Objects/file_chooser_widget.o Objects/find_font.o Objects/font.o 
> Objects/format.o Objects/formatter.o Objects/frame.o Objects/free_ty!
>  pe.o Objects/from_scheme.o Objects/fromtex.o Objects/fromtm.o !
>  Objects/
> fromxml.o Objects/generic.o Objects/ghostscript.o Objects/glue_all.o 
> Objects/glue_widget.o Objects/glyph.o Objects/glyph_ops.o 
> Objects/glyph_shrink.o Objects/graphics_boxes.o Objects/grid.o 
> Objects/grid_boxes.o Objects/hashfunc.o Objects/hashmap.o 
> Objects/hashmap_extra.o Objects/hashset.o Objects/hashtree.o 
> Objects/hyphenate.o Objects/image_files.o Objects/init_texmacs.o 
> Objects/init_upgrade.o Objects/inittex.o Objects/input.o 
> Objects/input_widget.o Objects/inputs_list_widget.o Objects/ip_observer.o 
> Objects/ispell.o Objects/iterator.o Objects/language.o Objects/layout.o 
> Objects/lazy_paragraph.o Objects/lazy_typeset.o Objects/lazy_vstream.o 
> Objects/line_breaker.o Objects/line_item.o Objects/list.o 
> Objects/list_observer.o Objects/list_widget.o Objects/load_pk.o 
> Objects/load_tex.o Objects/load_tfm.o Objects/make_pages.o 
> Objects/math_boxes.o Objects/math_font.o Objects/math_language.o 
> Objects/misc_boxes.o Objects/modifier_boxes.o Objects/object.o 
> Objects/observer.o Objects/page_!
>  breaker.o Objects/page_item.o Objects/page_type.o Objects/pager.o 
> Objects/parsetex.o Objects/parsexml.o Objects/path.o Objects/pipe_link.o 
> Objects/point.o Objects/polynomial.o Objects/popup_button.o 
> Objects/popup_widget.o Objects/printer.o Objects/ps_device.o 
> Objects/rectangles.o Objects/rel_hashmap.o Objects/rubber_boxes.o 
> Objects/script_boxes.o Objects/scroll_event.o Objects/scroll_widget.o 
> Objects/scrollable_widget.o Objects/scrollbar_widget.o 
> Objects/separator_widget.o Objects/skeleton.o Objects/socket_link.o 
> Objects/space.o Objects/stack_boxes.o Objects/stacker.o 
> Objects/stretch_boxes.o Objects/string.o Objects/superpose_boxes.o 
> Objects/switch_widget.o Objects/sys_utils.o Objects/tab.o Objects/table.o 
> Objects/tag_info.o Objects/tex_files.o Objects/tex_font.o Objects/tex_init.o 
> Objects/tex_rubber_font.o Objects/text_boxes.o Objects/text_language.o 
> Objects/text_widget.o Objects/tile_widget.o Objects/timer.o 
> Objects/to_scheme.o Objects/totm.o Objects/translator.o Objects/!
>  tree.o Objects/tree_cursor.o Objects/tree_label.o Objects/tree!
>  _positio
> n.o Objects/tree_traverse.o Objects/tt_face.o Objects/tt_file.o 
> Objects/tt_font.o Objects/typesetter.o Objects/upgradetm.o Objects/url.o 
> Objects/vars.o Objects/verb_language.o Objects/verbatim.o 
> Objects/virtual_font.o Objects/vpenalty.o Objects/wait_widget.o 
> Objects/web_files.o Objects/widget.o Objects/x_display.o Objects/x_drawable.o 
> Objects/x_font.o Objects/x_init.o Objects/x_loop.o Objects/x_window.o 
> Objects/xpm_widget.o Objects/tm_config.o Objects/tm_data.o Objects/tm_file.o 
> Objects/tm_button.o Objects/tm_menus.o Objects/tm_widget.o 
> Objects/tm_scheme.o Objects/tm_server.o Objects/texmacs.o 
> -L/local/build/sfw-gcc/TeXmacs-1.0.5.4-src/TeXmacs/lib -lm -Wl,-rpath, 
> -L/usr/local/lib -R/usr/local/lib -lXext -lX11 -L/usr/local/lib -lguile 
> -lguile-ltdl -R/usr/local/lib -L/usr/local/lib -lsocket -lnsl -lm 
> -L/usr/local/lib -R/usr/local/lib -lfreetype -lz -ldl -o 
> Objects/texmacs-shared.bin
> ld: fatal: option -dn and -P are incompatible
> ld: fatal: Flags processing errors

Please try to play a bit with the linking options and test whether you can
get things linked in some way.

> ------------------------------------------------------------------------
> 
> Machinetype:            Sun Ultra 5 (270 MHz UltraSPARC-IIi);          
> Solaris 10
> Remote gcc version:     gcc (GCC) 3.3.6
> Remote g++ version:     g++ (GCC) 3.3.6
> Configure environment:  CC=gcc CFLAGS=-I/usr/local/include CXX=g++ 
> CXXFLAGS=-I/usr/local/include LDFLAGS="-R/usr/local/lib -L/usr/local/lib"
> 
> g++ -I./System -I./System/Boot -I./System/Classes -I./System/Files 
> -I./System/Link -I./System/Misc -I./Classes/Abstract -I./Classes/Atomic 
> -I./Classes/Compound -I./Data/Drd -I./Data/String -I./Data/Tree 
> -I./Data/Convert -I./Guile -I./Resource -I./Window -I./Typeset 
> -I./Typeset/Bridge -I./Typeset/Concat -I./Typeset/Page -I./Edit -I./Plugins 
> -I./Texmacs -I/usr/local/include/freetype2 -I/usr/local/include 
> -I/usr/local/include -Wall -Wno-return-type -O2 -fno-default-inline 
> -fno-inline -fno-rtti -fno-exceptions -c ./Guile/Glue/glue_all.cpp -o 
> Objects/glue_all.o
> In file included from Guile/Glue/glue_all.cpp:1:
> Guile/Glue/glue.cpp: In function `void initialize_glue()':
> Guile/Glue/glue.cpp:877: error: invalid conversion from `
>    scm_unused_struct*(*)()' to `scm_unused_struct*(*)(...)'
> ...many more...

Same problem as ^^^.

> ------------------------------------------------------------------------
> 
> Machinetype:            Compaq AlphaServer DS20 Sierra/667 (2 EV67 21264 
> CPUs, 667 MHz, 1MB RAM); OSF/1 5.1
> Remote gcc version:     2.9-gnupro-99r1
> Remote g++ version:     2.9-gnupro-99r1
> Configure environment:  CC=gcc CFLAGS="-mieee -I$HOME/alpha/local/include 
> -O3" CXX=g++ CXXFLAGS="-mieee -I$HOME/alpha/local/include -O3"     
> LDFLAGS="-L$HOME/alpha/local/lib -Wl,-rpath,$HOME/alpha/local/lib -static"
> 
> cd src; make -f makefile link=shared
> cp -r -f Objects/texmacs-shared.bin 
> /uufs/inscc.utah.edu/common/home/mthnhb/alpha/build/gcc/TeXmacs-1.0.5.4-src/TeXmacs/bin/texmacs.bin
> cp: cannot stat `Objects/texmacs-shared.bin': No such file or directory

???

Was Objects/texmacs-shared.bin built or not?

I remember a similar problem with old versions of "make".
Try installing a recent version of GNU make.

> ------------------------------------------------------------------------
> 
> Machinetype:            Sun Ultra Enterprise 5500 (4 CPUs, 400 MHz 
> UltraSPARC-II); Solaris 8
> Remote gcc version:     gcc (GCC) 3.3
> Remote g++ version:     g++ (GCC) 3.3
> 
> g++ -I./System -I./System/Boot -I./System/Classes -I./System/Files 
> -I./System/Link -I./System/Misc -I./Classes/Abstract -I./Classes/Atomic 
> -I./Classes/Compound -I./Data/Drd -I./Data/String -I./Data/Tree 
> -I./Data/Convert -I./Guile -I./Resource -I./Window -I./Typeset 
> -I./Typeset/Bridge -I./Typeset/Concat -I./Typeset/Page -I./Edit -I./Plugins 
> -I./Texmacs -I/usr/local/include/freetype2 -I/usr/local/include 
> -I/usr/local/include -Wall -Wno-return-type -O2 -fno-default-inline 
> -fno-inline -fno-rtti -fno-exceptions -c ./Guile/Glue/glue_all.cpp -o 
> Objects/glue_all.o
> In file included from Guile/Glue/glue_all.cpp:1:
> Guile/Glue/glue.cpp: In function `void initialize_glue()':
> Guile/Glue/glue.cpp:877: error: invalid conversion from `
>    scm_unused_struct*(*)()' to `scm_unused_struct*(*)(...)'
> ... many more ...

Same problem as ^^^; we really have to solve this one...

> ------------------------------------------------------------------------
> 
> Machinetype:            Sun Ultra 5/400;              GNU/Linux 
> 2.4.26-sparc-r2 (Gentoo 1.4.16)
> Remote gcc version:     gcc (GCC) 3.3.3
> Remote g++ version:     g++ (GCC) 3.3.3
> Configure environment:  CC=gcc CXX=g++ LDFLAGS="-L/usr/local/lib 
> -Wl,-rpath,/usr/local/lib"
> 
> ./../../sparc-unknown-linux-gnu/bin/ld: cannot find -lXext
> collect2: ld returned 1 exit status
> 
> Same problem as for GNU/Linux on PowerPC, and the same workaround got
> a working texmacs:
> 
>     make LDXWINDOW="-L/usr/X11R6/lib -L/usr/local/lib -lXext -lX11" 
> LDBXWINDOW="-L/usr/X11R6/lib -L/usr/local/lib -lXext -lX11"

OK, please try to provide an entry for configure.in.

In any case, thanks again for your help so far, Joris




reply via email to

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