[OpenIndiana-discuss] [discuss] [developer] Illumos/OI development system installation

Reginald Beardsley pulaskite at yahoo.com
Sun Apr 11 00:18:35 UTC 2021


 Kent,

Thank you for a very informative reply.

My interest is a desktop. Were there seismic work I'd be interested in a server. Actually, a lot of them. But that world is dominated now by Linux and with almost no revenue in the seismic industry, that won't change. Because most scientists can't write portable code, moving a single executable to another platform is a 6 figure undertaking. In the 90's Landmark claimed they were porting SeisWorks, a $100k/seat product, to NT. I laughed. It never happened, but they did manage to move it from SunOS to Linux and that killed a several billion dollar segment of Sun's customer base. Once SeisWorks ran on Linux and x86 hardware, the industry bought IBM systems for 10% of the cost of an Ultra 60. Eventually Sun brought out the Ultra 20 and Ultra 40, but by then it was too late. It was no longer locked to SunOS on SPARC.

My desire is for a simple method for fixing stray errors I encounter as I use OI. I've got lots of old disk drives, so I can set up a OmniOS system, swap disks and boot it when I run into an issue with the non-GUI programs and ssh into the system to work on it. And quite frankly, I don't like working on GUI programs anyway. So I have no inclination to fix those.

Thank you for suggesting a satisfactory alternative.

Have Fun!
Reg

     On Saturday, April 10, 2021, 05:35:11 PM CDT, Kent Watsen <kent at watsen.net> wrote:  
 
 [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
Building OmniOS: - 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 at 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 <discuss at lists.illumos.org> 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 <danmcd at joyent.com> wrote: 

On Apr 10, 2021, at 10:34 AM, Reginald Beardsley via illumos-developer <developer at lists.illumos.org> 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

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

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
Delivery options: https://illumos.topicbox.com/groups/discuss/subscription


illumos / illumos-discuss / seediscussions +participants +delivery optionsPermalink  


More information about the openindiana-discuss mailing list