How to compile Compton on Xubuntu 20.04

Raul Delgado

could someone help me compile this Compton fork?

https://github.com/tryone144/compton/tree/improved_fbo

.I have followed the instructions here: github.com/tryone144/compton/blob/improved_fbo/README_orig.md

I installed the dependencies, I am really a bit lost in everything I have to do. It would be a great help if someone could take the time

I still don't understand how to clone from git, so I downloaded the zip, clicking on Code and then the clone or download button, then extracted it and followed the instructions in README_org.md file. I installed the dependencies, then opened a terminal in the extracted folder and ran:

rau @ rau-B250M-DS3H: ~ / Desktop / compton-improved_fbo $ sudo make [sudo] password for rau: make: pcre-config: The program was not found fatal: not a git repository (nor any of the top directories): .git fatal: not a git repository (nor any of the top directories): .git make: pcre-config: The program was not found cc -std = c99 -DCONFIG_XINERAMA -DCONFIG_LIBCONFIG -DCONFIG_REGEX_PCRE -DCONFIG_REGEX_PCRE_JIT -DCONFIG_VSYNC_DRM -DCONFIG_VSYNC_OPENGL -DCONFIG_VSYNC_OPENGL_GLSL -DCONFIG_VSYNC_OPENGL_FBO -DCONFIG_VSYNC_OPENGL_VBO -DCONFIG_DBUS -DCONFIG_XSYNC -DCONFIG_C2 -DCOMPTON_VERSION = "\" git - \ "" -Wall -I / usr / include / libdrm -I / usr / include / dbus-1.0 -I / usr / lib / x86_64-linux-gnu / dbus-1.0 / include -c src / c2.c In file included from src / c2.c: 11: src / c2.h: 18: 10: fatal error: pcre.h: File or directory does not exist 18 | #include | ^ ~~~~~~~ compilation terminated. make: *** [Makefile: 141: c2.o] Error 1 rau @ rau-B250M-DS3H: ~ / Desktop / compton-improved_fbo $

Raul Delgado

I decided to follow the advice of kanehekili and went in search of picom. I have solved two questions in one: I learned how to clone git, before I had to install git

$ sudo apt install git The address to clone comes from the clone button or download Zip (how silly I am). So:

$ sudo git clone https://github.com/yshui/picom.git

The download is saved in the personal folder, with the name picom

Then I installed the dependencies for Ubuntu:

$ sudo apt install libxext-dev libxcb1-dev libxcb-damage0-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-render-util0-dev libxcb-render0-dev libxcb-randr0-dev libxcb-composite0-dev libxcb-image0 -dev libxcb-present-dev libxcb-xinerama0-dev libxcb-glx0-dev libpixman-1-dev libdbus-1-dev libconfig-dev libgl1-mesa-dev libpcre2-dev libevdev-dev uthash-dev libev-dev libx11-xcb -dev

I also had to install cmake and meson

$ sudo apt install cmake meson

Then following the instructions:   $ git submodule update --init --recursive $ sudo meson --buildtype = release. build

The Meson build system Version: 0.53.2 Source dir: / home / rau / picom Build dir: / home / rau / picom / build Build type: native build Project name: picom Project version: 8 C compiler for the host machine: cc (gcc 9.3.0 "cc (Ubuntu 9.3.0-10ubuntu2) 9.3.0") C linker for the host machine: cc ld.bfd 2.34 Host machine cpu family: x86_64 Host machine cpu: x86_64 Program git found: YES (/ usr / bin / git) Has header "stdc-predef.h": YES Compiler for C supports arguments -Wall: YES meson.build:63: WARNING: Consider using the built-in warning_level option instead of using "-Wall". Compiler for C supports arguments -Wcast-function-type: YES Compiler for C supports arguments -Wignored-qualifiers: YES Compiler for C supports arguments -Wmissing-parameter-type: YES Compiler for C supports arguments -Wnonnull: YES Compiler for C supports arguments -Wshadow: YES Compiler for C supports arguments -Wno-type-limits -Wtype-limits: YES Compiler for C supports arguments -Wold-style-declaration: YES Compiler for C supports arguments -Woverride-init: YES Compiler for C supports arguments -Wsign-compare: YES Compiler for C supports arguments -Wtype-limits: YES Compiler for C supports arguments -Wuninitialized: YES Compiler for C supports arguments -Wshift-negative-value: YES Compiler for C supports arguments -Wunused-but-set-parameter: YES Compiler for C supports arguments -Wunused-parameter: YES Compiler for C supports arguments -Wimplicit-fallthrough: YES Compiler for C supports arguments -Wno-unknown-warning-option -Wunknown-warning-option: NO Compiler for C supports arguments -Wno-missing-braces -Wmissing-braces: YES Compiler for C supports arguments -Wconversion: YES Compiler for C supports arguments -Wempty-body: YES

| Executing subproject test.h method meson | | Project name: test.h | Project version: undefined | C compiler for the host machine: cc (gcc 9.3.0 "cc (Ubuntu 9.3.0-10ubuntu2) 9.3.0") | C linker for the host machine: cc ld.bfd 2.34 | Build targets in project: 0 | Subproject test.h finished.

Found pkg-config: / usr / bin / pkg-config (0.29.1) Found CMake: / usr / bin / cmake (3.16.3) Run-time dependency libev found: NO (tried pkgconfig and cmake) Library ev found: YES Library m found: YES Run-time dependency x11 found: YES 1.6.9 Run-time dependency x11-xcb found: YES 1.6.9 Run-time dependency xcb-renderutil found: YES 0.3.9 Run-time dependency xcb-image found: YES 0.4.0 Run-time dependency xext found: YES 1.3.4 Run-time dependency pixman-1 found: YES 0.38.4 Run-time dependency xcb-render found: YES 1.14 Run-time dependency xcb-damage found: YES 1.14 Run-time dependency xcb-randr found: YES 1.14 Run-time dependency xcb-sync found: YES 1.14 Run-time dependency xcb-composite found: YES 1.14 Run-time dependency xcb-shape found: YES 1.14 Run-time dependency xcb-xinerama found: YES 1.14 Run-time dependency xcb-xfixes found: YES 1.14 Run-time dependency xcb-present found: YES 1.14 Run-time dependency xcb-glx found: YES 1.14 Run-time dependency xcb found: YES 1.14 Has header "uthash.h": YES Run-time dependency libconfig found: YES 1.5 Run-time dependency libpcre found: NO (tried pkgconfig and cmake)

src / meson.build: 47: 1: ERROR: Dependency "libpcre" not found, tried pkgconfig and cmake

A full log can be found at /home/rau/picom/build/meson-logs/meson-log.txt

I did not find the libpcre dependency in the repository. I found libpcre3 and Installed it, looked for it by synaptic.

$ sudo apt install libpcre3

Then:

$ sudo meson --buildtype = release. build The Meson build system Version: 0.53.2 Source dir: / home / rau / picom Build dir: / home / rau / picom / build Build type: native build Project name: picom Project version: 8 C compiler for the host machine: cc (gcc 9.3.0 "cc (Ubuntu 9.3.0-10ubuntu2) 9.3.0") C linker for the host machine: cc ld.bfd 2.34 Host machine cpu family: x86_64 Host machine cpu: x86_64 Program git found: YES (/ usr / bin / git) Has header "stdc-predef.h": YES Compiler for C supports arguments -Wall: YES meson.build:63: WARNING: Consider using the built-in warning_level option instead of using "-Wall". Compiler for C supports arguments -Wcast-function-type: YES Compiler for C supports arguments -Wignored-qualifiers: YES Compiler for C supports arguments -Wmissing-parameter-type: YES Compiler for C supports arguments -Wnonnull: YES Compiler for C supports arguments -Wshadow: YES Compiler for C supports arguments -Wno-type-limits -Wtype-limits: YES Compiler for C supports arguments -Wold-style-declaration: YES Compiler for C supports arguments -Woverride-init: YES Compiler for C supports arguments -Wsign-compare: YES Compiler for C supports arguments -Wtype-limits: YES Compiler for C supports arguments -Wuninitialized: YES Compiler for C supports arguments -Wshift-negative-value: YES Compiler for C supports arguments -Wunused-but-set-parameter: YES Compiler for C supports arguments -Wunused-parameter: YES Compiler for C supports arguments -Wimplicit-fallthrough: YES Compiler for C supports arguments -Wno-unknown-warning-option -Wunknown-warning-option: NO Compiler for C supports arguments -Wno-missing-braces -Wmissing-braces: YES Compiler for C supports arguments -Wconversion: YES Compiler for C supports arguments -Wempty-body: YES

| Executing subproject test.h method meson | | Project name: test.h | Project version: undefined | C compiler for the host machine: cc (gcc 9.3.0 "cc (Ubuntu 9.3.0-10ubuntu2) 9.3.0") | C linker for the host machine: cc ld.bfd 2.34 | Build targets in project: 0 | Subproject test.h finished.

Found pkg-config: / usr / bin / pkg-config (1.6.3) Found CMake: / usr / bin / cmake (3.16.3) Run-time dependency libev found: NO (tried pkgconfig and cmake) Library ev found: YES Library m found: YES Run-time dependency x11 found: YES 1.6.9 Run-time dependency x11-xcb found: YES 1.6.9 Run-time dependency xcb-renderutil found: YES 0.3.9 Run-time dependency xcb-image found: YES 0.4.0 Run-time dependency xext found: YES 1.3.4 Run-time dependency pixman-1 found: YES 0.38.4 Run-time dependency xcb-render found: YES 1.14 Run-time dependency xcb-damage found: YES 1.14 Run-time dependency xcb-randr found: YES 1.14 Run-time dependency xcb-sync found: YES 1.14 Run-time dependency xcb-composite found: YES 1.14 Run-time dependency xcb-shape found: YES 1.14 Run-time dependency xcb-xinerama found: YES 1.14 Run-time dependency xcb-xfixes found: YES 1.14 Run-time dependency xcb-present found: YES 1.14 Run-time dependency xcb-glx found: YES 1.14 Run-time dependency xcb found: YES 1.14 Has header "uthash.h": YES Run-time dependency libconfig found: YES 1.5 Run-time dependency libpcre found: YES 8.39 Run-time dependency gl found: YES 1.2 Run-time dependency dbus-1 found: YES 1.12.16 Program meson / install.sh found: YES (/ bin / sh /home/rau/picom/meson/install.sh) Build targets in project: 1

picom 8

  Subprojects     test.h: YES

Found ninja-1.10.0 at / usr / bin / ninja

I did not find the dependency libev in the repository or another similar one as in the case of libpcre but it seems that it was not very important because I ran the command again: $ sudo meson --buildtype = release. build

And returned:

Directory already configured.

Just run your build command (e.g. ninja) and Meson will regenerate as necessary. If ninja fails, run "ninja reconfigure" or "meson --reconfigure" to force Meson to regenerate.

If build failures persist, run "meson setup --wipe" to rebuild from scratch using the same options as passed when configuring the build. To change option values, run "meson configure" instead.

Then I executed:

$ sudo ninja -C build

ninja: Entering directory `build ' [1/28] Compiling C object 'src / 25a6634 @@ picom @ exe / picom.c.o'. ../src/picom.c: In function ‘main’: ../src/picom.c:2419:4: warning: ignoring return value of 'write', declared with attribute warn_unused_result [-Wunused-result]  2419 | write (pfds [1], & tmp, sizeof tmp);       | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [6/28] Compiling C object 'src / 25a6634 @@ picom @ exe / utils.c.o'. ../src/utils.c: In function ‘report_allocation_failure’: ../src/utils.c:29:2: warning: ignoring return value of ‘writev’, declared with attribute warn_unused_result [-Wunused-result]    29 | writev (STDERR_FILENO, v, ARR_SIZE (v));       | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [11/28] Compiling C object 'src / 25a6634 @@ picom @ exe / log.c.o'. ../src/log.c: In function ‘file_logger_writev’: ../src/log.c:258:2: warning: ignoring return value of 'writev', declared with attribute warn_unused_result [-Wunused-result]   258 | writev (fileno (f-> f), vec, vcnt);       | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [28/28] Linking target src / picom.

And later:

$ sudo ninja -C build install

ninja: Entering directory `build ' [0/1] Installing files. Installing src / picom to / usr / local / bin Installing / home / rau / picom / bin / picom-trans to / usr / local / bin Installing /home/rau/picom/compton.desktop to / usr / local / share / applications Installing /home/rau/picom/picom.desktop to / usr / local / share / applications Installing /home/rau/picom/media/icons/48x48/compton.png to / usr / local / share / icons / hicolor / 48x48 / apps Installing /home/rau/picom/media/compton.svg to / usr / local / share / icons / hicolor / scalable / apps Running custom install script '/ bin / sh /home/rau/picom/meson/install.sh' Linking picom to / usr / local / bin / compton Linking picom-trans to / usr / local / bin / compton-trans

Ready!!! accomplished!!!

Later I copied the existing picom.sample.conf file into the picom folder, renamed it to picom.conf and saved it in the ~ / .config folder. I'm still messing around with the settings. I must say that it feels more fluid than Compton and I liked the description included in the sample configuration file better. Many of the settings are applied just by clicking save, without having to kill picom and run it again. Sorry to put all the code, but I think it may be useful for other beginners like me, it could help them get familiar with the process.

Thank you all very much for the help provided. I really really enjoyed it.

Should I change the name of the opening question to picom?

I have other questions like: What about all the dependencies I had to install for compilation? Should I uninstall them? If I had to reinstall the system at some point would I have to recompile it or is there a way to save it maybe in deb packages? Maybe I should open a new topic for these questions but I think they are related and may be doubts about it for others.

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Dev

How to convert Ubuntu to Xubuntu

From Dev

Xubuntu live usb persistence - how to?

From Dev

How to remove xubuntu-desktop?

From Dev

How to access hidden GRUB in Xubuntu

From Dev

How to open terminal on Xubuntu?

From Dev

Touchpad buttons on a HP Elitebook with Ubuntu-20-04 are not working

From Dev

how to discard saved session on Xubuntu

From Dev

Xubuntu live usb persistence - how to?

From Dev

How to remove xubuntu-desktop?

From Dev

How to access hidden GRUB in Xubuntu

From Dev

How to open terminal on Xubuntu?

From Dev

How to lock the screen in XUbuntu 16.04

From Dev

how to discard saved session on Xubuntu

From Dev

How to convert Ubuntu to Xubuntu

From Dev

How to install Gala on Xubuntu 14.04?

From Dev

Xubuntu 14.04: how to enable hibernate?

From Dev

how to select xubuntu-desktop?

From Dev

How to use the 'leave' command in Xubuntu?

From Dev

How to Remove Bluetooth Manager in Xubuntu

From Dev

How do I avoid Compton drawing shadows on the Gnome-Do window?

From Dev

How to log in automatically in Xubuntu 15.10?

From Dev

Xubuntu: How to reset a menu accelerator?

From Dev

How to remove desktop icons in Xubuntu?

From Dev

How to exclude the Fluxbox taskbar from Compton (shadowing)?

From Dev

How to apply strict pattern matching for title names in compton config file?

From Dev

how can i seperate date and time for this format 2017-04-11T10:20:46.000+0000 in swift3

From Dev

How to remove a keychain in xubuntu?

From Dev

Xubuntu 20:04 (focal): IPKernelApp|Error|No such comm target registered|jupyter.widget.version

From Dev

Set Lubuntu 20_04LXQT theme to dark