dslm4515 / mlfs-pkgtool Goto Github PK
View Code? Open in Web Editor NEWSlackware's pkgtool for Musl-LFS
Slackware's pkgtool for Musl-LFS
With Python 3.8.0, meson errors out:
Traceback (most recent call last):
File "setup.py", line 25, in <module>
from setuptools import setup
File "/usr/lib/python3.8/site-packages/setuptools/__init__.py", line 20, in <module>
from setuptools.dist import Distribution, Feature
File "/usr/lib/python3.8/site-packages/setuptools/dist.py", line 35, in <module>
from setuptools import windows_support
File "/usr/lib/python3.8/site-packages/setuptools/windows_support.py", line 2, in <module>
import ctypes
File "/usr/lib/python3.8/ctypes/__init__.py", line 7, in <module>
from _ctypes import Union, Structure, Array
ModuleNotFoundError: No module named '_ctypes'
command that was run:
python3 setup.py build
during Chroot, GCC builds and installs to /BUILD
and makepkg
creates package without error.
But when installing newly made package, it fails to decompress:
Verifying package gcc-10.2.1_pre2-x86_64-mlfs.txz.
xz: (stdin): Compressed data is corrupt
Unable to install /PKGS/gcc-10.2.1_pre2-x86_64-mlfs.txz: tar archive is corrupt (tar returned error code 2)
When compiling, this error shows:
/usr/bin/ld: ps/display.o: in function `signal_handler':
/sources/procps-ng-3.3.16/ps/display.c:66: undefined reference to `error_at_line
'
/usr/bin/ld: ps/global.o: in function `catastrophic_failure':
/sources/procps-ng-3.3.16/ps/global.c:514: undefined reference to `error_at_line'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:1405: ps/pscommand] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/sources/procps-ng-3.3.16'
make[1]: *** [Makefile:1873: all-recursive] Error 1
make[1]: Leaving directory '/sources/procps-ng-3.3.16'
make: *** [Makefile:1045: all] Error 2
After running autoreconfig -fvi
, configure script errors out:
checking for gcc option to enable C11 features... none needed
./configure: line 6425: syntax error near unexpected token `ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89'
./configure: line 6425: ` ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89'
Python3 compiles but when installing it to a BUILD folder for packaging, it fails on pip
Building MLFS with pkgtools works fine. Packages can be compiled and installed to build up a working system.
Unfortunately, prebuilt packages (from a successful build) won't install smoothly to build a new system. An example is when installing bash. Afterwards, chroot environment breaks, unable to load dynamic libraries for installed binaries.
Package installs, but throws some errors from the doinst.sh
in the compiled package:
(mlfs chroot) root:/sources# installpkg PKGS/libressl-2.9.2-x86_64-musl-mlfs.txz
Verifying package libressl-2.9.2-x86_64-musl-mlfs.txz.
Installing package libressl-2.9.2-x86_64-musl-mlfs.txz:
PACKAGE DESCRIPTION:
Executing install script for libressl-2.9.2-x86_64-musl-mlfs.txz.
/bin/bash: line 471: type: No such file or directory
/bin/bash: line 472: type: No such file or directory
/bin/bash: line 1757: type: No such file or directory
/bin/bash: line 1758: type: No such file or directory
/bin/bash: line 2563: type: No such file or directory
/bin/bash: line 2564: type: No such file or directory
/bin/bash: line 3189: type: No such file or directory
/bin/bash: line 3190: type: No such file or directory
/bin/bash: line 3267: type: No such file or directory
/bin/bash: line 3268: type: No such file or directory
/bin/bash: line 3925: type: No such file or directory
/bin/bash: line 3926: type: No such file or directory
/bin/bash: line 4345: type: No such file or directory
/bin/bash: line 4346: type: No such file or directory
/bin/bash: line 4361: type: No such file or directory
/bin/bash: line 4362: type: No such file or directory
Package libressl-2.9.2-x86_64-musl-mlfs.txz installed.
Checking the doinst.sh
script:
$ grep type install/doinst.sh
( cd usr/share/man/man3 ; rm -rf EVP_MD_pkey_type.3 )
( cd usr/share/man/man3 ; ln -sf EVP_DigestInit.3 EVP_MD_pkey_type.3 )
( cd usr/share/man/man3 ; rm -rf SSL_alert_type_string_long.3 )
( cd usr/share/man/man3 ; ln -sf SSL_alert_type_string.3 SSL_alert_type_string_long.3 )
( cd usr/share/man/man3 ; ln -sf UI_get_string_type.3 UI_get0_test_string.3 )
( cd usr/share/man/man3 ; rm -rf lh_<type>_doall_arg.3 )
( cd usr/share/man/man3 ; ln -sf lh_new.3 lh_<type>_doall_arg.3 )
( cd usr/share/man/man3 ; ln -sf UI_get_string_type.3 UI_get_input_flags.3 )
( cd usr/share/man/man3 ; ln -sf UI_get_string_type.3 UI_set_result.3 )
( cd usr/share/man/man3 ; rm -rf BIO_retry_type.3 )
( cd usr/share/man/man3 ; ln -sf BIO_should_retry.3 BIO_retry_type.3 )
( cd usr/share/man/man3 ; rm -rf BIO_method_type.3 )
( cd usr/share/man/man3 ; ln -sf BIO_find_type.3 BIO_method_type.3 )
( cd usr/share/man/man3 ; rm -rf RSA_padding_check_PKCS1_type_1.3 )
( cd usr/share/man/man3 ; ln -sf RSA_padding_add_PKCS1_type_1.3 RSA_padding_check_PKCS1_type_1.3 )
( cd usr/share/man/man3 ; rm -rf EVP_MD_CTX_type.3 )
( cd usr/share/man/man3 ; ln -sf EVP_DigestInit.3 EVP_MD_CTX_type.3 )
( cd usr/share/man/man3 ; ln -sf UI_get_string_type.3 UI_get0_action_string.3 )
( cd usr/share/man/man3 ; ln -sf BIO_find_type.3 BIO_next.3 )
( cd usr/share/man/man3 ; ln -sf UI_get_string_type.3 UI_get_result_minsize.3 )
( cd usr/share/man/man3 ; rm -rf SSL_get_servername_type.3 )
( cd usr/share/man/man3 ; ln -sf SSL_CTX_set_tlsext_servername_callback.3 SSL_get_servername_type.3 )
( cd usr/share/man/man3 ; rm -rf ASN1_STRING_type_new.3 )
( cd usr/share/man/man3 ; ln -sf ASN1_STRING_new.3 ASN1_STRING_type_new.3 )
( cd usr/share/man/man3 ; rm -rf SSL_set_tlsext_status_type.3 )
( cd usr/share/man/man3 ; ln -sf SSL_CTX_set_tlsext_status_cb.3 SSL_set_tlsext_status_type.3 )
( cd usr/share/man/man3 ; rm -rf lh_<type>_retrieve.3 )
( cd usr/share/man/man3 ; ln -sf lh_new.3 lh_<type>_retrieve.3 )
( cd usr/share/man/man3 ; ln -sf RSA_padding_add_PKCS1_type_1.3 RSA_padding_check_PKCS1_OAEP.3 )
( cd usr/share/man/man3 ; rm -rf EC_METHOD_get_field_type.3 )
( cd usr/share/man/man3 ; ln -sf EC_GFp_simple_method.3 EC_METHOD_get_field_type.3 )
( cd usr/share/man/man3 ; ln -sf RSA_padding_add_PKCS1_type_1.3 RSA_padding_add_PKCS1_OAEP.3 )
( cd usr/share/man/man3 ; rm -rf lh_<type>_delete.3 )
( cd usr/share/man/man3 ; ln -sf lh_new.3 lh_<type>_delete.3 )
( cd usr/share/man/man3 ; ln -sf RSA_padding_add_PKCS1_type_1.3 RSA_padding_add_none.3 )
( cd usr/share/man/man3 ; rm -rf EVP_CIPHER_type.3 )
( cd usr/share/man/man3 ; ln -sf EVP_EncryptInit.3 EVP_CIPHER_type.3 )
( cd usr/share/man/man3 ; ln -sf UI_get_string_type.3 UI_get0_result_string.3 )
( cd usr/share/man/man3 ; ln -sf UI_get_string_type.3 UI_get_result_maxsize.3 )
( cd usr/share/man/man3 ; ln -sf UI_get_string_type.3 UI_get0_output_string.3 )
( cd usr/share/man/man3 ; ln -sf RSA_padding_add_PKCS1_type_1.3 RSA_padding_check_none.3 )
( cd usr/share/man/man3 ; rm -rf lh_<type>_new.3 )
( cd usr/share/man/man3 ; ln -sf lh_new.3 lh_<type>_new.3 )
( cd usr/share/man/man3 ; rm -rf lh_<type>_insert.3 )
( cd usr/share/man/man3 ; ln -sf lh_new.3 lh_<type>_insert.3 )
( cd usr/share/man/man3 ; rm -rf ASN1_STRING_type.3 )
( cd usr/share/man/man3 ; ln -sf ASN1_STRING_length.3 ASN1_STRING_type.3 )
( cd usr/share/man/man3 ; ln -sf SSL_alert_type_string.3 SSL_alert_desc_string_long.3 )
( cd usr/share/man/man3 ; rm -rf RSA_padding_check_PKCS1_type_2.3 )
( cd usr/share/man/man3 ; ln -sf RSA_padding_add_PKCS1_type_1.3 RSA_padding_check_PKCS1_type_2.3 )
( cd usr/share/man/man3 ; ln -sf SSL_alert_type_string.3 SSL_alert_desc_string.3 )
( cd usr/share/man/man3 ; rm -rf EVP_CIPHER_CTX_type.3 )
( cd usr/share/man/man3 ; ln -sf EVP_EncryptInit.3 EVP_CIPHER_CTX_type.3 )
( cd usr/share/man/man3 ; rm -rf lh_<type>_doall.3 )
( cd usr/share/man/man3 ; ln -sf lh_new.3 lh_<type>_doall.3 )
( cd usr/share/man/man3 ; rm -rf EVP_PKEY_type.3 )
( cd usr/share/man/man3 ; ln -sf EVP_PKEY_set1_RSA.3 EVP_PKEY_type.3 )
( cd usr/share/man/man3 ; rm -rf EC_GROUP_get_basis_type.3 )
( cd usr/share/man/man3 ; ln -sf EC_GROUP_copy.3 EC_GROUP_get_basis_type.3 )
( cd usr/share/man/man3 ; rm -rf lh_<type>_error.3 )
( cd usr/share/man/man3 ; ln -sf lh_new.3 lh_<type>_error.3 )
( cd usr/share/man/man3 ; rm -rf lh_<type>_free.3 )
( cd usr/share/man/man3 ; ln -sf lh_new.3 lh_<type>_free.3 )
( cd usr/share/man/man3 ; rm -rf EVP_MD_type.3 )
( cd usr/share/man/man3 ; ln -sf EVP_DigestInit.3 EVP_MD_type.3 )
( cd usr/share/man/man3 ; rm -rf X509_OBJECT_get_type.3 )
( cd usr/share/man/man3 ; ln -sf X509_OBJECT_get0_X509.3 X509_OBJECT_get_type.3 )
( cd usr/share/man/man3 ; rm -rf RSA_padding_add_PKCS1_type_2.3 )
( cd usr/share/man/man3 ; ln -sf RSA_padding_add_PKCS1_type_1.3 RSA_padding_add_PKCS1_type_2.3 )
Luckily, this may or may not affect the installed man pages of the package.
Under choot & building the rest of the toolchain, setuptools python module fails to compile:
Processing /sources/setuptools-69.2.0
Preparing metadata (pyproject.toml) ... error
error: subprocess-exited-with-error
× Preparing metadata (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [82 lines of output]
running dist_info
creating /tmp/pip-modern-metadata-svcxq0ao/setuptools.egg-info
writing /tmp/pip-modern-metadata-svcxq0ao/setuptools.egg-info/PKG-INFO
writing dependency_links to /tmp/pip-modern-metadata-svcxq0ao/setuptools.egg-info/dependency_links.txt
writing entry points to /tmp/pip-modern-metadata-svcxq0ao/setuptools.egg-info/entry_points.txt
writing requirements to /tmp/pip-modern-metadata-svcxq0ao/setuptools.egg-info/requires.txt
writing top-level names to /tmp/pip-modern-metadata-svcxq0ao/setuptools.egg-info/top_level.txt
writing manifest file '/tmp/pip-modern-metadata-svcxq0ao/setuptools.egg-info/SOURCES.txt'
reading manifest file '/tmp/pip-modern-metadata-svcxq0ao/setuptools.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching '*.py' under directory 'tests'
warning: no files found matching '*.txt' under directory 'docs'
warning: no files found matching '*.conf' under directory 'docs'
warning: no files found matching '*.css' under directory 'docs'
warning: no files found matching '*.css_t' under directory 'docs'
warning: no files found matching 'Makefile' under directory 'docs'
warning: no files found matching 'indexsidebar.html' under directory 'docs'
warning: no files found matching 'msvc-build-launcher.cmd'
warning: no previously-included files matching '*.py[cod]' found anywhere in distribution
warning: no previously-included files matching '__pycache__' found anywhere in distribution
adding license file 'LICENSE'
writing manifest file '/tmp/pip-modern-metadata-svcxq0ao/setuptools.egg-info/SOURCES.txt'
creating '/tmp/pip-modern-metadata-svcxq0ao/setuptools-69.2.0.dist-info'
Traceback (most recent call last):
File "/llvmtools/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
main()
File "/llvmtools/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/llvmtools/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 149, in prepare_metadata_for_build_wheel
return hook(metadata_directory, config_settings)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/sources/setuptools-69.2.0/setuptools/build_meta.py", line 366, in prepare_metadata_for_build_wheel
self.run_setup()
File "/sources/setuptools-69.2.0/setuptools/build_meta.py", line 311, in run_setup
exec(code, locals())
File "<string>", line 93, in <module>
File "/sources/setuptools-69.2.0/setuptools/__init__.py", line 104, in setup
return distutils.core.setup(**attrs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/sources/setuptools-69.2.0/setuptools/_distutils/core.py", line 185, in setup
return run_commands(dist)
^^^^^^^^^^^^^^^^^^
File "/sources/setuptools-69.2.0/setuptools/_distutils/core.py", line 201, in run_commands
dist.run_commands()
File "/sources/setuptools-69.2.0/setuptools/_distutils/dist.py", line 969, in run_commands
self.run_command(cmd)
File "/sources/setuptools-69.2.0/setuptools/dist.py", line 967, in run_command
super().run_command(command)
File "/sources/setuptools-69.2.0/setuptools/_distutils/dist.py", line 988, in run_command
cmd_obj.run()
File "/sources/setuptools-69.2.0/setuptools/command/dist_info.py", line 97, in run
bdist_wheel = self.get_finalized_command('bdist_wheel')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/sources/setuptools-69.2.0/setuptools/_distutils/cmd.py", line 304, in get_finalized_command
cmd_obj = self.distribution.get_command_obj(command, create)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/sources/setuptools-69.2.0/setuptools/_distutils/dist.py", line 860, in get_command_obj
klass = self.get_command_class(command)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/sources/setuptools-69.2.0/setuptools/dist.py", line 714, in get_command_class
self.cmdclass[command] = cmdclass = ep.load()
^^^^^^^^^
File "/llvmtools/lib/python3.12/importlib/metadata/__init__.py", line 205, in load
module = import_module(match.group('module'))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/llvmtools/lib/python3.12/importlib/__init__.py", line 90, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 995, in exec_module
File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
File "/llvmtools/lib/python3.12/site-packages/wheel/bdist_wheel.py", line 27, in <module>
from .macosx_libfile import calculate_macosx_platform_tag
File "/llvmtools/lib/python3.12/site-packages/wheel/macosx_libfile.py", line 43, in <module>
import ctypes
File "/llvmtools/lib/python3.12/ctypes/__init__.py", line 8, in <module>
from _ctypes import Union, Structure, Array
ModuleNotFoundError: No module named '_ctypes'
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
× Encountered error while generating package metadata.
╰─> See above for output.
Even after building the Wheel module prior.
Without bash, makepkg cannot make symbolic link creation script for packages.
Perl fails to compile :
Processing UnicodeData.txt
/sources/perl-5.30.0/ext/B/../../miniperl "-I../../lib" -MExtUtils::Command::MM -e 'cp_nonempty' -- B.bs ../../lib/au
to/B/B.bs 644
rm -f ../../lib/auto/B/B.so
cc -shared -O2 -L/usr/local/lib -fstack-protector-strong B.o -o ../../lib/auto/B/B.so \
\
chmod 755 ../../lib/auto/B/B.so
make[1]: Leaving directory '/sources/perl-5.30.0/ext/B'
LD_LIBRARY_PATH=/sources/perl-5.30.0 ./miniperl -Ilib make_ext.pl lib/auto/Compress/Raw/Bzip2/Bzip2.so MAKE="make" L
IBPERL_A=libperl.so LINKTYPE=dynamic
Warning: -Lbzip2-src changed to -L/sources/perl-5.30.0/cpan/Compress-Raw-Bzip2/bzip2-src
Generating a Unix-style Makefile
Writing Makefile for Compress::Raw::Bzip2
make[1]: Entering directory '/sources/perl-5.30.0/cpan/Compress-Raw-Bzip2'
Running Mkbootstrap for Bzip2 ()
chmod 644 "Bzip2.bs"
"../../miniperl" "-I../../lib" "../../lib/ExtUtils/xsubpp" -typemap '/sources/perl-5.30.0/cpan/Compress-Raw-Bzip2/..
/../lib/ExtUtils/typemap' -typemap '/sources/perl-5.30.0/cpan/Compress-Raw-Bzip2/typemap' Bzip2.xs > Bzip2.xsc
mv Bzip2.xsc Bzip2.c
cc -c -I. -D_REENTRANT -D_GNU_SOURCE -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/u$
r/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -Wall -Werror=declaration-after-state$
ent -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings -O2 -DVERSION=\"2.084\" -DXS_VERSION=\"2.084\" -fPI$
"-I../.." -DBZ_NO_STDIO Bzip2.c
/sources/perl-5.30.0/cpan/Compress-Raw-Bzip2/../../miniperl "-I../../lib" -MExtUtils::Command::MM -e 'cp_nonempty' -$
Bzip2.bs ../../lib/auto/Compress/Raw/Bzip2/Bzip2.bs 644
rm -f ../../lib/auto/Compress/Raw/Bzip2/Bzip2.so
cc -shared -O2 -L/usr/local/lib -fstack-protector-strong Bzip2.o -o ../../lib/auto/Compress/Raw/Bzip2/Bzip2.so \
-L/sources/perl-5.30.0/cpan/Compress-Raw-Bzip2/bzip2-src -lbz2 \
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-musl/9.2.0/../../../../lib/libbz2.a(bzlib.o): relocation R_X86_64_PC32 agains$
symbol `BZ2_crc32Table' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: bad value
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:486: ../../lib/auto/Compress/Raw/Bzip2/Bzip2.so] Error 1
make[1]: Leaving directory '/sources/perl-5.30.0/cpan/Compress-Raw-Bzip2'
make[1]: Entering directory '/sources/perl-5.30.0/cpan/Compress-Raw-Bzip2'
/sources/perl-5.30.0/cpan/Compress-Raw-Bzip2/../../miniperl "-I../../lib" -MExtUtils::Command::MM -e 'cp_nonempty' -$
Bzip2.bs ../../lib/auto/Compress/Raw/Bzip2/Bzip2.bs 644
rm -f ../../lib/auto/Compress/Raw/Bzip2/Bzip2.so
cc -shared -O2 -L/usr/local/lib -fstack-protector-strong Bzip2.o -o ../../lib/auto/Compress/Raw/Bzip2/Bzip2.so \
-L/sources/perl-5.30.0/cpan/Compress-Raw-Bzip2/bzip2-src -lbz2 \
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-musl/9.2.0/../../../../lib/libbz2.a(bzlib.o): relocation R_X86_64_PC32 agains$
symbol `BZ2_crc32Table' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: bad value
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:486: ../../lib/auto/Compress/Raw/Bzip2/Bzip2.so] Error 1
make[1]: Leaving directory '/sources/perl-5.30.0/cpan/Compress-Raw-Bzip2'
Unsuccessful make(cpan/Compress-Raw-Bzip2): code=512 at make_ext.pl line 570.
make: *** [makefile:574: lib/auto/Compress/Raw/Bzip2/Bzip2.so] Error 25
make: *** Waiting for unfinished jobs....
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.