[Top][All Lists]

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

Re: Compilation problem

From: Peter Teeson
Subject: Re: Compilation problem
Date: Fri, 26 May 2023 16:12:00 -0400

Hi Jürgen:
I put together a brief note for Mac devs wrt Python. Feel free to use it if you wish.

Attachment: A macOS Note about Python.pdf
Description: Adobe PDF document

best regards

On May 26, 2023, at 11:03 AM, Dr. Jürgen Sauermann <mail@xn--jrgen-sauermann-zvb.de> wrote:

Hi Peter,

thanks, generally a good idea. I will look into that. Problem is that
even the "standard places" are not standard these days. Both apl
and python could live in  either /usr/include or else in /usr/local/include
and the ./configure of GNU APL can not easily figure how python was

It also seems like python does not have pkg-config support (which
would tell ./configure these things).

Also thanks for reminding me of  README-10-python, I had
completely forgotten it.

Best Regards,

On 5/25/23 21:11, Peter Teeson wrote:
Why not make a note in the python README for users to  make a symbolic link 
from their actual python location to a standard place such as /usr/include/python?
Then configure need only refer to that.

On May 25, 2023, at 5:34 AM, Dr. Jürgen Sauermann <mail@xn--jrgen-sauermann-zvb.de> wrote:


CXXFLAGS="-I /usr/include/python3.10" ./configure --with-python

On 5/25/23 11:31, Dr. Jürgen Sauermann wrote:
Hi Emmanuel,

could you please translate the french error message to English?

No idea yet what this is about.

In the meantime it may help to copy Python.h from:

Or configure GNU APL like this:

CXXFLAGS="-I /usr/include/python3.10" ./configure

Best Regards,

On 5/24/23 22:45, Emmanuel Charpentier wrote:

Dear Jürgen,

TL,DR : I tried to recompile gnu-apl with the Python library, but got a compilation error :

../../src/python_apl.cc:3:10: fatal error: Python.h: Aucun fichier ou dossier de ce type
    3 | #include <Python.h>
      |          ^~~~~~~~~~
compilation terminated.

Some details :

In a fresh VPATH directory I did :

../configure --with-sqlite3 --with-gtk3 --with-python

which ended with :

configure:    ---- SUMMARY OF TESTS (please include in error reports) ----

    DEVELOP_WANTED:              no
    ASSERT_LEVEL_WANTED:         1
    DYNAMIC_LOG_WANTED:          no
    VALUE_CHECK_WANTED:          no

    apl_MAINTAINER_MODE:         no
    apl_missing_headers:         0
    apl_missing_functions:       0
    apl_FFT:                     yes	(affects: ⎕FFT)
    apl_PCRE:                    yes	(affects: ⎕RE)
    apl_PNG:                     yes	(affects: ⎕PNG)
    apl_POSTGRES:                yes	(may affect: ⎕SQL)
    apl_SQLITE3:                 yes	(may affect: ⎕SQL)
    apl_SQL                      yes	(affects:    ⎕SQL)
    apl_X11 (libxcb):            yes	(fallback for               ⎕PLOT)
    apl_GTK3:                    yes	(affects: ⎕PNG, ⎕GTK, maybe ⎕PLOT)
    apl_GUI:                     yes	(affects: ⎕PNG, ⎕GTK,       ⎕PLOT)

but a compilation, launched by

time make -j8 2>&1 | tee compilation.log

failed. The error seems to be :

libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../../src -I.. -Wall -Wno-parentheses -I sql -I /home/charpent/Dev/apl/trunk/obj/.. -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/x86_64-linux-gnu -I/usr/include/gio-unix-2.0 -I/usr/include/atk-1.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 -pthread -I/usr/include -I/usr/include/postgresql -DNDEBUG -D_FORTIFY_SOURCE=2 -fwrapv -fPIC -fstack-protector --param=ssp-buffer-size=4 -I/usr/include/python3.6m -I/usr/include/python3.8 -g -O2 -I /home/charpent/Dev/apl/trunk/obj -MT lib_gnu_apl_la-python_apl.lo -MD -MP -MF .deps/lib_gnu_apl_la-python_apl.Tpo -c ../../src/python_apl.cc  -fPIC -DPIC -o .libs/lib_gnu_apl_la-python_apl.o
../../src/python_apl.cc:3:10: fatal error: Python.h: Aucun fichier ou dossier de ce type
    3 | #include <Python.h>
      |          ^~~~~~~~~~
compilation terminated.
make[3]: *** [Makefile:2779 : lib_gnu_apl_la-python_apl.lo] Erreur 1
make[3]: *** Attente des tâches non terminées....

The curious thing is that Python.h is present on my system :

charpent@zen-book-flip:~/Dev/apl/trunk/obj$ locate Python.h
locate: warning: database ‘/var/cache/locate/locatedb’ is more than 8 jours old (actual age is 30,1 jours)
charpent@zen-book-flip:~/Dev/apl/trunk/obj$ ls -l /usr/include/python3.11/Python.h
-rw-r--r-- 1 root root 2854 13 mars  13:18 /usr/include/python3.11/Python.h

I might have to specify some library in an option to ../configure, but can't figure out which.

My setup is Debian testing, used fairly often for development (I'm more or less in the Sagemath development group), with as little non-Debian software I can manage (two notorious exceptions : Zotero, which is a sine qua non of my work) and, of course, Sagemath (built from my local git clone). And an armfull of R packages, which are probably quite irrelevant.

Logs attached (I hope).

Emmanuel Charpentier

reply via email to

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