Giter Site home page Giter Site logo

dslm4515 / mlfs-pkgtool Goto Github PK

View Code? Open in Web Editor NEW
6.0 2.0 3.0 3.73 MB

Slackware's pkgtool for Musl-LFS

Shell 17.92% C 53.56% Roff 1.76% Makefile 6.22% M4 4.06% Perl 0.17% TeX 12.38% sed 0.35% Yacc 1.64% Emacs Lisp 1.93% Vim Script 0.02%
musl-libc musl

mlfs-pkgtool's People

Contributors

dslm4515 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

mlfs-pkgtool's Issues

Meson will not configure

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

Unable to install package, Compressed data is corrupt

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)

Procps-ng 3.3.16 Fails to Compile

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

Coreutils 8.32 fails to configure

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'

Unable to install built packages to create new systems

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.

libressl: doinst.sh has <type>

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.

spkg-duo: Failed to compile setuptools-69.2.0

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.

Perl will not build during Chroot Stage

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....

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.