Tom Callaway
2016-Jan-18 14:52 UTC
[R-sig-Fedora] WARNING you cannot build info or html versions of the R manuals
On 01/16/2016 05:24 PM, Rolf Turner wrote:> All that being said, the question remains as to *why* R cannot find > "texinfo" when it is indeed present on my system.Rather than give you a lengthy discussion of how RPM building works and hacking the R spec, let's focus on this question instead (I'm still willing to show you RPM building if you'd like, because if you're sticking with Fedora 17 indefinitely it will be useful to you...) The warning message string "you cannot build info or HTML versions of the R manuals" comes from m4/R.m4: if test "${r_cv_prog_texi2any_v5}" != yes; then warn_info="you cannot build info or HTML versions of the R manuals" AC_MSG_WARN([${warn_info}]) MAKEINFO="" else MAKEINFO="${MAKEINFO}" fi In that same file, if you look at the beginning of the m4 function, you see this comment: ## Building the R Texinfo manuals requires texinfo v5.1 or later. ## Set shell variable r_cv_prog_texi2any_v5 to 'yes' if a recent ## enough Makeinfo is found, and to 'no' otherwise. Fedora 17 has texinfo 4.1, which is several years older than 5.1. You'll need to upgrade that to silence this error in R. You might try rebuilding the latest texinfo src RPM. We're at 6.0 in Fedora 23+: http://koji.fedoraproject.org/koji/buildinfo?buildID=676407 Download the src RPM from that page, then, on your system, try: rpmbuild --rebuild texinfo-6.0-2.fc24.src.rpm That should (hopefully) result in a texinfo RPM built for Fedora 17. Then you can install the new RPMS (they'll be in ~/rpmbuild/RPMS/$target where $target is probably x86_64): rpm -Uvh info-6.0-2.fc17.*.rpm texinfo-6.0-2.fc17.*.rpm hth, ~tom =Red Hat
Rolf Turner
2016-Jan-18 19:12 UTC
[R-sig-Fedora] WARNING you cannot build info or html versions of the R manuals
Thank you *very* much for this clear and detailed response. I will give it a try and report on what happens later today. Thanks again. cheers, Rolf -- Technical Editor ANZJS Department of Statistics University of Auckland Phone: +64-9-373-7599 ext. 88276 On 19/01/16 03:52, Tom Callaway wrote:> On 01/16/2016 05:24 PM, Rolf Turner wrote: >> All that being said, the question remains as to *why* R cannot find >> "texinfo" when it is indeed present on my system. > > Rather than give you a lengthy discussion of how RPM building works and > hacking the R spec, let's focus on this question instead (I'm still > willing to show you RPM building if you'd like, because if you're > sticking with Fedora 17 indefinitely it will be useful to you...) > > The warning message string "you cannot build info or HTML versions of > the R manuals" comes from m4/R.m4: > > if test "${r_cv_prog_texi2any_v5}" != yes; then > warn_info="you cannot build info or HTML versions of the R manuals" > AC_MSG_WARN([${warn_info}]) > MAKEINFO="" > else > MAKEINFO="${MAKEINFO}" > fi > > In that same file, if you look at the beginning of the m4 function, you > see this comment: > > ## Building the R Texinfo manuals requires texinfo v5.1 or later. > ## Set shell variable r_cv_prog_texi2any_v5 to 'yes' if a recent > ## enough Makeinfo is found, and to 'no' otherwise. > > Fedora 17 has texinfo 4.1, which is several years older than 5.1. You'll > need to upgrade that to silence this error in R. > > You might try rebuilding the latest texinfo src RPM. We're at 6.0 in > Fedora 23+: > > http://koji.fedoraproject.org/koji/buildinfo?buildID=676407 > > Download the src RPM from that page, then, on your system, try: > > rpmbuild --rebuild texinfo-6.0-2.fc24.src.rpm > > That should (hopefully) result in a texinfo RPM built for Fedora 17. > Then you can install the new RPMS (they'll be in ~/rpmbuild/RPMS/$target > where $target is probably x86_64): > > rpm -Uvh info-6.0-2.fc17.*.rpm texinfo-6.0-2.fc17.*.rpm > > hth, > > ~tom > > => Red Hat
Rolf Turner
2016-Jan-19 01:50 UTC
[R-sig-Fedora] WARNING you cannot build info or html versions of the R manuals
On 19/01/16 03:52, Tom Callaway wrote:> On 01/16/2016 05:24 PM, Rolf Turner wrote: >> All that being said, the question remains as to *why* R cannot find >> "texinfo" when it is indeed present on my system. > > Rather than give you a lengthy discussion of how RPM building works and > hacking the R spec, let's focus on this question instead (I'm still > willing to show you RPM building if you'd like, because if you're > sticking with Fedora 17 indefinitely it will be useful to you...) > > The warning message string "you cannot build info or HTML versions of > the R manuals" comes from m4/R.m4: > > if test "${r_cv_prog_texi2any_v5}" != yes; then > warn_info="you cannot build info or HTML versions of the R manuals" > AC_MSG_WARN([${warn_info}]) > MAKEINFO="" > else > MAKEINFO="${MAKEINFO}" > fi > > In that same file, if you look at the beginning of the m4 function, you > see this comment: > > ## Building the R Texinfo manuals requires texinfo v5.1 or later. > ## Set shell variable r_cv_prog_texi2any_v5 to 'yes' if a recent > ## enough Makeinfo is found, and to 'no' otherwise. > > Fedora 17 has texinfo 4.1, which is several years older than 5.1. You'll > need to upgrade that to silence this error in R. > > You might try rebuilding the latest texinfo src RPM. We're at 6.0 in > Fedora 23+: > > http://koji.fedoraproject.org/koji/buildinfo?buildID=676407 > > Download the src RPM from that page, then, on your system, try: > > rpmbuild --rebuild texinfo-6.0-2.fc24.src.rpm > > That should (hopefully) result in a texinfo RPM built for Fedora 17. > Then you can install the new RPMS (they'll be in ~/rpmbuild/RPMS/$target > where $target is probably x86_64): > > rpm -Uvh info-6.0-2.fc17.*.rpm texinfo-6.0-2.fc17.*.rpm > > hth, > > ~tomOkay; tried this. The executive summary is: It didn't work. In more detail: I got a sequence of warnings warning: group mockbuild does not exist - using root which I ignored. Then got an error:> 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_64Did 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. 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 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.) 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_64Found 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.noarchScrounged around with Google; found instructions for installing perl modules using "cpanm". Did cpan App::cpanminus and then cpanm Module::Package This seemed to install a plethora of Modules. I then tried rpmbuild --rebuild perl-Unicode-EastAsianWidth-1.33-6.fc23.src.rpm again, and got the same error messages as before. So perhaps (somehow) my installation of perl modules was ineffective. But at this stage I was just getting too flummoxed and bewildered and was feeling too far out of my depth, so I have for the time being at least given up. It looks pretty hopeless to me. cheers, Rolf
Tom Callaway
2016-Jan-19 23:20 UTC
[R-sig-Fedora] WARNING you cannot build info or html versions of the R manuals
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 rootYep. 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_64These 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 at 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 didThat 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
Possibly Parallel Threads
- WARNING you cannot build info or html versions of the R manuals
- WARNING you cannot build info or html versions of the R manuals
- WARNING you cannot build info or html versions of the R manuals
- WARNING you cannot build info or html versions of the R manuals
- WARNING you cannot build info or html versions of the R manuals