有人可以帮我编译这个康普顿叉吗?
https://github.com/tryone144/compton/tree/improved_fbo
.我已按照此处的说明进行操作:github.com/tryone144/compton/blob/improved_fbo/README_orig.md
我安装了依赖项,我真的有点迷失在我必须做的一切。如果有人能花点时间,那将是一个很大的帮助
我仍然不明白如何从 git 克隆,所以我下载了 zip,单击代码,然后单击克隆或下载按钮,然后将其解压缩并按照 README_org.md 文件中的说明进行操作。我安装了依赖项,然后在提取的文件夹中打开了一个终端并运行:
文件或目录不存在 18 | #包括 | ^ ~~~~~~~ 编译终止。make: *** [Makefile: 141: c2.o] 错误 1 rau@rau-B250M-DS3H:~/Desktop/compton-improved_fbo$
我决定听从 kanehekili 的建议,去寻找 picom。我已经解决了两个问题:在必须安装 git 之前,我学会了如何克隆 git
$ sudo apt install git 克隆的地址来自克隆按钮或下载 Zip(我多傻)。所以:
$ sudo git clone https://github.com/yshui/picom.git
下载保存在个人文件夹中,名称为 picom
然后我安装了 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 utash-dev libev-dev libx11-xcb -开发
我还必须安装 cmake 和 meson
$ sudo apt install cmake 介子
然后按照说明进行操作: $ git submodule update --init --recursive $ sudo meson --buildtype = release. 建造
Meson 构建系统版本:0.53.2 源目录:/home/rau/picom 构建目录:/home/rau/picom/build 构建类型:native build 项目名称:picom 项目版本:8 C 宿主机编译器:cc (gcc 9.3.0 "cc (Ubuntu 9.3.0-10ubuntu2) 9.3.0") 宿主机的 C 链接器:cc ld.bfd 2.34 宿主机 cpu 系列:x86_64 宿主机 cpu:x86_64 找到的程序 git:YES (/ usr / bin / git) 具有标题“stdc-predef.h”:是 C 编译器支持参数 -Wall:是 meson.build:63:警告:考虑使用内置的warning_level 选项而不是使用“-Wall”。C 编译器支持参数 -Wcast-function-type: YES C 编译器支持参数 -Wignored-qualifiers: YES C 编译器支持参数 -Wmissing-parameter-type: YES C 编译器支持参数 -Wnonnull:
| 执行子项目 test.h 方法 meson | | 项目名称:test.h | 项目版本:未定义 | 主机的 C 编译器:cc (gcc 9.3.0 "cc (Ubuntu 9.3.0-10ubuntu2) 9.3.0") | 主机的 C 链接器:cc ld.bfd 2.34 | 项目中的构建目标:0 | 子项目 test.h 完成。
找到 pkg-config:/usr/bin/pkg-config (0.29.1) 找到 CMake:/usr/bin/cmake (3.16.3) 找到运行时依赖 libev: NO (试过 pkgconfig 和 cmake) 找到库 ev: 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找到:是 0.4.0 找到运行时依赖 xext:是 1.3.4 找到运行时依赖 pixman-1:是 0.38.4 找到运行时依赖 xcb-render:是 1.14 找到运行时依赖 xcb-damage:是 1.14 找到运行时依赖 xcb-randr:是 1.14 找到运行时依赖 xcb-sync:是 1.14 找到运行时依赖 xcb-composite:是 1.14 找到运行时依赖 xcb-shape:是 1.14 运行时依赖找到 xcb-xinerama:是 1.14 找到运行时依赖项 xcb-xfixes:是 1。14 找到运行时依赖 xcb-present:是 1.14 找到运行时依赖 xcb-glx:是 1.14 找到运行时依赖 xcb:是 1.14 有标头“uthash.h”:是 找到运行时依赖 libconfig:是 1.5找到运行时依赖 libpcre:否(已尝试 pkgconfig 和 cmake)
src / meson.build: 47: 1: ERROR: Dependency "libpcre" not found, 试过 pkgconfig 和 cmake
完整的日志可以在 /home/rau/picom/build/meson-logs/meson-log.txt 找到
我没有在存储库中找到 libpcre 依赖项。我找到了 libpcre3 并安装了它,通过突触寻找它。
$ sudo apt install libpcre3
然后:
$ sudo meson --buildtype = 发布。build Meson 构建系统版本:0.53.2 源目录:/home/rau/picom 构建目录:/home/rau/picom/build 构建类型:native build 项目名称:picom 项目版本:8 C 宿主机编译器: cc (gcc 9.3.0 "cc (Ubuntu 9.3.0-10ubuntu2) 9.3.0") 主机的 C 链接器:cc ld.bfd 2.34 主机 cpu 系列:x86_64 主机 cpu:x86_64 找到的程序 git:YES ( /usr/bin/git) 有头文件 "stdc-predef.h": YES Compiler for C supports arguments -Wall: YES meson.build:63: WARNING: 考虑使用内置的warning_level选项而不是使用“-Wall” . C 编译器支持参数 -Wcast-function-type: YES C 编译器支持参数 -Wignored-qualifiers: YES C 编译器支持参数 -Wmissing-parameter-type:
| 执行子项目 test.h 方法 meson | | 项目名称:test.h | 项目版本:未定义 | 主机的 C 编译器:cc (gcc 9.3.0 "cc (Ubuntu 9.3.0-10ubuntu2) 9.3.0") | 主机的 C 链接器:cc ld.bfd 2.34 | 项目中的构建目标:0 | 子项目 test.h 完成。
找到 pkg-config:/usr/bin/pkg-config (1.6.3) 找到 CMake:/usr/bin/cmake (3.16.3) 找到运行时依赖 libev: NO (试过 pkgconfig 和 cmake) 找到库 ev: 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找到:是 0.4.0 找到运行时依赖 xext:是 1.3.4 找到运行时依赖 pixman-1:是 0.38.4 找到运行时依赖 xcb-render:是 1.14 找到运行时依赖 xcb-damage:是 1.14 找到运行时依赖 xcb-randr:是 1.14 找到运行时依赖 xcb-sync:是 1.14 找到运行时依赖 xcb-composite:是 1.14 找到运行时依赖 xcb-shape:是 1.14 运行时依赖找到 xcb-xinerama:是 1.14 找到运行时依赖项 xcb-xfixes:是 1。14 找到运行时依赖 xcb-present:是 1.14 找到运行时依赖 xcb-glx:是 1.14 找到运行时依赖 xcb:是 1.14 有标头“uthash.h”:是找到运行时依赖 libconfig:是 1.5找到运行时依赖libpcre:YES 8.39 找到运行时依赖gl:YES 1.2 找到运行时依赖dbus-1:YES 1.12.16 找到程序介子/install.sh:YES (/bin/sh /home/rau/ picom/meson/install.sh) 项目中的构建目标:1YES (/bin/sh /home/rau/picom/meson/install.sh) 项目中的构建目标:1YES (/bin/sh /home/rau/picom/meson/install.sh) 项目中的构建目标:1
皮康8
子项目 test.h:是
在 /usr/bin/ninja 找到 ninja-1.10.0
我没有在存储库中找到依赖项 libev 或其他与 libpcre 类似的依赖项,但它似乎不是很重要,因为我再次运行了命令:$ sudo meson --buildtype = release. 建造
并返回:
目录已配置。
只需运行您的构建命令(例如 ninja),Meson 将根据需要重新生成。如果 ninja 失败,请运行“ninja reconfigure”或“meson --reconfigure”来强制 Meson 重新生成。
如果构建失败仍然存在,请运行“meson setup --wipe”以使用与配置构建时传递的相同选项从头开始重建。要更改选项值,请改为运行“介子配置”。
然后我执行:
$ sudo ninja -C 构建
ninja:进入目录 `build' [1/28] 编译 C 对象 'src / 25a6634 @@ picom @ exe / picom.co'。../src/picom.c:在函数'main'中:../src/picom.c:2419:4:警告:忽略'write'的返回值,用属性warn_unused_result声明[-Wunused-result] 2419 | 写 (pfds [1], & tmp, sizeof tmp); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [6/28] 编译C对象'src/25a6634@@picom@exe/ utils.co'。../src/utils.c:在函数'report_allocation_failure'中:../src/utils.c:29:2:警告:忽略'writev'的返回值,用属性warn_unused_result [-Wunused-result]声明29 | writev (STDERR_FILENO, v, ARR_SIZE (v)); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [11/28] 编译C对象'src/25a6634@ @picom @exe / log.co'。../src/log.c:在函数“file_logger_writev”中:../src/log.c:258:2:警告:忽略'writev'的返回值,用属性warn_unused_result声明[-Wunused-result] 258 | writev (fileno (f-> f), vec, vcnt); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [28/28] 链接目标src / picom。
然后:
$ sudo ninja -C 构建安装
ninja: 进入目录`build' [0/1] 安装文件。安装src/picom到/usr/local/bin 安装/home/rau/picom/bin/picom-trans到/usr/local/bin 安装/home/rau/picom/compton.desktop到/usr/local/share/ applications 安装 /home/rau/picom/picom.desktop 到 /usr/local/share/applications 安装 /home/rau/picom/media/icons/48x48/compton.png 到 /usr/local/share/icons/hicolor/ 48x48 / 应用程序将 /home/rau/picom/media/compton.svg 安装到 /usr/local/share/icons/hicolor/scalable/apps 运行自定义安装脚本'/bin/sh /home/rau/picom/meson/install .sh' 将 picom 链接到 /usr/local/bin/compton 将 picom-trans 链接到 /usr/local/bin/compton-trans
准备好!!!达成!!!
后来我把已有的 picom.sample.conf 文件复制到 picom 文件夹中,重命名为 picom.conf 并保存在 ~/.config 文件夹中。我仍然在搞乱设置。我必须说它比 Compton 感觉更流畅,我更喜欢示例配置文件中包含的描述。只需单击保存即可应用许多设置,而无需终止 picom 并再次运行它。很抱歉放了所有代码,但我认为它可能对像我这样的其他初学者有用,它可以帮助他们熟悉这个过程。
非常感谢大家提供的帮助。我真的很喜欢它。
我应该将开场问题的名称更改为 picom 吗?
我还有其他问题,例如:我必须为编译安装的所有依赖项怎么样?我应该卸载它们吗?如果我必须在某个时候重新安装系统,我是否必须重新编译它,或者有没有办法将它保存在 deb 包中?也许我应该为这些问题开辟一个新话题,但我认为它们是相关的,并且可能对其他人表示怀疑。
康普顿死了。它不再维护。玉石接手并调整了很多。请参阅此处了解更多信息。您的链接也基于来自 chjj 的原始 compton repo 的一个分支。
picom(这是 compton 的新名称)解释了您需要编译哪些库。我使用 picom 有一段时间了——它考虑到了较新的显卡。如果你有旧硬件,你可能会坚持原来的康普顿。
这可能不会让您直接达到目标,但在花时间编译未维护的软件之前,最好先转到已维护的软件……它有一个活跃的“问题”部分,您可以在其中询问您是否被卡住了.
祝你好运。如果您能在成功时分享您的经验,那就太好了。