Code Monkey home page Code Monkey logo

Comments (7)

dslm4515 avatar dslm4515 commented on June 12, 2024 1

Looks like there is a patch for zlib-ng from OpenMandriva

https://github.com/OpenMandrivaAssociation/zlib-ng/blob/master/0001-Fix-Z_SOLO-mode.patch

from cmlfs.

dslm4515 avatar dslm4515 commented on June 12, 2024 1

For now, will allow Perl to use it's bundled zlib source:

# Ensure that we never accidentally bundle bzip2
rm -rf cpan/Compress-Raw-Bzip2/bzip2-src
sed -i '/\bzip2\-src/d' MANIFEST

from cmlfs.

dslm4515 avatar dslm4515 commented on June 12, 2024 1

Without those commands, perl builds with the bundled bzip2 and zlib source in the perl source.

I assume LFS forced perl to not use the bundled sources (zlib & bzip2) in case those bundled sources are out of date.

Main issue is incompatible zlib-ng headers causes the Compress-Raw-Zlib perl module to not compile... I can't find anyone who has built perl with zlib-ng.

I do not have enough programming experience to fix the Compress-Raw-Zlib` perl module source to work with zlib-ng

from cmlfs.

dslm4515 avatar dslm4515 commented on June 12, 2024 1

Normally when building a system from source, one would rather use the freshly built libraries than a package's bundled 3rd-party library source.

The perl source has bundled copies of the sourcecode for bzip2 and zlib. This is handy if building perl on a system that may not have bzip2 or zlib installed. Otherwise, its like compiling zlib and bzip2 twice: once for the system and again for perl.

from cmlfs.

dslm4515 avatar dslm4515 commented on June 12, 2024

Perl still fails. Only 2 of 7 errors fixed with patch.

In file included from Zlib.xs:34:
/usr/include/zlib.h:1820:13: error: unknown type name 'gzFile'
   Z_EXTERN gzFile Z_EXPORT gzopen(const char *, const char *);
            ^
/usr/include/zlib.h:1821:45: error: unexpected type name 'off_t': expected identifier
   Z_EXTERN z_off_t Z_EXPORT gzseek(gzFile, z_off_t, int);
                                            ^
/usr/include/zconf.h:159:21: note: expanded from macro 'z_off_t'
#    define z_off_t off_t
                    ^
In file included from Zlib.xs:34:
/usr/include/zlib.h:1821:54: error: expected identifier
   Z_EXTERN z_off_t Z_EXPORT gzseek(gzFile, z_off_t, int);
                                                     ^
/usr/include/zlib.h:1822:37: error: a parameter list without types is only allowed in a function definition
   Z_EXTERN z_off_t Z_EXPORT gztell(gzFile);
                                    ^
/usr/include/zlib.h:1823:39: error: a parameter list without types is only allowed in a function definition
   Z_EXTERN z_off_t Z_EXPORT gzoffset(gzFile);
                                      ^
449 warnings and 5 errors generated.
make[1]: *** [Makefile:348: Zlib.o] Error 1
make[1]: Leaving directory '/sources/perl-5.34.0/cpan/Compress-Raw-Zlib'
Unsuccessful make(cpan/Compress-Raw-Zlib): code=512 at make_ext.pl line 584.
make: *** [makefile:575: lib/auto/Compress/Raw/Zlib/Zlib.so] Error 2

from cmlfs.

owl4ce avatar owl4ce commented on June 12, 2024

Build successful without these commands. 😄

CMLFS/3-chroot/042-perl

Lines 10 to 13 in 9ff9373

# Ensure that we never accidentally bundle zlib or bzip2
rm -rf cpan/Compress-Raw-Zlib/zlib-src
rm -rf cpan/Compress-Raw-Bzip2/bzip2-src
sed -i '/\(bzip2\|zlib\)-src/d' MANIFEST

from cmlfs.

owl4ce avatar owl4ce commented on June 12, 2024

Confusing ..

from cmlfs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.