Skip to content

OmniOS r151046 userland is not buildable #3893

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

Open
unixbird-ps-storvix opened this issue Mar 31, 2025 · 4 comments
Open

OmniOS r151046 userland is not buildable #3893

unixbird-ps-storvix opened this issue Mar 31, 2025 · 4 comments
Assignees

Comments

@unixbird-ps-storvix
Copy link

Build for package/pkg fails because Rust cannot be found although Rust is installed and available.

$ which cargo
/opt/ooce/bin/cargo
$ which rustc
/opt/ooce/bin/rustc

Excerpt from build log of package/pkg:

        × Building wheel for maturin (pyproject.toml) did not run successfully.
        │ exit code: 1
        ╰─> [42 lines of output]
            /tmp/pip-build-env-vvvr491d/overlay/lib/python3.11/site-packages/setuptools/config/_apply_pyprojecttoml.py:82: SetuptoolsDeprecationWarning: `project.license` as a TOML table is deprecated
            !!

                    ********************************************************************************
                    Please use a simple string containing a SPDX expression for `project.license`. You can also use `project.license-files`. (Both options available on setuptools>=77.0.0).

                    By 2026-Feb-18, you need to update your project and remove deprecated calls
                    or your builds will no longer be supported.

                    See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details.
                    ********************************************************************************

            !!
              corresp(dist, value, root_dir)
            running bdist_wheel
            running build
            running build_py
            creating build/lib.solaris-2.11-i86pc.64bit-cpython-311/maturin
            copying maturin/__init__.py -> build/lib.solaris-2.11-i86pc.64bit-cpython-311/maturin
            copying maturin/__main__.py -> build/lib.solaris-2.11-i86pc.64bit-cpython-311/maturin
            running egg_info
            writing maturin.egg-info/PKG-INFO
            writing dependency_links to maturin.egg-info/dependency_links.txt
            writing requirements to maturin.egg-info/requires.txt
            writing top-level names to maturin.egg-info/top_level.txt
            reading manifest file 'maturin.egg-info/SOURCES.txt'
            reading manifest template 'MANIFEST.in'
            warning: no files found matching '*.json' under directory 'src/python_interpreter'
            writing manifest file 'maturin.egg-info/SOURCES.txt'
            running build_ext
            running build_rust
            error: can't find Rust compiler

Build for runtime/python-27 fails because the build script is giving unrecognized option to the Python2 module compileall.

Excerpt from build log of runtime/python-27:

[2] -- Setting INSTALLER for setuptools-46.4.0-py2.7.egg-info
[2] Compiling python modules
Running: /usr/bin/python2.7 -m compileall -j0 -f --invalidation-mode timestamp /build/tmp/python2.7/setuptools-46.4.0/library_python-2_setuptools-27_pkg
option -j not recognized
usage: python compileall.py [-l] [-f] [-q] [-d destdir] [-x regexp] [-i list] [directory|file ...]

arguments: zero or more file and directory names to compile; if no arguments given,
           defaults to the equivalent of -l sys.path

options:
-l: don't recurse into subdirectories
-f: force rebuild even if timestamps are up-to-date
-q: output only error messages
-d destdir: directory to prepend to file paths for use in compile-time tracebacks and in
            runtime tracebacks in cases where the source file is unavailable
-x regexp: skip files matching the regular expression regexp; the regexp is searched for
           in the full path of each file considered for compilation
-i file: add all the files and directories listed in file to the list considered for
         compilation; if "-", names are read from stdin
[2] i386 build failed
[2] Time: library/python-2/setuptools-27 - 0h0m3s
@unixbird-ps-storvix
Copy link
Author

unixbird-ps-storvix commented Mar 31, 2025

More packages that cannot be built.

*** BUILD ERROR ***         system/kvm
*** BUILD ERROR ***         system/zones/brand/bhyve

cat /build/omnios-build/build/illumos-kvm/build.log
[1] ===== Build started at Mon Mar 31 14:45:32 CEST 2025 =====
[1] -- Setting GCC version to 10
[1] -- Set stack protection to 'strong'
[1] /build/illumos-omnios already built (no nightly.lock present...)
[1] Prebuilt illumos not present, aborting.
[1] Time: kvm - 0h0m0s

What determines that illumos-omnios was or wasn't built?

The packages directory in illumos-omnios has been created.
du -h /build/illumos-omnios/packages
368M /build/illumos-omnios/packages

@citrus-it citrus-it self-assigned this Mar 31, 2025
@citrus-it
Copy link
Member

I've opened #3895 which fixes the python 2.7 build error, and with that patch in place I've just built all of r46 successfully with omni build_world -e

For the illumos packages it looks like the illumos build didn't fully complete for some reason - possibly it was killed by the framework when something else failed. You can do the builds in separate phases with

omni build_illumos
omni build_omnios -e

if you prefer.

I cannot replicate the pkg issue you reported yet but I'm still looking into that.

@unixbird-ps-storvix
Copy link
Author

unixbird-ps-storvix commented Apr 4, 2025

Initiating repository rebuild.

***
*** Checking baseline
***
--- /build/omnios-build/doc/baseline    Thu Apr  3 15:22:42 2025
+++ /build/tmp/baseline.4749    Fri Apr  4 12:05:59 2025
@@ -660,1 +660,0 @@
-omnios system/install/kayak-kernel
@@ -806,1 +805,0 @@
-omnios system/zones/brand/illumos
Package list does not match baseline

system/install/kayak-kernel is not built because the following line was added by omni.
SKIP_KAYAK_KERNEL=1

So I've disabled the above line.
Then got a lot of errors like the folowing:

Planning: Running solver ...
pkg install: No matching version of driver/storage/pmcs can be installed:
  Reject:  pkg://omnios/driver/storage/pmcs@0.5.11-151046.0
  Reason:  No version matching 'require' dependency consolidation/osnet/osnet-incorporation can be installed
No matching version of driver/network/rdsv3 can be installed:
  Reject:  pkg://omnios/driver/network/rdsv3@0.5.11-151046.0
  Reason:  No version matching 'require' dependency driver/network/ib@0.5.11-151046.0 can be installed
    ----------------------------------------
    Reject:  pkg://omnios/driver/network/ib@0.5.11-151046.0
    Reason:  No version matching 'require' dependency consolidation/osnet/osnet-incorporation can be installed
    Reason:  No version matching 'require' dependency system/kernel@0.5.11-151046.0 can be installed
      ----------------------------------------
      Reject:  pkg://omnios/system/kernel@0.5.11-151046.0
      Reason:  No version matching 'require' dependency system/library@0.5.11-151046.0 can be installed
        ----------------------------------------
        Reject:  pkg://omnios/system/library@0.5.11-151046.0
        Reason:  No version matching 'require' dependency consolidation/osnet/osnet-incorporation can be installed

illumos-omnios was built previous to the above errors.

The only errors found in nightly.log were:

ctfconvert: CTF conversion failed due to missing debug data; use -m to override
*** Error code 1 (ignored)

3 times.

@unixbird-ps-storvix
Copy link
Author

I was able to build
package/pkg
system/kvm
system/zones/brand/bhyve

But kayak cannot be built.

I get errors similar to the following.

pkg install: No matching version of driver/network/e1000g can be installed:
  Reject:  pkg://omnios/driver/network/e1000g@0.5.11-151046.0
  Reason:  No version matching 'require' dependency consolidation/osnet/osnet-incorporation can be installed
  Reason:  No version matching 'require' dependency system/kernel@0.5.11-151046.0 can be installed
    ----------------------------------------
    Reject:  pkg://omnios/system/kernel@0.5.11-151046.0
    Reason:  No version matching 'require' dependency system/library@0.5.11-151046.0 can be installed
      ----------------------------------------
      Reject:  pkg://omnios/system/library@0.5.11-151046.0
      Reason:  No version matching 'require' dependency consolidation/osnet/osnet-incorporation can be installed

A lot of packages fail to install during miniroot build because of missing
consolidation/osnet/osnet-incorporation

But...

pkg list -afvg /build/repo | fgrep consolidation/osnet/osnet-incorporation
pkg://omnios/consolidation/osnet/osnet-incorporation@0.5.11-151046.0:20250401T174237Z ---

du -s -h /build/illumos-omnios/packages
676M    /build/illumos-omnios/packages

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

2 participants