Hi Russtopia,
thank you for reporting this.
Seems like I incorrectly assumed that the presence of libxcb implied
the
presence of its header file. Hopefully fixed in
SVN 1715.
Details:
your config.log says:
conftest.cpp:139:10: fatal error:
X11/Xlib-xcb.h: No such file or directory
which sets
apl_X11 to 0 (= X11 not present). At the same
time there
is apl_GTK3 = 1 (= GTK present).
The first link error occurred because the GTK related code should
not have
been compiled. That should now be fixed in
SVN 1715.
The subsequent errors were caused by adding
-lX11. Even
though
-lX11.
fixed the undefined symbol
XInitThreads, it did not fix the
root cause of
the problem.
I hope that GNU APL will now compile and link on your box, but some
functionality ⎕GTK, ⎕PLOT etc. may be affected. A better approach
would
be to provide the missing
X11/Xlib-xcb.h.
Probably in package libx11-xcb-dev.
Best Regards,
Jürgen
On 7/4/23 02:58, Russtopia wrote:
Version: Linux Devuan
amd64 stable (equivalent to debian Bullseye)
libtool: link: g++ -Wall -Wno-parentheses -I sql -I
/home/russtopia/pkgs/apl/trunk -pthread -I/usr/include/gtk-3.0
-I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0
-I/usr/include/dbus-1.0
-I/usr/lib/x86_64-linux-gnu/dbus-1.0/include
-I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0
-I/usr/include/cairo -I/usr/include/pango-1.0
-I/usr/include/fribidi -I/usr/include/harfbuzz
-I/usr/include/atk-1.0 -I/usr/include/cairo
-I/usr/include/pixman-1 -I/usr/include/uuid
-I/usr/include/freetype2 -I/usr/include/libpng16
-I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libmount
-I/usr/include/blkid -I/usr/include/glib-2.0
-I/usr/lib/x86_64-linux-gnu/glib-2.0/include -g -O2 -I
/home/russtopia/pkgs/apl/trunk -o apl apl-main.o
apl-Plot_gtk.o apl-Archive.o apl-Assert.o apl-Avec.o
apl-Backtrace.o apl-Bif_F12_COMMA.o apl-Bif_F12_DOMINO.o
apl-Bif_F12_INDEX_OF.o apl-Bif_F12_INTERVAL_INDEX.o
apl-Bif_F12_FORMAT.o apl-Bif_F12_PARTITION_PICK.o
apl-Bif_F12_SORT.o apl-Bif_F12_TAKE_DROP.o
apl-Bif_OPER1_COMMUTE.o apl-Bif_OPER1_EACH.o
apl-Bif_OPER2_POWER.o apl-Bif_OPER2_INNER.o
apl-Bif_OPER2_OUTER.o apl-Bif_OPER2_RANK.o
apl-Bif_OPER1_REDUCE.o apl-Bif_OPER1_SCAN.o apl-CDR.o
apl-Cell.o apl-Doxy.o apl-CharCell.o apl-Command.o
apl-Common.o apl-ComplexCell.o apl-DerivedFunction.o
apl-DiffOut.o apl-DynamicObject.o apl-Error.o apl-Executable.o
apl-FloatCell.o apl-Function.o apl-Id.o apl-IndexExpr.o
apl-IndexIterator.o apl-InputFile.o apl-IntCell.o
apl-IO_Files.o apl-LApack.o apl-LibPaths.o apl-LineInput.o
apl-Logging.o apl-LvalCell.o apl-Malloc_hooks.o apl-Nabla.o
apl-Macro.o apl-Missing_Libraries.o apl-NamedObject.o
apl-NativeFunction.o apl-NumericCell.o apl-Output.o
apl-Parallel.o apl-Parser.o apl-Performance.o
apl-PointerCell.o apl-Prefix.o apl-Plot_line_properties.o
apl-Plot_data.o apl-Plot_window_properties.o
apl-PrimitiveFunction.o apl-PrintBuffer.o apl-QuadFunction.o
apl-ProcessorID.o apl-Quad_CR.o apl-Quad_DLX.o apl-Quad_FFT.o
apl-Quad_FIO.o apl-Quad_FX.o apl-Quad_GTK.o apl-Quad_JSON.o
apl-Quad_MAP.o apl-Quad_PLOT.o apl-Quad_PNG.o apl-Quad_RE.o
apl-Quad_RL.o apl-Quad_RVAL.o apl-Quad_SQL.o apl-Quad_SVx.o
apl-Quad_TF.o apl-Quad_WA.o apl-Quad_XML.o apl-RealCell.o
apl-sbrk.o apl-Shape.o apl-ScalarFunction.o apl-Security.o
apl-StateIndicator.o apl-Svar_DB.o apl-Svar_record.o
apl-Symbol.o apl-SymbolTable.o apl-SystemVariable.o
apl-TabExpansion.o apl-Thread_context.o apl-Token.o
apl-Tokenizer.o apl-UCS_string.o apl-UCS_string_vector.o
apl-UserFunction.o apl-UserFunction_header.o
apl-UserPreferences.o apl-UTF8_string.o apl-Value.o
apl-ValueHistory.o apl-Workspace.o apl-static_Objects.o
apl-Regexp.o -Wl,--export-dynamic -lpangocairo-1.0
-lpango-1.0 -lharfbuzz -latk-1.0 -lcairo-gobject
-lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lcairo
-lgdk-3 -lgtk-3 -lpcre2-32 -lz -lpng -lc -ldl -lm -lnsl
-lpthread -pthread
/usr/bin/ld: apl-Plot_gtk.o: undefined reference to symbol
'XInitThreads'
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libX11.so.6: error
adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:1544: apl] Error 1
make[3]: Leaving directory
'/home/russtopia/pkgs/apl/trunk/src'
make[2]: *** [Makefile:5340: all-recursive] Error 1
make[2]: Leaving directory
'/home/russtopia/pkgs/apl/trunk/src'
make[1]: *** [Makefile:542: all-recursive] Error 1
make[1]: Leaving directory '/home/russtopia/pkgs/apl/trunk'
make: *** [Makefile:430: all] Error 2
---
If I add '-lX11' to
LIBS in src/Makefile after running ./configure, it gets a bit
further but fails on a GTK symbol:
... gio-2.0
-lgobject-2.0 -lglib-2.0 -lX11 -lcairo -lgdk-3 -lgtk-3
-lpcre2-32 -lz -lpng -lc -ldl -lm -lnsl -lpthread -pthread
/usr/bin/ld: apl-Plot_gtk.o: in function `plot_destroyed':
/home/russtopia/pkgs/apl/trunk/src/Plot_gtk.cc:1428: undefined
reference to `Quad_PLOT::PLOT_context::remove_handle(int)'
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:1544: apl] Error 1
configure.log attached.