[removing “developer" and "oi-dev” lists]
Hi Reg,
Regarding compiling, my understanding it that these two docs on the omnios.org
are NOT holdovers from the legacy OmniOS wiki (i.e., they’re accessed from the
“site map” located at the top-left of every page on the omnios.org site:
Building illumos-gate on OmniOS:
- https://omnios.org/dev/gate.html <https://omnios.org/dev/gate.html>
Building OmniOS:
- https://omnios.org/dev/build_instructions.html
<https://omnios.org/dev/build_instructions.html>
I haven’t built OmniOS in about a decade (when I patched the kernel to run KVM
on AMD), but I did build Illumos-gate per the instructions above a few days
ago. Notably, the instructions were flawless and the build completed
successfully on first try. Hats off to the devs for that! :)
Regarding time to build on various platforms, below is the nightly-build output
email that was sent to root@localhost when I built Illumos-gate on a machine
with 16 cores (32 threads) and 64 GB of memory. That said, the ZFS filesystem
was on a cheap M.2 disk that I’ve since discovered is rather slow. I now have
a faster ZFS pool, but it’s currently occupied running burn-in tests for me to
do a build now.
Since `format` is in the Illumos base, I recommend you take Dan’s suggestion on
OmniOS and Illumos-gate. I’m unsure if OmniOS can run in an OI zone, but it
could definitely run in a VM if needed. In either case, the compiled binary
can be copied to your OI system (assuming same arch) and patches sent upstream.
Regarding no response, I wanted to but, like many here, I suspect (and doubly
so since you didn’t get a responses before), I use OmniOS (not OI) and I have
no interest in GUIs on my servers, unless you count `tmux` as a GUI, as I’m
completely addicted to it...I even run it fullscreen on my Mac OS desktops ;).
Below is the nighty-build email mentioned above.
K.
==== Nightly distributed build started: Mon Apr 5 10:57:54 EDT 2021 ====
==== Nightly distributed build
completed: Mon Apr 5 11:21:24 EDT 2021 ====
==== Total build time ====
real 0:23:30
==== Build environment ====
/usr/bin/uname
SunOS san2 5.11 omnios-r151036-de483383c0 i86pc i386 i86pc
[106/1860]
/opt/onbld/bin/i386/dmake
dmake: illumos make
number of concurrent jobs = 34
cw version 5.0
primary: /opt/gcc-7/bin/gcc
gcc (OmniOS 151036/7.5.0-il-1) 7.5.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
shadow: /opt/gcc-4.4.4/bin/gcc
gcc (GCC) 4.4.4
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
shadow:
/build/illumos-gate/usr/src/tools/proto/root_i386-nd/opt/onbld/bin/i386/smatch
0.6.1-rc1-il-5
/usr/jdk/openjdk11.0/bin/javac
openjdk full version "11.0.10+9-omnios-151036"
/usr/bin/openssl
OpenSSL 1.1.1j 16 Feb 2021
API_COMPAT=0x10000000L
/usr/bin/as
as: Sun Compiler Common 12 SunOS_i386 snv_121 08/03/2009
/usr/ccs/bin/ld
ld: Software Generation Utilities - Solaris Link Editors: 5.11-1.1763 (illumos)
Build project: user.root
Build taskid: 76
==== Nightly argument issues ====
==== Build version ====
master-0-g867228adfb
==== Make clobber ERRORS ====
==== Make tools clobber ERRORS ====
==== Bootstrap build errors ====
==== Tools build errors ====
==== Build errors (non-DEBUG) ====
==== Build warnings (non-DEBUG) ====
==== Elapsed build time (non-DEBUG) ====
real 10:31.1
user 2:56:55.3
sys 46:43.7
==== Build noise differences (non-DEBUG) ====
==== package build errors (non-DEBUG) ====
==== Build errors (DEBUG) ====
==== Build warnings (DEBUG) ====
==== Elapsed build time (DEBUG) ====
real 5:22.7
user 1:41:54.3
sys 23:41.5
==== Build noise differences (DEBUG) ====
==== package build errors (DEBUG) ====
==== Validating manifests against proto area ====
==== Check versioning and ABI information ====
==== Check ELF runtime attributes ====
==== Diff ELF runtime attributes (since last build) ====
==== cstyle/hdrchk errors ====
==== Find core files ====
==== Check lists of files ====
==== Impact on file permissions ====
==== Linting packages ====
> On Apr 10, 2021, at 1:17 PM, Reginald Beardsley via illumos-discuss
> <[email protected]> wrote:
>
> Thanks for the response. I use OI as my internet access system, so X11 is
> essential.
>
> What is a "well provisioned machine"? How many cores, how much DRAM and disk?
> Ten years ago a VM for building was a non-starter. What does it take for that?
>
> When I got my first Z400, I configured my Ultra 20 to build Illumos/OI. It
> took about a week of work tracking down the correct details, but I eventually
> got it to complete the build. But I couldn't find any information about how
> to boot it. When I asked on the dev lists I got no response at all. That left
> a very bad taste in my mouth.
>
> Since then "we're just a handful of developers" has become a popular refrain
> on oi-discuss. The *only* viable solution is to reduce the barriers to
> contributing so that the sole barrier is quality of work. Hence my suggestion.
>
> I want to be able to run a fully capable build system as my daily driver so
> that if I encounter a bug, I can fix it and send the fix for review and
> incorporation. Aside from the format(1m) issues, the beadm(1m) man page
> output for "beadm list" does not match the actual output. I see stuff like
> this all the time. Rather than file a bug report I'd like to submit a patch
> file and a brief explanation.
>
> I don't know how much of an OI user community is left. Many familiar names
> have not posted in a very long time.
>
> I recently tried FreeBSD which doesn't supply a windowing system. So I went
> to ports and attempted to build X11. It fell over part way through because a
> program, "xmlto" IIRC, was missing and despite autotools checking for it, one
> of the Makefiles was not generated correctly. I can fix it, but I didn't get
> wildly enthusiastic despite having bought the 2nd ed of McKusick et al which
> *is* a good read as always has been the case with his books.
>
> I tried a number of FreeBSD distros which include X11 a few years ago, but
> was quite unimpressed, mostly because of installation issues.
>
> Reg
> On Saturday, April 10, 2021, 10:05:42 AM CDT, Dan McDonald
> <[email protected]> wrote:
>
>
> On Apr 10, 2021, at 10:34 AM, Reginald Beardsley via illumos-developer
> <[email protected] <mailto:[email protected]>> wrote:
>
> >
> > I should like to suggest that providing a turnkey development installation
> > that would permit someone like me to compile format(1m) and fix the SEGV
> > faults would go a long way towards increasing the number of people
> > supporting OI and Illumos.
>
>
> I'm sorry for missing this. $DAYJOB (which for me is distro SmartOS and
> more) can be a bit overwhelming.
>
> Unless you need a native windowing environment, I'd HIGHLY recommend
> installing OmniOS on a well-provisioned machine or VM, and installing the
> "illumos-tools" metapackage, which SHOULD bring in everything you need to
> build illumos-omnios or illumos-gate. I've not used OI in years, but I
> suspect they might have illumos-tools or some moral equivalent in their
> distro as well. And if you want a native windowing environment OI is your
> best bet.
>
> Also, since you wish to concentrate on one particular binary, I have an older
> (and probably needs updating) blog post on how to do that as well.
>
> Lemme comb here... and please remember most of these posts are years old:
>
> Here's a post on the illumos-tools metapackage, which has stale links but
> does contain what should still work as far as building the whole gate in a
> hurry:
>
> https://kebe.com/blog/?p=467 <https://kebe.com/blog/?p=467>
>
> And here's a post on "developing small" from WAY back, which also probably
> needs updating (and honestly "ws" and "bldenv" need to just combine into one
> tool), but will help you concentrate on "format" and not have to build the
> whole gate every time:
>
> https://kebe.com/blog/?p=449 <https://kebe.com/blog/?p=449>
>
> I'd recommend:
>
> 1.) Using OmniOS or OI.
>
> 2.) Clone-and-build all of illumos-gate.
>
> 3.) Once built, use "ws" or "bldenv /opt/onbld/env/...", enter the gate, and
> edit usr/src/cmd/format/... and utter "dmake" in that directory every time
> you change things to get quick results.
>
> Hope this helps,
> Dan
>
>
> ------------------------------------------
> illumos: illumos-discuss
> Permalink:
> https://illumos.topicbox.com/groups/discuss/Tcc71605390cdccef-M0114dfb3f5864fc303831244
>
> <https://illumos.topicbox.com/groups/discuss/Tcc71605390cdccef-M0114dfb3f5864fc303831244>
> Delivery options: https://illumos.topicbox.com/groups/discuss/subscription
> <https://illumos.topicbox.com/groups/discuss/subscription>
>
> illumos <https://illumos.topicbox.com/latest> / illumos-discuss / see
> discussions <https://illumos.topicbox.com/groups/discuss> + participants
> <https://illumos.topicbox.com/groups/discuss/members> + delivery options
> <https://illumos.topicbox.com/groups/discuss/subscription>Permalink
> <https://illumos.topicbox.com/groups/discuss/Tcc71605390cdccef-Ma8e9d4765d56d548dc695964>
------------------------------------------
illumos: illumos-discuss
Permalink:
https://illumos.topicbox.com/groups/discuss/Tcc71605390cdccef-M0c605596e9b94d64d5e8f544
Delivery options: https://illumos.topicbox.com/groups/discuss/subscription