Skip to content
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

p85 の図3-8 適当な模様をフレームバッファに描くができません #166

Open
taxin39 opened this issue Mar 20, 2024 · 4 comments

Comments

@taxin39
Copy link

taxin39 commented Mar 20, 2024

開発環境
Windows10
WSL2
ubuntu 22.03.4 TLS
qemu

osの開発が初めての初学者です。
タイトルの通りなのですがp85 の図3-8 "適当な模様をフレームバッファに描く"ができません。
以下のコマンドを実施しました。エラーは発生していないと思います。
しかし、qemuには図3-7 "フレームバッファを白く塗りつぶす"の時の画面が表示されてしまいます。
何か悪いところ、悪そうなところがあればご教示頂きたいです。よろしくお願いいたします。

実施コマンド

$ cd $HOME/workspace/mikanos
$ git checkout osbook_day03c
$ cd kernel
$ source $HOME/osbook/devenv/buildenv.sh
$ echo $CPPFLAGS
$ clang++ $CPPFLAGS -O2 --target=x86_64-elf -fno-exceptions -ffreestanding -c main.cpp
$ ld.lld $LDFLAGS --entry KernelMain -z norelro --image-base 0x100000 --static -o kernel.elf main.o

$ cd $HOME/edk2
$ source edksetup.sh
$ build

$ $HOME/osbook/devenv/run_qemu.sh $HOME/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/Loader.efi $HOME/workspace/mikanos/kernel/kernel.elf

出力結果

taxin@DESKTOP-ETK18JN:~/workspace/mikanos$ cd $HOME/workspace/mikanos
taxin@DESKTOP-ETK18JN:~/workspace/mikanos$ git checkout osbook_day03c
Previous HEAD position was 6f81c5e add review tag
HEAD is now at a9f6b6c add review range tag
taxin@DESKTOP-ETK18JN:~/workspace/mikanos$ cd kernel
taxin@DESKTOP-ETK18JN:~/workspace/mikanos/kernel$ source $HOME/osbook/devenv/buildenv.sh
taxin@DESKTOP-ETK18JN:~/workspace/mikanos/kernel$ echo $CPPFLAGS
-I/home/taxin/osbook/devenv/x86_64-elf/include/c++/v1 -I/home/taxin/osbook/devenv/x86_64-elf/include -I/home/taxin/osbook/devenv/x86_64-elf/include/freetype2 -I/home/taxin/edk2/MdePkg/Include -I/home/taxin/edk2/MdePkg/Include/X64 -nostdlibinc -D__ELF__ -D_LDBL_EQ_DBL -D_GNU_SOURCE -D_POSIX_TIMERS -DEFIAPI='__attribute__((ms_abi))'
taxin@DESKTOP-ETK18JN:~/workspace/mikanos/kernel$ clang++ $CPPFLAGS -O2 --target=x86_64-elf -fno-exceptions -ffreestanding -c main.cpp
taxin@DESKTOP-ETK18JN:~/workspace/mikanos/kernel$ ld.lld $LDFLAGS --entry KernelMain -z norelro --image-base 0x100000 --static -o kernel.elf main.o
taxin@DESKTOP-ETK18JN:~/workspace/mikanos/kernel$ cd $HOME/edk2
taxin@DESKTOP-ETK18JN:~/edk2$ source edksetup.sh
Loading previous configuration from /home/taxin/edk2/Conf/BuildEnv.sh
Using EDK2 in-source Basetools
WORKSPACE: /home/taxin/edk2
EDK_TOOLS_PATH: /home/taxin/edk2/BaseTools
CONF_PATH: /home/taxin/edk2/Conf
taxin@DESKTOP-ETK18JN:~/edk2$ build
Build environment: Linux-5.10.16.3-microsoft-standard-WSL2-x86_64-with-glibc2.35
Build start time: 18:25:02, Mar.20 2024

WORKSPACE        = /home/taxin/edk2
EDK_TOOLS_PATH   = /home/taxin/edk2/BaseTools
CONF_PATH        = /home/taxin/edk2/Conf
PYTHON_COMMAND   = /usr/bin/python3


Architecture(s)  = X64

Processing meta-data .Build target     = DEBUG
Toolchain        = CLANG38

Active Platform          = /home/taxin/edk2/MikanLoaderPkg/MikanLoaderPkg.dsc
 done!
/home/taxin/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py:549: DeprecationWarning: isSet() is deprecated, use is_set() instead
  return BuildTask._ErrorFlag.isSet()
/home/taxin/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py:533: DeprecationWarning: isSet() is deprecated, use is_set() instead
  return not BuildTask._SchedulerStopped.isSet()
/home/taxin/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py:435: DeprecationWarning: setName() is deprecated, set the name attribute instead
  SchedulerThread.setName("Build-Task-Scheduler")
/home/taxin/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py:436: DeprecationWarning: setDaemon() is deprecated, set the daemon attribute instead
  SchedulerThread.setDaemon(False)
/home/taxin/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py:458: DeprecationWarning: isSet() is deprecated, use is_set() instead
  or not ExitFlag.isSet()) and not BuildTask._ErrorFlag.isSet():
/home/taxin/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py:476: DeprecationWarning: isSet() is deprecated, use is_set() instead
  while not BuildTask._ErrorFlag.isSet():
/home/taxin/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py:669: DeprecationWarning: setName() is deprecated, set the name attribute instead
  self.BuildTread.setName("build thread")
/home/taxin/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py:670: DeprecationWarning: setDaemon() is deprecated, set the daemon attribute instead
  self.BuildTread.setDaemon(False)
Building ... /home/taxin/edk2/MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf [X64]
/home/taxin/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py:243: DeprecationWarning: setName() is deprecated, set the name attribute instead
  StdOutThread.setName("STDOUT-Redirector")
/home/taxin/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py:244: DeprecationWarning: setDaemon() is deprecated, set the daemon attribute instead
  StdOutThread.setDaemon(False)
/home/taxin/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py:199: DeprecationWarning: isSet() is deprecated, use is_set() instead
  if ExitFlag.isSet():
make: Nothing to be done for 'tbuild'.
Building ... /home/taxin/edk2/MdePkg/Library/UefiLib/UefiLib.inf [X64]
make: Nothing to be done for 'tbuild'.
Building ... /home/taxin/edk2/MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf [X64]
make: Nothing to be done for 'tbuild'.
Building ... /home/taxin/edk2/MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf [X64]
make: Nothing to be done for 'tbuild'.
Building ... /home/taxin/edk2/MdePkg/Library/BasePrintLib/BasePrintLib.inf [X64]
make: Nothing to be done for 'tbuild'.
Building ... /home/taxin/edk2/MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf [X64]
make: Nothing to be done for 'tbuild'.
Building ... /home/taxin/edk2/MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf [X64]
make: Nothing to be done for 'tbuild'.
Building ... /home/taxin/edk2/MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf [X64]
make: Nothing to be done for 'tbuild'.
Building ... /home/taxin/edk2/MdePkg/Library/BaseLib/BaseLib.inf [X64]
Building ... /home/taxin/edk2/MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf [X64]
make: Nothing to be done for 'tbuild'.
Building ... /home/taxin/edk2/MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf [X64]
make: Nothing to be done for 'tbuild'.
make: Nothing to be done for 'tbuild'.
Building ... /home/taxin/edk2/MikanLoaderPkg/Loader.inf [X64]
"clang" -MMD -MF /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/OUTPUT/Main.obj.deps -g -Os -fshort-wchar -fno-builtin -fno-strict-aliasing -Wall -Werror -Wno-array-bounds -include AutoGen.h -fno-common -ffunction-sections -fdata-sections -DSTRING_ARRAY_NAME=LoaderStrings -Wno-parentheses-equality -Wno-tautological-compare -Wno-tautological-constant-out-of-range-compare -Wno-empty-body -Wno-unused-const-variable -Wno-varargs -Wno-unknown-warning-option -Wno-unused-but-set-variable -Wno-unused-const-variable -fno-stack-protector -mms-bitfields -Wno-address -Wno-shift-negative-value -Wno-unknown-pragmas -Wno-incompatible-library-redeclaration -fno-asynchronous-unwind-tables -mno-sse -mno-mmx -msoft-float -mno-implicit-float -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang -funsigned-char -fno-ms-extensions -Wno-null-dereference -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto -target x86_64-pc-linux-gnu -g -c -o /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/OUTPUT/./Main.obj -I/home/taxin/edk2/MikanLoaderPkg -I/home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/DEBUG -I/home/taxin/edk2/MdePkg -I/home/taxin/edk2/MdePkg/Include -I/home/taxin/edk2/MdePkg/Test/UnitTest/Include -I/home/taxin/edk2/MdePkg/Include/X64 /home/taxin/edk2/MikanLoaderPkg/Main.c
/home/taxin/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py:500: DeprecationWarning: isSet() is deprecated, use is_set() instead
  if BuildTask._ErrorFlag.isSet():
/home/taxin/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py:505: DeprecationWarning: getName() is deprecated, get the name attribute instead
  EdkLogger.debug(EdkLogger.DEBUG_8, "Threads [%s]" % ", ".join(Th.getName() for Th in threading.enumerate()))
rm -f /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/OUTPUT/Loader.lib
"llvm-ar" cr /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/OUTPUT/Loader.lib  @/home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/OUTPUT/object_files.lst
"clang" -o /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/DEBUG/Loader.dll -nostdlib -Wl,-n,-q,--gc-sections -z common-page-size=0x40 -Wl,--entry,_ModuleEntryPoint -u _ModuleEntryPoint -Wl,-Map,/home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/DEBUG/Loader.map,--whole-archive -flto -Wl,-Oz -Wl,-melf_x86_64 -Wl,--oformat=elf64-x86-64 -Wl,-pie -mcmodel=small -Wl,--start-group,@/home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/OUTPUT/static_library_files.lst,--end-group -g -Os -fshort-wchar -fno-builtin -fno-strict-aliasing -Wall -Werror -Wno-array-bounds -include AutoGen.h -fno-common -ffunction-sections -fdata-sections -DSTRING_ARRAY_NAME=LoaderStrings -Wno-parentheses-equality -Wno-tautological-compare -Wno-tautological-constant-out-of-range-compare -Wno-empty-body -Wno-unused-const-variable -Wno-varargs -Wno-unknown-warning-option -Wno-unused-but-set-variable -Wno-unused-const-variable -fno-stack-protector -mms-bitfields -Wno-address -Wno-shift-negative-value -Wno-unknown-pragmas -Wno-incompatible-library-redeclaration -fno-asynchronous-unwind-tables -mno-sse -mno-mmx -msoft-float -mno-implicit-float -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang -funsigned-char -fno-ms-extensions -Wno-null-dereference -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto -target x86_64-pc-linux-gnu -g -Wl,--defsym=PECOFF_HEADER_SIZE=0x228 -Wl,--script=/home/taxin/edk2/BaseTools/Scripts/GccBase.lds -Wno-error -O3
"objcopy"  /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/DEBUG/Loader.dll
cp -f /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/DEBUG/Loader.dll /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/DEBUG/Loader.debug
objcopy --strip-unneeded -R .eh_frame /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/DEBUG/Loader.dll
objcopy --add-gnu-debuglink=/home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/DEBUG/Loader.debug /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/DEBUG/Loader.dll
cp -f /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/DEBUG/Loader.debug /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/Loader.debug
"GenFw" -e UEFI_APPLICATION -o /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/OUTPUT/Loader.efi /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/DEBUG/Loader.dll
cp -f /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/OUTPUT/Loader.efi /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/DEBUG
cp -f /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/OUTPUT/Loader.efi /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/Loader.efi
cp -f /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/DEBUG/*.map /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/MikanLoaderPkg/Loader/OUTPUT

- Done -
Build end time: 18:25:03, Mar.20 2024
Build total time: 00:00:01

taxin@DESKTOP-ETK18JN:~/edk2$ $HOME/osbook/devenv/run_qemu.sh $HOME/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/Loader.efi $HOME/workspace/mikanos/kernel/kernel.elf
+ [ 2 -lt 1 ]
+ dirname /home/taxin/osbook/devenv/run_qemu.sh
+ DEVENV_DIR=/home/taxin/osbook/devenv
+ EFI_FILE=/home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/Loader.efi
+ ANOTHER_FILE=/home/taxin/workspace/mikanos/kernel/kernel.elf
+ DISK_IMG=./disk.img
+ MOUNT_POINT=./mnt
+ /home/taxin/osbook/devenv/make_image.sh ./disk.img ./mnt /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/Loader.efi /home/taxin/workspace/mikanos/kernel/kernel.elf
+ [ 4 -lt 3 ]
+ dirname /home/taxin/osbook/devenv/make_image.sh
+ DEVENV_DIR=/home/taxin/osbook/devenv
+ DISK_IMG=./disk.img
+ MOUNT_POINT=./mnt
+ EFI_FILE=/home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/Loader.efi
+ ANOTHER_FILE=/home/taxin/workspace/mikanos/kernel/kernel.elf
+ [ ! -f /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/Loader.efi ]
+ rm -f ./disk.img
+ qemu-img create -f raw ./disk.img 200M
Formatting './disk.img', fmt=raw size=209715200
+ mkfs.fat -n MIKAN OS -s 2 -f 2 -R 32 -F 32 ./disk.img
mkfs.fat 4.2 (2021-01-31)
+ /home/taxin/osbook/devenv/mount_image.sh ./disk.img ./mnt
+ [ 2 -lt 2 ]
+ dirname /home/taxin/osbook/devenv/mount_image.sh
+ DEVENV_DIR=/home/taxin/osbook/devenv
+ DISK_IMG=./disk.img
+ MOUNT_POINT=./mnt
+ [ ! -f ./disk.img ]
+ mkdir -p ./mnt
+ sudo mount -o loop ./disk.img ./mnt
+ sudo mkdir -p ./mnt/EFI/BOOT
+ sudo cp /home/taxin/edk2/Build/MikanLoaderX64/DEBUG_CLANG38/X64/Loader.efi ./mnt/EFI/BOOT/BOOTX64.EFI
+ [ /home/taxin/workspace/mikanos/kernel/kernel.elf !=  ]
+ sudo cp /home/taxin/workspace/mikanos/kernel/kernel.elf ./mnt/
+ sleep 0.5
+ sudo umount ./mnt
+ /home/taxin/osbook/devenv/run_image.sh ./disk.img
+ [ 1 -lt 1 ]
+ dirname /home/taxin/osbook/devenv/run_image.sh
+ DEVENV_DIR=/home/taxin/osbook/devenv
+ DISK_IMG=./disk.img
+ [ ! -f ./disk.img ]
+ qemu-system-x86_64 -m 1G -drive if=pflash,format=raw,readonly,file=/home/taxin/osbook/devenv/OVMF_CODE.fd -drive if=pflash,format=raw,file=/home/taxin/osbook/devenv/OVMF_VARS.fd -drive if=ide,index=0,media=disk,format=raw,file=./disk.img -device nec-usb-xhci,id=xhci -device usb-mouse -device usb-kbd -monitor stdio
qemu-system-x86_64: -drive if=pflash,format=raw,readonly,file=/home/taxin/osbook/devenv/OVMF_CODE.fd: warning: short-form boolean option 'readonly' deprecated
Please use readonly=on instead
QEMU 6.2.0 monitor - type 'help' for more information

実行結果画面
68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3733373334342f31363534643637352d653336392d383564382d666535662d3966343164643963353536632e706e67

@taxin39
Copy link
Author

taxin39 commented Mar 22, 2024

qemuで確認したらエラーがありました。まだ改善できておらず対応中のため、何か原因をご教示頂けたら幸いです。

Hello, Mikan World! map->buffer = 3FEA88A0, map->map_size = 000008A0 Resolution: 800x600, Pixel Format: PixelBlueGreenRedReserved8BitPerColor, 800 pixels/line Frame Buffer: 0x80000000 - 0x801D5000, Size: 1921024 bytes Kernel: 0x100000 (1448 bytes) !!!! X64 Exception Type - 06(#UD - Invalid Opcode) CPU Apic ID - 00000000 !!!! RIP - 000000000080201A, CS - 0000000000000038, RFLAGS - 0000000000000046 RAX - 0000000000100000, RCX - 000000003F2B0B98, RDX - 0000000000000000 RBX - 000000003FEAC9E8, RSP - 000000003FEA8820, RBP - 000000003FEACA40 RSI - 00000000001D5000, RDI - 0000000080000000 R8 - 000000003FEA8794, R9 - 000000003FB7B48F, R10 - 000000003FBCD018 R11 - FFFFFFFFFFFFFFFC, R12 - 000000003E67CA5A, R13 - 000000003F21BA20 R14 - 000000003F21BF18, R15 - 000000003FEA9140 DS - 0000000000000030, ES - 0000000000000030, FS - 0000000000000030 GS - 0000000000000030, SS - 0000000000000030 CR0 - 0000000080010033, CR2 - 0000000000000000, CR3 - 000000003FC01000 CR4 - 0000000000000668, CR8 - 0000000000000000 DR0 - 0000000000000000, DR1 - 0000000000000000, DR2 - 0000000000000000 DR3 - 0000000000000000, DR6 - 00000000FFFF0FF0, DR7 - 0000000000000400 GDTR - 000000003FBEE698 0000000000000047, LDTR - 0000000000000000 IDTR - 000000003F306018 0000000000000FFF, TR - 0000000000000000 FXSAVE_STATE - 000000003FEA8480 !!!! Can't find image information. !!!!

@uchan-nos
Copy link
Owner

@taxin39

qemuで確認したらエラーがありました

は「Can't find image information.」のことを指していますか?
これは多分無視して良いメッセージだと思います。

貼っていただいたビルド手順と出力をざっと見ましたが、問題なさそうに思えました。
もう少し詳しく見てみます。

@uchan-nos
Copy link
Owner

いやあ謎ですね。手順の中でだめそうなところが見当たりません。

出力メッセージ的にあまり疑いようがないところではありませすが、可能性としては

  • MikanLoaderPkg が古いバージョンのままで、カーネルに適切な情報(フレームバッファのアドレスとサイズ)が渡せていない
  • kernel.elf が古いバージョンのままで、模様を描画するようになっていない

あるいはその他の原因かもしれませんが。現時点では不明です。

試しに MikanLoaderPkg/Main.c での出力(例えば https://github.com/uchan-nos/mikanos/blob/a9f6b6c2da5ac413d53223cf4081a94f20963ba0/MikanLoaderPkg/Main.c#L210 の行とか)を改造してみて、再度ビルド & run_qemu.sh を実行し、表示されるメッセージが変わるかを見てみたいです。
現在は「Kernel: 0x100000 (9792 bytes)」と表示されているのが変化すれば MikanLoaderPkg のビルドは真に成功しているということです。

次は kernel.elf のファイルサイズを調べてみてください。ls -l kernel.elf で見えるはずです。
これが 9792 バイトなら、MikanLoaderPkg が出力したメッセージと一致するので、正しい kernel.elf が読み込まれている可能性が高いでしょう。

@uchan-nos
Copy link
Owner

もしかしたら、Ubuntu 22.04 で導入される lld のバージョンが 14 のため問題が起きているかもしれません。

参考:https://github.com/uchan-nos/mikanos-build#%E3%83%AA%E3%83%9D%E3%82%B8%E3%83%88%E3%83%AA%E3%81%AE%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89

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