【发布时间】:2022-03-13 01:02:50
【问题描述】:
我通常不使用 Fedora 或 RPM,所以在这里我是盲目的。这里有很多类似的问题,但我发现没有一个与我陷入困境的确切点有关。
我有 Fedora 上一个旧游戏程序的源 RPM(“六”是游戏)。我想添加一些功能,但首先我想确保我知道如何编译它,以便将来出现新问题。我还没有进行任何更改。
我并非完全无助——当我这样做时
rpmbuild --recompile six-*.src.rpm
我收到了关于缺少依赖项的投诉:“kdelibs3-devel”,但是
dnf install kdelibs3-devel
处理好了。
但是,现在的投诉更加细微。当我重试 rpmbuild 时,它以
结束checking crt_externs.h usability... no
checking crt_externs.h presence... no
checking for crt_externs.h... no
checking for _NSGetEnviron... no
checking for vsnprintf... yes
checking for snprintf... yes
checking for X... libraries /usr/lib64, headers .
checking for IceConnectionNumber in -lICE... yes
checking for libXext... yes
checking for pthread_create in -lpthread... yes
checking for extra includes... no
checking for extra libs... no
checking for libz... -lz
checking for libpng... -lpng -lz -lm
checking for libjpeg6b... no
checking for libjpeg... no
configure: WARNING: libjpeg not found. disable JPEG support.
checking for perl... /usr/bin/perl
checking for Qt... configure: error: Qt (>= Qt 3.3 and < 4.0) (library qt-mt) not found. Please check your installation!
For more details about this problem, look at the end of config.log.
Make sure that you have compiled Qt with thread support!
error: Bad exit status from /var/tmp/rpm-tmp.y8dvN5 (%build)
RPM build errors:
user mockbuild does not exist - using root
user mockbuild does not exist - using root
user mockbuild does not exist - using root
user mockbuild does not exist - using root
Bad exit status from /var/tmp/rpm-tmp.y8dvN5 (%build)
这里有几件事情看起来很奇怪,但明显的大问题是未能找到介于 3.3 和 4.0 之间的 Qt。这显然是为 Fedora 维护者编译的,所以应该可以使用正确的东西,但我不知道它的确切名称是什么,也不知道如何找到它并使其可用。
请帮忙。 .
【问题讨论】:
-
我还要注意系统确实安装了 libjpeg-turbo。我想知道是否有 libjpeg 可用(dnf 似乎不这么认为)。
-
仅供参考,如果您宁愿与原始来源斗争,Internet Archive 仍然有它们。奇怪的是,当我下载一个
*.tar.gz文件时,它实际上只是一个*.tar文件。 -
原始源代码不会使用现代 gcc 编译器构建;你需要 Fedora 添加的补丁。
-
因此,斗争。