On 01/18/2016 08:50 PM, Rolf Turner wrote: > Okay; tried this. The executive summary is: It didn't work.
I normally would charge a modest fee of a good bottle of liquor or a six-pack of craft beer for the following lesson, but in the spirit of easing your suffering, I shall do it once more at no charge. ;) Let's look at what didn't work. > In more detail: I got a sequence of warnings > > warning: group mockbuild does not exist - using root Yep. This is safe to ignore. What RPM is saying here is that the user who originally built this package ("mockbuild") isn't on your system. "mockbuild" is the unprivileged user/group that the Fedora buildsystem uses to build packages. However, part of that warning is something you should not ignore: " - using root". You should not be building software as root. That path leads to terrible pain and destruction. When you're ready to install the software you've built, su to root, but not before. >> error: Failed build dependencies: >> help2man is needed by texinfo-6.0-2.fc17.x86_64 >> perl(Locale::Messages) is needed by texinfo-6.0-2.fc17.x86_64 >> perl(Unicode::EastAsianWidth) is needed by texinfo-6.0-2.fc17.x86_64 >> perl(Text::Unidecode) is needed by texinfo-6.0-2.fc17.x86_64 These messages come from RPM and they say "I've checked my database of packages against what this src RPM says it needs to build and nothing provides these". RPM isn't psychic. It only knows about packages that have been installed by RPM. Anything you build from source by hand is not known to it at all. These "perl(Foo::Bar)" dependencies are provided by perl packages, where Foo::Bar is the CPAN module. You can see an example of this by querying the perl package: [spot@localhost ~]$ rpm -q perl --provides perl = 4:5.22.1-355.fc24 perl(AnyDBM_File) = 1.01 perl(AutoLoader) = 5.74 perl(AutoSplit) = 1.06 ... This allows you to say: yum install "perl(AnyDBM_File)" And yum will go find the RPM package that Provides: perl(AnyDBM_File) and install it for you. You don't have to remember the name of the package, just the CPAN module name. > Did a sudo yum install help2man which seemed to work. > Then searched > around to try to fathom the perl messages. Found indications that I > needed to install perl-libintl-1.20-13.fc21.src.rpm. Points to you. perl-libintl Provides: perl(Locale::Messages). That package actually exists in Fedora 17, so you can do: sudo yum install "perl(Locale::Messages)" And it will install it for you. The same is true for "perl(Text::Unidecode)" but sadly, not for "perl(Unicode::EastAsianWidth)". > Got that rpm and did > > rpmbuild --rebuild perl-libintl-1.20-13.fc21.src.rpm > > going by analogy and hope. Something seemed to happen. Then did That built the src rpm into binary packages for Fedora 17. > cd ~/rpmbuild/RPMS/x86_64 > sudo rpm -Uvh perl-libintl-1.20-13.fc17.x86_64.rpm > perl-libintl-debuginfo-1.20-13.fc17.x86_64.rpm > > (The forgoing two lines were actually a single line; I broke it for > email formatting.) That's fine. For future knowledge, you only need to install the debuginfo packages if you're planning on running the binaries in the main RPM through gdb. Otherwise, it's just eating space on your hard drive. > Then tried > > rpmbuild --rebuild texinfo-6.0-2.fc24.src.rpm > > again. Got the warnings again, of course, then the errors: > >> error: Failed build dependencies: >> perl(Unicode::EastAsianWidth) is needed by texinfo-6.0-2.fc17.x86_64 >> perl(Text::Unidecode) is needed by texinfo-6.0-2.fc17.x86_64 > > > Found what seemed to be an appropriate rpm and did > > rpmbuild --rebuild perl-Unicode-EastAsianWidth-1.33-6.fc23.src.rpm > > Got the errors > >> error: Failed build dependencies: >> perl(Module::Package) is needed by >> perl-Unicode-EastAsianWidth-1.33-6.fc17.noarch >> perl(Pod::Markdown) is needed by >> perl-Unicode-EastAsianWidth-1.33-6.fc17.noarch >> perl(Module::Package::Au) is needed by >> perl-Unicode-EastAsianWidth-1.33-6.fc17.noarch > > Scrounged around with Google; found instructions for installing perl > modules using "cpanm". Here's where you got off the main road: Installing modules via CPAN is the same as building them by hand: RPM doesn't know they exist. And that's where you lost hope. What you need to do is to keep tracing down RPM packages for dependencies and rebuilding. Normally, most Fedora users don't have to do this, because we build a whole repository of packages for them, but since you're 6 (almost 7) releases out of date, you've got harder work to do. koji.fedoraproject.org is your friend here. You can search for srpms there, download them, and rebuild them. That said, since you've listened to all of this, I've installed a Fedora 17 VM instance on my laptop and built you the missing packages you need to build R fully featured: https://spot.fedorapeople.org/fedora17-R-deps/ There is a src.rpm in there too for texlive, you don't need to install it, I just included it because I had to make a minor fix in that package to reflect the dependencies available in Fedora 17 (but really only to install the texinfo-tex subpackage, which I don't think you need to build R... but still, better complete than not). Good luck! ~tom == Red Hat _______________________________________________ R-SIG-Fedora mailing list R-SIG-Fedora@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-fedora