Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Does not build on Fedora Rawhide #22

Open
lzap opened this issue Jul 23, 2018 · 7 comments
Open

Does not build on Fedora Rawhide #22

lzap opened this issue Jul 23, 2018 · 7 comments
Assignees

Comments

@lzap
Copy link

lzap commented Jul 23, 2018

Hello there!

Upcoming changes in glibc 2.28 broke the package.

https://koji.fedoraproject.org/koji/taskinfo?taskID=28542910

https://kojipkgs.fedoraproject.org//work/tasks/2910/28542910/build.log

gcc -DHAVE_CONFIG_H -I.     -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c -o printf-args.o printf-args.c
fseterr.c: In function 'fseterr':
fseterr.c:77:3: error: #error "Please port gnulib fseterr.c to your platform! Look at the definitions of ferror and clearerr on your system, then report this to bug-gnulib."
  #error "Please port gnulib fseterr.c to your platform! Look at the definitions of ferror and clearerr on your system, then report this to bug-gnulib."
   ^~~~~
make[3]: *** [Makefile:1474: fseterr.o] Error 1
make[3]: *** Waiting for unfinished jobs....

Thanks for help.

@hanetzer
Copy link

Same here on gentoo. Thought it was an issue for arm but also exists for amd64 systems w/gcc-8.
An update of gnulib would do the trick.

@jnumm
Copy link

jnumm commented Dec 19, 2018

FTR, also in Debian Sid: https://bugs.debian.org/915171.

@kjn kjn self-assigned this Dec 26, 2018
@kjn
Copy link
Owner

kjn commented Dec 26, 2018

This will be fixed in the next release when I rebase Gnulib to latest version.

@lzap
Copy link
Author

lzap commented Jan 8, 2019

Thanks, please poke me once new release is wild so I can update the Fedora package. Not sure if I have release monitor on lbzip2.

@lzap
Copy link
Author

lzap commented Feb 12, 2019

Hello, any updates?

@logological
Copy link

logological commented Jun 16, 2019

For those who want a version of the source distribution that builds with glibc ≥2.28, but who lack the time or knowledge to do so themselves, I've forked this repository and added signed, buildable source releases for v2.5.

I have also updated the OBS project for lbzip2 so that it uses my source release. This means that you can now once again get working source and binary RPMs for lbzip2 for openSUSE and SUSE Linux Enterprise Server.

Hopefully these will serve until @kjn is able to update the official distribution in this repository.

P.S. – Note that make distcheck does not seem to work with my source distribution; all tests fail with the error that the directory cannot be opened. I'm not sure if this is the result of my own re-bootstrapping or if this was a pre-existing problem. However, I've verified that all the tests run fine if the driver and minbzcat executables are manually copied into the tests directory.

@0xaf1f
Copy link

0xaf1f commented Mar 5, 2023

To avoid using a third party source distribution, these are the steps I had to do for updating the gnulib distribution in the tarball:

  • Retrieve and extract gnulib
wget -O gnulib.tar.gz "https://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=snapshot;h=HEAD;sf=tgz"
tar -xf gnulib.tar.gz
  • enter the lbzip2 directory (assuming you downloaded it already) and get ready to update gnulib. gnulib-tool refuses to run until you bump up the minimum required autoconf version.
cd lbzip2
sed -i '/AC_PREREQ/s/2.63/2.64/' configure.ac
  • Update gnulib. We're supposed to be able to update all the existing modules in the source directory by simply running ../gnulib/gnulib-tool --add-import (see https://www.gnu.org/software/gnulib/manual/gnulib.html#Simple-update ), but this didn't actually work, so I had to figure out what all the used modules are through trial and error. Here you go:
../gnulib-HEAD-*/gnulib-tool --import pthread-h xalloc dtotimespec gettime timespec-{add,sub} fdutimensat
  • bootstrap and configure/build/install. The rest of the installation as usual.
autoreconf
./configure
make
make check
make install

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants