Another Guile Problem

Asked by Justin Fisher

Using Rocky 9 I have Guile 2.2 and Guile 3 installed along with devel packages for both.

These files show up in the following locations:
./lib64/pkgconfig/guile-2.2.pc
./lib64/pkgconfig/guile-3.0.pc

when I run configure I get:

checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for GUILE... yes
checking for guile... no
configure: WARNING: The `guile' interpreter could not be found. Some configuration checks
will not be able to be carried out.
checking for guile-snarf... no
configure: error: The `guile-snarf' tool could not be found. Please ensure that the
Guile development headers and tools are correctly installed, and rerun
configure.

Looking around the web, it seems that as long as the devel package is installed the guile-snarf should work.

Any ideas?

--
Kind regards,

Justin Fisher

Question information

Language:
English Edit question
Status:
Solved
For:
gEDA Edit question
Assignee:
No assignee Edit question
Solved by:
Justin Fisher
Solved:
Last query:
Last reply:
Revision history for this message
Justin Fisher (justin67) said :
#1

Bump. Anyone?

Revision history for this message
Roland Lutz (rlutz) said :
#2

Sorry for the late answer! I've been quite busy lately.

Checking for Guile is done by “m4/geda-guile.m4”. The meaning of the messages is:

> checking for GUILE... yes

The “guile-2.2.pc” file from the development package was found.

> checking for guile... no
> configure: WARNING: The `guile' interpreter could not be found. Some configuration checks
> will not be able to be carried out.

The “guile” executable wasn't found.

> checking for guile-snarf... no
> configure: error: The `guile-snarf' tool could not be found. Please ensure that the
> Guile development headers and tools are correctly installed, and rerun
> configure.

The “guile-snarf” executable wasn't found, either.

I can think of three ways how this could happen:

* Your distribution doesn't enforce installation of the regular Guile package when the development package is installed → you need to install the regular package manually.
* The “guile” and “guile-snarf” executables have been installed to a non-standard path → you need to add the path to which they have been installed to your PATH.
* The distribution uses non-standard names for the executables (e.g., “guile-2.2” and “guile-snarf-2.2”) and doesn't have an alternatives system, or the alternatives system didn't work → you need to add symlinks or similar to the effect that “guile” and “guile-snarf” run the respective Guile 2.2 executables.

Revision history for this message
Justin Fisher (justin67) said :
#3

Hi Roland.

Thanks for getting back to me. I'm using Rocky 9 which is basically a copy of Red Hat 9. Last night after I bumped this thread I started poking around looking for guile. I found that as your last suggestion says, the executable name is not guile but guild. I made an alias in my .bashrc file such that when I type in guile -v into a terminal I now get an answer: 2.2.7. I did the same thing for snarf.

alias guile='guild2.2'
alias guile-snarf='guile-snarf2.2'

The problem remains.

--
Kind regards,

Justin Fisher

Revision history for this message
Roland Lutz (rlutz) said :
#4

I'm not sure if aliases are visible in the configure environment, but symlinks should be:

mkdir -p ~/.local/bin
ln -s /path/to/guild2.2 ~/.local/bin/guile
ln -s /path/to/guile-snarf2.2 ~/.local/bin/guile-snarf
PATH=$PATH:~/.local/bin

(where /path/to/ is replaced with the appropriate paths)

Revision history for this message
Justin Fisher (justin67) said :
#5

Hi Roland.

Thanks again for your help. This worked, but now I have yet another incompatibility issue. Once the config file gets as far as Xorn, I get:

./xorn/m4/python2.m4:86: m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])])

Looking through the M4 files, it seems that Xorn is specifically looking for Python2. Red Hat dropped Python2 and from what I can see online it's near impossible to install V2 on Red Hat 9 type distro's. Is there a way to get GEDA-GAF to compile with Python 3?

python --version gives me Python 3.9.16

Justin.

Revision history for this message
Justin Fisher (justin67) said :
#6

Bump...

Revision history for this message
Launchpad Janitor (janitor) said :
#7

This question was expired because it remained in the 'Open' state without activity for the last 15 days.

Revision history for this message
Justin Fisher (justin67) said :
#8

Bump

Revision history for this message
Roland Lutz (rlutz) said :
#9

gEDA/gaf requires Python 2.

If your distribution doesn't include Python 2 packages, you'll have to install it from source:

https://www.python.org/downloads/release/python-2718/
https://stackoverflow.com/questions/4149361/on-linux-suse-or-redhat-how-do-i-load-python-2-7

Revision history for this message
Justin Fisher (justin67) said :
#10

I have python 2 installed, and indeed it became the default in my shell:

$ python
Python 2.7.8 (default, Nov 14 2023, 15:33:07)
[GCC 11.3.1 20221121 (Red Hat 11.3.1-4)] on linux2

However gEDA/gaf still gives me the same error:

checking for PYTHON... no
checking for PYTHON... no
configure: error: Package requirements (python2 >= 2.7) were not met:

Package 'python2', required by 'virtual:world', not found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Adjusting the PKG_CONFIG_PATH to /usr/local/bin makes no difference.

Revision history for this message
Roland Lutz (rlutz) said :
#11

This means configure couldn't find the pkg-config configuration file for the Python 2.7 library (called ‘python-2.7.pc’ or ‘python2.pc’). It's supposed to be installed along with Python. Maybe the file was installed to an unusual directory? I see references to ‘python.pc’ in Makefile.pre.in; maybe by default, a filename not recognized by gEDA/gaf is used, in which case symlinking it to ‘python-2.7.pc’ should help.

If the file is missing for some reason, I guess it would be easiest to just create it (changing the prefix to where you installed the library) and make sure it is in PKG_CONFIG_PATH:

prefix=/usr
exec_prefix=${prefix}
includedir=${prefix}/include

Name: Python
Description: Python library
Requires:
Version: 2.7
Libs.private: -lpthread -ldl -lutil
Libs: -lpython2.7
Cflags: -I${includedir}/python2.7 -I${includedir}/x86_64-linux-gnu/python2.7

Revision history for this message
Justin Fisher (justin67) said :
#12

Ok, cool!

So I made a symbolic link from /usr/local/lib/pkgconfig/python-2.7.pc to /usr/local/bin/python2.pc

I then made an export of PKG_CONFIG_PATH to /usr/local/bin an d this worked!

I found that running Gschem gave me a warning: Failed to load module "pk-gtk-module" which is actually installed. It seems that this is quite a common problem and somewhat benign. Doing the following stopped the warning coming up for me.

sudo touch /etc/ld.so.conf.d/gtk3.conf
echo '/usr/lib64/gtk-3.0/modules' | sudo tee /etc/ld.so.conf.d/gtk3.conf
sudo ldconfig

I found this information here:

https://github.com/mypiaware/virtual-radar-server-installation/issues/6

Thanks for your help!

Revision history for this message
Justin Fisher (justin67) said :
#13

Ok, cool!

So I made a symbolic link from /usr/local/lib/pkgconfig/python-2.7.pc to /usr/local/bin/python2.pc

I then made an export of PKG_CONFIG_PATH to /usr/local/bin an d this worked!

I found that running Gschem gave me a warning: Failed to load module "pk-gtk-module" which is actually installed. It seems that this is quite a common problem and somewhat benign. Doing the following stopped the warning coming up for me.

sudo touch /etc/ld.so.conf.d/gtk3.conf
echo '/usr/lib64/gtk-3.0/modules' | sudo tee /etc/ld.so.conf.d/gtk3.conf
sudo ldconfig

I found this information here:

https://github.com/mypiaware/virtual-radar-server-installation/issues/6

Thanks for your help!