Python-efl is the binding for EFL, an awesome and performance-obcessed set of libraries. EFL stands for Enlightment Foundation Libraries. It was started for the Enlightment desktop project and developed into a set of libraries. This tutorial shows how to install python-efl.
Install Instructions
First create a new folder called efl_dev
mkdir efl_dev
cd efl_dev
Then see EFL downloads and Python-EFL downloads.
See the version you want is available on both. Let’s choose 1.25.0 for this tutorial
Download and extract both
wget https://download.enlightenment.org/rel/libs/efl/efl-1.25.0.tar.xz
tar xvf efl-1.25.0.tar.xz
wget https://download.enlightenment.org/rel/bindings/python/python-efl-1.25.0.tar.xz
tar xvf python-efl-1.25.0.tar.xz
Install EFL
Now let us install EFL first. Let’s install essentials
sudo apt install build-essential check meson ninja-build
and dependencies
sudo apt install libssl-dev libsystemd-dev libjpeg-dev libglib2.0-dev libgstreamer1.0-dev liblua5.2-dev libfreetype6-dev libfontconfig1-dev libfribidi-dev libavahi-client-dev libharfbuzz-dev libibus-1.0-dev libx11-dev libxext-dev libxrender-dev libgl1-mesa-dev libopenjp2-7-dev libwebp-dev libgif-dev libtiff5-dev libpoppler-dev libpoppler-cpp-dev libspectre-dev libraw-dev librsvg2-dev libudev-dev libmount-dev libdbus-1-dev libpulse-dev libsndfile1-dev libxcursor-dev libxcomposite-dev libxinerama-dev libxrandr-dev libxtst-dev libxss-dev libgstreamer-plugins-base1.0-dev doxygen libscim-dev libxdamage-dev libwebp-dev libunwind-dev
and what i found missing
sudo apt install libluajit-5.1-dev
change dir
cd efl-1.25.0
Now let us build the project
meson build
ninja -C build
sudo ninja -C build install
You also have to make some files visible to pkgconfig. One way of doing this is to open /etc/profile in a text editor as root (using for example sudo nano /etc/profile) and add the following line to the end:
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
You may also need to refresh your library path to make sure your apps can find the EFL libraries:
sudo ldconfig
Install Python-EFL
cd ../python-efl-1.25.0
Install python3-dev or corresponding. I was using Python3.9 so i did
sudo apt install python3.9-dev
also python dbus
sudo apt install python-dbus-dev
Then create and activate virtual environment
python3.9 -m venv venv
. venv/bin/activate
Install cython
pip install cython
Now build the package
python setup.py build
and install
python setup.py install
Conclusion
Now if you run pip freeze you should get something similar
Cython==0.29.24
python-efl==1.25.0
refs:
https://www.enlightenment.org/docs/distros/ubuntu-start.md
https://git.enlightenment.org/bindings/python/python-efl.git/tree/INSTALL