VOGONS


Reply 340 of 378, by superfury

User metadata
Rank l33t
Rank
l33t

So that 40E stuff is actually get_acpi_rsdp executing.

Interesting: 0xf041fae5 doesn't seem to return (in the log) according to Cutter!
That's platform_tbl_ptr that's running at f041cea0?
At f041cee2 it jumps back...
It's calling phys_copy() followed by cmp_f in a loop! It crashes somewhere in there (it looks like in cmp_f, since it doesn't return)?
That's at f041ced6(call cmp_f?)!
Said parameter is set to point to acpi_rsdp_test in the source code for R3.3.0. So it's calling that function(f0420120=acpi_rsdp_test)!
It calls platform_tbl_checksum_ok(f041ce70) and returns correctly.
It then returns from said function... To f041ced9 (result=0). It returns to function f041cea0!

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows and PSP on itch.io

Reply 341 of 378, by mr.cat

User metadata
Rank Member
Rank
Member

You didn't happen to notice any mechanism to turn ACPI off in Minix3? EDIT: There's a compile-time switch USE_ACPI, but nothing run-time. So it seems a custom kernel would be needed to disable ACPI.
If it is indeed ACPI to blame, maybe those Linux ACPI switches could help to get Linux to boot. In modern Linux ISOs the boot parameters can be set similarly as in Minix, somewhere in the startup menu (F6 key maybe?).

Something else I noticed:
The kernel uses the function DEBUGEXTRA() to print some messages, but it seems they only go to serial (they remain invisible on the VGA console).
Here's a clip of what is printed to serial during and after mod11_init loading (this from qemu, verbose=2):

---- >8 ----
initializing init... done
system_init()... done

MINIX 3.3.0. (588a35b)
Copyright 2014, Vrije Universiteit, Amsterdam, The Netherlands
MINIX is open source software, see http://www.minix3.org
Initiating legacy i8253 timer
CPU 0 freq 3192 MHz
cycles_accounting_init()... done
---- >8 ----

The code can be found in kmain():
https://github.com/Stichting-MINIX-Research-F … nel/main.c#L120

Reply 342 of 378, by superfury

User metadata
Rank l33t
Rank
l33t

Well, disabling the ACPI in the source code still wouldn't fix the underlying issue causing the crash, would it?
It's probably thinking ACPI exists, even though it doesn't (seeing those functions called)? SMP and MPS 1.4 (1.0 can be used through the BIOS settings for the i440fx as well) are supported and enabled. Isn't ACPI an extension of MPS? Shouldn't it be backwards compatible with MPS?
So perhaps an issue with parsing the MPS tables?

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows and PSP on itch.io

Reply 343 of 378, by mr.cat

User metadata
Rank Member
Rank
Member

Probably not, but it would be nice to have an easy way to test that.
I think the Linux ACPI related problems usually have something to do with having corrupt ACPI tables in motherboard BIOS, so it doesn't really apply here...
(I must say I don't know much about this subject either!)

Reply 344 of 378, by superfury

User metadata
Rank l33t
Rank
l33t

So, so far I've got this:
f041ac50 = arch_init (https://github.com/Stichting-MINIX-Research-F … h_system.c#L251 )
f041f950 = sys_outb (https://github.com/Stichting-MINIX-Research-F … 86/io_outb.S#L7 )
f041fa60 = acpi_init (https://github.com/Stichting-MINIX-Research-F … 386/acpi.c#L311 )
f0432560 = acpi_phys_copy(https://github.com/Stichting-MINIX-Research-F … i386/acpi.c#L69 )
f041cea0 = platform_tbl_ptr(https://github.com/Stichting-MINIX-Research-F … /memory.c#L1052 )
f041b140 = phys_copy (https://github.com/Stichting-MINIX-Research-F … 386/klib.S#L174 )
f0420120 = acpi_rsdp_test (called by platform_tbl_ptr like phys_copy. https://github.com/Stichting-MINIX-Research-F … 386/acpi.c#L193 )
f041ce70 = platform_tbl_checksum_ok (https://github.com/Stichting-MINIX-Research-F … /memory.c#L1043 )
f0432450 = strncmp (location in the source code unknown)
f041c100 = virtual_copy_f

This should at least tell a bit more about what's happening?
Edit: Also, just looked at the code handling input/output to the serial port in this case... It's hardwired for COM1!!!
https://github.com/Stichting-MINIX-Research-F … h/i386/serial.h
https://github.com/Stichting-MINIX-Research-F … h_system.c#L655

So, so far, the log is simply incomplete!
It's still scanning through the tables in the BIOS ROM area(E0000-FFFFF)!
Edit: Hmmm... Opening up the VM module in Cutter reveals something interesting(combined with searching for the error address of the page fault error): 8048c7c is supposed to be a TEST EAX,EAX instruction, while UniPCemu page faults on an ADD instruction(0x0000 bytes there)?
The previous instruction to that is at 08048c77 call 0x8055f40.
Edit: Interesting... I just debugged the location of the previous instruction as well as the instruction after it's returned from the subroutine.
The first function seems to be valid. But when it returns, it reads 0x0000 from memory(this instruction is addressing an invalid address, as well as being plain invalid itself!). It's supposed to have read a TEST EAX,EAX instruction, which the 0x0000 word definitely doesn't imply!
Edit: During the first of those instructions, the PTE in the paging TLB points to physical address 3ffff000.
Edit: The plot thickens.... During the executing of said code, none of said code seems to directly clear the memory block to zeroes!
It's the last 4KB block of the 1GB RAM memory. So something's going weird there?
Edit: That's definitely the case: when it's reached the instruction at 8048C70, said memory still contains valid data(the call instruction mentioned, followed by opcodes 85C0, which is a TEST EAX,EAX instruction). When the called function(08055f40) returns, the memory is cleared.
Edit: Some REP MOVSD instruction is overwriting it with a zeroed block! That's at 0008:f041b164!
Edit: That's some function at 0008:f041b140! That's phys_copy!
It's called from 0008:f041c453.
That function is called from f041c310.
That function is called from f041c1eb. Which is function f041c100. That's somewhere within memory.c, apparently(according to the function's variables)?
Edit: It looks like virtual_copy_f?
Edit: Confirmed to be just that by the text string addressed further down!
Edit: virtual_copy_f is called at 0008:f042cb18...
Edit: That call seems to be at https://github.com/Stichting-MINIX-Research-F … m/do_copy.c#L84 !
Edit: do_copy is called from f0429dcd, whose function starts at f0429d80.
It's called from f0429d59. That's function f0429ce0.
That function is called at f0419d80.
Eventually I end up at f1001337, which executes an SYSENTER instruction(which, in UniPCemu's emulation) is still an untested opcode(as it's not appeared in tested code before!
Edit: Said SYSCALL block of code is called at 08057aa0, which is probably in the VM module afaik(where else?).
That's called at 08055fa6.
That's starting at function 08055f40.
That's called at 08048c77.
At that point we've reached the instruction before the invalid page fault, where the memory block containing the next instruction to execute(TEST EAX,EAX) is cleared(to zeroes). Thus causing the page fault.

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows and PSP on itch.io

Reply 345 of 378, by superfury

User metadata
Rank l33t
Rank
l33t

I've attached the log containing the invalid code that's clearing said RAM here:

Filename
debugger_UniPCemu_20201220_1846_minixcrashing_crashingcause.7z
File size
61.45 KiB
Downloads
7 downloads
File comment
Crashing code running on UniPCemu, logged in full logging mode.
File license
Fair use/fair dealing exception

Anyone can see if there's something going wrong?

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows and PSP on itch.io

Reply 346 of 378, by mr.cat

User metadata
Rank Member
Rank
Member

Great detective work!

EDIT2:
In the previous post you were actually asking about where that function was called, and not the function itself. So the below story misses that point a bit.
The function usermapped_send_sysenter() is indeed called from MOD09_VM, as you said .

Looks like that SYSENTER instruction is in KERNEL:

$ LANG=C grep -obaP "\xbf\x22\x00\x00\x00\x8b\x45\x08\x0f\x34" KERNEL |cat -v
29487:M-?"^@^@^@M-^KE^H^O4
$ printf "%x\n" 29487
732f
$ cat KERNEL |xxd -g1 |grep -C1 ^00007320
00007310: 55 89 e5 53 8b 45 08 cd 22 89 d9 5b 5d c3 90 90 U..S.E.."..[]...
00007320: 55 89 e5 55 52 53 56 57 89 e6 ba 39 43 41 f0 bf U..URSVW...9CA..
00007330: 22 00 00 00 8b 45 08 0f 34 57 9d 89 d9 5f 5e 5b "....E..4W..._^[

I lifted the 'bf 22 00 00 00 8b 45 08 0f 34' hex string from the debugger log (in the previous post).
You can find it in Cutter Search too ("All maps"): It's in fcn.f0414320.
But Cutter doesn't show any X-refs for me, so it's a bit hard to identify what this function actually is. Maybe Cutter just can't find them, it doesn't always get everything right.

To clarify a bit, here's how it shows on the debugger log:
001b:f100132f BF 22 00 00 00 mov edi,00000022
001b:f1001334 8B 45 08 __ __ mov eax,dword ss:[ebp+08]
001b:f1001337 0F 34 __ __ __ sysenter

EDIT: Found the function. I was playing around with Minix cross-compiling a bit and the build script just finished.
The script left all these *.o crumbs in its directories, so why not take a look at them. And there it is:

$ pwd
/home/z/tmp/minix/obj.i386/minix/kernel
$ LANG=C grep -obaP "\xbf\x22\x00\x00\x00\x8b\x45\x08\x0f\x34" *.o
usermapped_glo_ipc.o:879:�"�4

The object is attached below if you want to take a look. The file is not stripped, so all the function names show up in Cutter nicely. The function in question (that corresponds to debugger log) is named usermapped_send_sysenter().
(There were a number of other similarly named functions that have that sysenter instruction too).

Btw, on my old C2Q Ubuntu host, a cross-compiled build of Minix3 took about 4 hours & 5.1GB disk space.

Attachments

  • Filename
    usermapped_glo_ipc_o.7z
    File size
    726 Bytes
    Downloads
    6 downloads
    File comment
    usermapped_glo_ipc.o
    File license
    Fair use/fair dealing exception

Reply 347 of 378, by superfury

User metadata
Rank l33t
Rank
l33t

Just installed the latest Ubuntu desktop, installed the tools required according to https://wiki.minix3.org/doku.php?id=developer … :crosscompiling , then ran
"sh build.sh -mi386 -O ../build tools" (without quotes).

I get all kinds of weird errors:

: not found4:
:not found3:
: not found 7:
build.sh: 51: Syntax error: word unexpected (edxpecting "in")

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows and PSP on itch.io

Reply 348 of 378, by mr.cat

User metadata
Rank Member
Rank
Member
superfury wrote on 2020-12-23, 10:40:
Just installed the latest Ubuntu desktop, installed the tools required according to https://wiki.minix3.org/doku.php?id=develope […]
Show full quote

Just installed the latest Ubuntu desktop, installed the tools required according to https://wiki.minix3.org/doku.php?id=developer … :crosscompiling , then ran
"sh build.sh -mi386 -O ../build tools" (without quotes).

I get all kinds of weird errors:

: not found4:
:not found3:
: not found 7:
build.sh: 51: Syntax error: word unexpected (edxpecting "in")

I don't know what that error is about, I followed that same guide but took a different path (on Ubuntu 18.04LTS):
(in src directory):
bash ./releasetools/x86_hdimage.sh

There's also x86_cdimage.sh, that creates an iso so it's maybe nicer. But you can run that afterwards too, it will only take a few minutes if the build objects are all there already.

A custom build seems like a good idea, the resulting iso is a bit different than what they offer for download.
The binaries (including the kernel and mod* files) are not stripped, so it will make things a lot easier with Cutter.
Then there is that COM1 thing you noticed (a great find btw!), that can be altered.

NB: The crossbuilding recipe uses git.minix3.org, which means by default you will get the most recent version (3.4.0).

Last edited by mr.cat on 2020-12-23, 11:48. Edited 2 times in total.

Reply 349 of 378, by superfury

User metadata
Rank l33t
Rank
l33t
mr.cat wrote on 2020-12-23, 10:44:
I don't know what that error is about, I followed that same guide but took a different path (on Ubuntu 18.04LTS): (in src direct […]
Show full quote
superfury wrote on 2020-12-23, 10:40:
Just installed the latest Ubuntu desktop, installed the tools required according to https://wiki.minix3.org/doku.php?id=develope […]
Show full quote

Just installed the latest Ubuntu desktop, installed the tools required according to https://wiki.minix3.org/doku.php?id=developer … :crosscompiling , then ran
"sh build.sh -mi386 -O ../build tools" (without quotes).

I get all kinds of weird errors:

: not found4:
:not found3:
: not found 7:
build.sh: 51: Syntax error: word unexpected (edxpecting "in")

I don't know what that error is about, I followed that same guide but took a different path (on Ubuntu 18.04LTS):
(in src directory):
bash ./releasetools/x86_hdimage.sh

There's also a script that creates an iso, that's maybe nicer. But you can run that afterwards too, it will only take a few minutes if the build objects are all there already.

Custom build seems like a good idea, the resulting iso is a bit different than what they offer for download.
The binaries are not stripped, so it will make things a lot easier with Cutter. This includes kernel and the mod* files.
Then there is that COM1 thing you noticed (great find btw!), that can be altered.

Well, it should indeed be easy to change to COM2(simply change 3F8 to 2F8) in serial.h.

Although I have Cutter installed on the Windows 10 host instead of Ubuntu itself.
Also, it looks like the issue was somewhere with Smartgit on Windows cloning the repo and checking out R3.3.0. Somehow, the files might have been corrupted when copying them over to the guest VM(Ubuntu in Virtualbox)?

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows and PSP on itch.io

Reply 350 of 378, by mr.cat

User metadata
Rank Member
Rank
Member
superfury wrote on 2020-12-23, 10:54:

Also, it looks like the issue was somewhere with Smartgit on Windows cloning the repo and checking out R3.3.0. Somehow, the files might have been corrupted when copying them over to the guest VM(Ubuntu in Virtualbox)?

Yeah that's a very strong possibility. The usual Win<=>Linux problems are the differences in line separators and permissions, but there could be other weirdness.

Reply 351 of 378, by superfury

User metadata
Rank l33t
Rank
l33t

Hmmm... It seems to fail executing install of dependall-llvm-include?

> /dev/null" returned non-zero status
# install /home/superfury/minix/src/../obj.i386/tooldir.Linux-5.4.0-58-generic-x86_64/bin/nbllvm-tblgen
mkdir -p /home/superfury/minix/src/../obj.i386/tooldir.Linux-5.4.0-58-generic-x86_64/bin
/home/superfury/minix/src/../obj.i386/tooldir.Linux-5.4.0-58-generic-x86_64/bin/i586-elf32-minix-install -c -p -r -m 755 nbllvm-tblgen /home/superfury/minix/src/../obj.i386/tooldir.Linux-5.4.0-58-generic-x86_64/bin/nbllvm-tblgen
dependall-llvm-include ===> tools
dependall ===> tools/llvm-include
nbmake[5]: nbmake[5]: don't know how to make /home/superfury/minix/src/tools/llvm-include/../llvm/../../external/bsd/llvm/dist/clang/include/clang/Basic/AttrDocs.td. Stop
nbmake[5]: stopped in /home/superfury/minix/src/tools/llvm-include

*** Failed target: dependall-llvm-include
*** Failed command: _makedirtarget() { dir="$1"; shift; target="$1"; shift; case "${dir}" in /*) this="${dir}/"; real="${dir}" ;; .) this="tools/"; real="/home/superfury/minix/src/tools" ;; *) this="tools/${dir}/"; real="/home/superfury/minix/src/tools/${dir}" ;; esac; show=${this:-.}; echo "${target} ===> ${show%/}${1:+ (with: $@)}"; cd "${real}" && /home/superfury/minix/src/../obj.i386/tooldir.Linux-5.4.0-58-generic-x86_64/bin/nbmake _THISDIR_="${this}" "$@" ${target}; }; _makedirtarget llvm-include dependall
*** Error code 2

Stop.
nbmake[4]: stopped in /home/superfury/minix/src/tools
*** [build_install] Error code 1

nbmake[3]: stopped in /home/superfury/minix/src/tools
1 error

nbmake[3]: stopped in /home/superfury/minix/src/tools
*** [do-tools] Error code 2

nbmake[2]: stopped in /home/superfury/minix/src
1 error

nbmake[2]: stopped in /home/superfury/minix/src
*** [build] Error code 2

nbmake[1]: stopped in /home/superfury/minix/src
1 error

nbmake[1]: stopped in /home/superfury/minix/src
*** [distribution] Error code 2

nbmake: stopped in /home/superfury/minix/src
1 error

nbmake: stopped in /home/superfury/minix/src

ERROR: Failed to make distribution
*** BUILD ABORTED ***

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows and PSP on itch.io

Reply 352 of 378, by mr.cat

User metadata
Rank Member
Rank
Member
superfury wrote on 2020-12-23, 11:22:

Hmmm... It seems to fail executing install of dependall-llvm-include?

Maybe there is some package missing that they don't list in that guide. I can take a look if you pm me the output of "dpkg -l".
Also, Ubuntu 20 is new so it's possible that new compiler versions have some breakage.

Reply 353 of 378, by superfury

User metadata
Rank l33t
Rank
l33t

Any idea how to generate an ISO disc image from those results?
I'm now running the build.sh directly, still waiting for the results...

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows and PSP on itch.io

Reply 354 of 378, by mr.cat

User metadata
Rank Member
Rank
Member
superfury wrote on 2020-12-23, 11:48:

Any idea how to generate an ISO disc image from those results?

Just run x86_cdimage.sh the same way you did with the other script. It will use the build objects from the previous build, if they are available.
...best to run one script at a time, of course...

I think it will be able to use the objects even if they are built manually, as long as they exist in the locations that it expects.

There's also a possibility to run the ISO creation by hand.
In the script there is a line with nbmakefs that creates the image, but it uses a lot of environmental variables so those should be dug out from somewhere.
(and ofc, the build should be complete before trying this)

Scratch that...there's more to iso creation than just that one command. You really need the whole script.

Reply 355 of 378, by superfury

User metadata
Rank l33t
Rank
l33t

The R3.3.0 version doesn't have said x86_cdimage.sh yet?

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows and PSP on itch.io

Reply 356 of 378, by mr.cat

User metadata
Rank Member
Rank
Member
superfury wrote on 2020-12-23, 12:52:

The R3.3.0 version doesn't have said x86_cdimage.sh yet?

Not sure about that, but at least the "Stichting-MINIX-Research-Foundation" version has it (that's 3.3.0?),
It's in the "releasetools" directory (like that other script).
EDIT: Actually it's not shown in the web gui for some reason...I have that repo on a local disk, and x86_cdimage.sh is there. The repo was cloned just a few days ago.

Reply 357 of 378, by superfury

User metadata
Rank l33t
Rank
l33t
mr.cat wrote on 2020-12-23, 12:59:
superfury wrote on 2020-12-23, 12:52:

The R3.3.0 version doesn't have said x86_cdimage.sh yet?

Not sure about that, but at least the "Stichting-MINIX-Research-Foundation" version has it (that's 3.3.0?),
It's in the "releasetools" directory (like that other script).

That's (the Master branch) 711 commits ahead of R3.3.0? Is that stable enough(though didn't update for the last 2 years or so)?
Edit: Just switched to it and now compiling...

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows and PSP on itch.io

Reply 358 of 378, by mr.cat

User metadata
Rank Member
Rank
Member
superfury wrote on 2020-12-23, 13:05:
mr.cat wrote on 2020-12-23, 12:59:
superfury wrote on 2020-12-23, 12:52:

The R3.3.0 version doesn't have said x86_cdimage.sh yet?

Not sure about that, but at least the "Stichting-MINIX-Research-Foundation" version has it (that's 3.3.0?),
It's in the "releasetools" directory (like that other script).

That's (the Master branch) 711 commits ahead of R3.3.0? Is that stable enough(though didn't update for the last 2 years or so)?

Right! So there is no x86_cdimage.sh in 3.3.0.
Well stability is always suspect with git versions. But you could maybe use that script in 3.3.0, if you have doubts.

The guide does assume you'll want the newest git... but then again, the guide is somewhat directed for Minix developers rather than end users.

Last edited by mr.cat on 2020-12-23, 13:43. Edited 1 time in total.

Reply 359 of 378, by superfury

User metadata
Rank l33t
Rank
l33t

Just tried the current commit(Master) running "sh releasetools/x86_cdimage.sh" from the ~/minix/src folder.
It once again fails compilation at exactly the same location.

#   compile  libLLVMCodeGen/CodeGenPrepare.lo
c++ -O -O2 -fno-rtti -fno-exceptions -I. -I/home/superfury/minix/src/tools/llvm-lib/libLLVMCodeGen/../../llvm/../../external/bsd/llvm/lib/../dist/clang/include -I/home/superfury/minix/src/tools/llvm-lib/libLLVMCodeGen/../../llvm/../../external/bsd/llvm/lib/../dist/lld/include -I/home/superfury/minix/src/tools/llvm-lib/libLLVMCodeGen/../../llvm/../../external/bsd/llvm/lib/../dist/llvm/include -I/home/superfury/minix/src/tools/llvm-lib/libLLVMCodeGen/../../llvm/../../external/bsd/llvm/lib/../dist/mclinker/include -I/home/superfury/minix/src/tools/llvm-lib/libLLVMCodeGen/../../llvm/../../external/bsd/llvm/lib/../dist/lldb/include -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DCLANG_ENABLE_STATIC_ANALYZER -I/home/superfury/minix/src/../obj.i386/tools/llvm-include -I/home/superfury/minix/src/../obj.i386/tools/llvm/config/include -I/home/superfury/minix/src/../obj.i386/tools/llvm/config/tools/clang/include -I/home/superfury/minix/src/tools/llvm-lib/libLLVMCodeGen/../../llvm/../../external/bsd/llvm/lib/../config/mclinker -std=c++11 -std=c++11 -c -o CodeGenPrepare.lo.o /home/superfury/minix/src/tools/llvm-lib/libLLVMCodeGen/../../llvm/../../external/bsd/llvm/lib/../dist/llvm/lib/CodeGen/CodeGenPrepare.cpp
In file included from /home/superfury/minix/src/tools/llvm-lib/libLLVMCodeGen/../../llvm/../../external/bsd/llvm/lib/../dist/llvm/lib/CodeGen/CodeGenPrepare.cpp:36:
/home/superfury/minix/src/tools/llvm-lib/libLLVMCodeGen/../../llvm/../../external/bsd/llvm/lib/../dist/llvm/include/llvm/IR/ValueMap.h: In member function 'bool llvm::ValueMap<KeyT, ValueT, Config>::hasMD() const':
/home/superfury/minix/src/tools/llvm-lib/libLLVMCodeGen/../../llvm/../../external/bsd/llvm/lib/../dist/llvm/include/llvm/IR/ValueMap.h:104:31: error: cannot convert 'const std::unique_ptr<llvm::DenseMap<const llvm::Metadata*, llvm::TrackingMDRef> >' to 'bool' in return
104 | bool hasMD() const { return MDMap; }
| ^~~~~
| |
| const std::unique_ptr<llvm::DenseMap<const llvm::Metadata*, llvm::TrackingMDRef> >
*** [CodeGenPrepare.lo] Error code 1

nbmake[8]: stopped in /home/superfury/minix/src/tools/llvm-lib/libLLVMCodeGen
1 error

nbmake[8]: stopped in /home/superfury/minix/src/tools/llvm-lib/libLLVMCodeGen
*** [dependall] Error code 2

nbmake[7]: stopped in /home/superfury/minix/src/tools/llvm-lib/libLLVMCodeGen
1 error

nbmake[7]: stopped in /home/superfury/minix/src/tools/llvm-lib/libLLVMCodeGen
*** [dependall-libLLVMCodeGen] Error code 2

nbmake[6]: stopped in /home/superfury/minix/src/tools/llvm-lib
1 error

nbmake[6]: stopped in /home/superfury/minix/src/tools/llvm-lib

*** Failed target: dependall-llvm-lib
*** Failed command: _makedirtarget() { dir="$1"; shift; target="$1"; shift; case "${dir}" in /*) this="${dir}/"; real="${dir}" ;; .) this="tools/"; real="/home/superfury/minix/src/tools" ;; *) this="tools/${dir}/"; real="/home/superfury/minix/src/tools/${dir}" ;; esac; show=${this:-.}; echo "${target} ===> ${show%/}${1:+ (with: $@)}"; cd "${real}" && /home/superfury/minix/src/../obj.i386/tooldir.Linux-5.4.0-58-generic-x86_64/bin/nbmake _THISDIR_="${this}" "$@" ${target}; }; _makedirtarget llvm-lib dependall
*** Error code 2

Stop.
nbmake[5]: stopped in /home/superfury/minix/src/tools
*** [build_install] Error code 1

nbmake[4]: stopped in /home/superfury/minix/src/tools
1 error

nbmake[4]: stopped in /home/superfury/minix/src/tools
*** [do-tools] Error code 2

nbmake[3]: stopped in /home/superfury/minix/src
1 error

nbmake[3]: stopped in /home/superfury/minix/src
*** [build] Error code 2

nbmake[2]: stopped in /home/superfury/minix/src
1 error

nbmake[2]: stopped in /home/superfury/minix/src
*** [distribution] Error code 2

nbmake[1]: stopped in /home/superfury/minix/src
1 error

nbmake[1]: stopped in /home/superfury/minix/src
*** [release] Error code 2

Show last 8 lines
nbmake: stopped in /home/superfury/minix/src
1 error

nbmake: stopped in /home/superfury/minix/src

ERROR: Failed to make release
*** BUILD ABORTED ***
superfury@VirtualBox-Ubuntu:~/minix/src$

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows and PSP on itch.io