wsl + Virtual Box
home/.wslconfig
asdf install
make menuconfig
でエラー
~/WSL2-Linux-Kernel linux-msft-wsl-6.6.y $ make menuconfig
HOSTCC scripts/basic/fixdep
*
* Unable to find the ncurses package.
* Install ncurses (ncurses-devel or libncurses-dev
* depending on your distribution).
*
* You may also need to install pkg-config to find the
* ncurses installed in a non-default location.
*
make[2]: *** [scripts/kconfig/Makefile:224: scripts/kconfig/mconf-libs] Error 1
make[1]: *** [/home/rclab/WSL2-Linux-Kernel/Makefile:697: menuconfig] Error 2
make: *** [Makefile:234: __sub-make] Error 2
~/WSL2-Linux-Kernel linux-msft-wsl-6.6.y $ sudo apt install pkg-config
sudo apt install libncurses-dev
~/WSL2-Linux-Kernel linux-msft-wsl-6.6.y $ make menuconfig
HOSTCC scripts/kconfig/mconf.o
HOSTCC scripts/kconfig/lxdialog/checklist.o
HOSTCC scripts/kconfig/lxdialog/inputbox.o
HOSTCC scripts/kconfig/lxdialog/menubox.o
HOSTCC scripts/kconfig/lxdialog/textbox.o
HOSTCC scripts/kconfig/lxdialog/util.o
HOSTCC scripts/kconfig/lxdialog/yesno.o
HOSTCC scripts/kconfig/confdata.o
HOSTCC scripts/kconfig/expr.o
LEX scripts/kconfig/lexer.lex.c
/bin/sh: 1: flex: not found
make[2]: *** [scripts/Makefile.host:9: scripts/kconfig/lexer.lex.c] Error 127
make[1]: *** [/home/rclab/WSL2-Linux-Kernel/Makefile:697: menuconfig] Error 2
make: *** [Makefile:234: __sub-make] Error 2
sudo apt install flex
~/WSL2-Linux-Kernel linux-msft-wsl-6.6.y $ make menuconfig
LEX scripts/kconfig/lexer.lex.c
YACC scripts/kconfig/parser.tab.[ch]
/bin/sh: 1: bison: not found
make[2]: *** [scripts/Makefile.host:17: scripts/kconfig/parser.tab.h] Error 127
make[1]: *** [/home/rclab/WSL2-Linux-Kernel/Makefile:697: menuconfig] Error 2
make: *** [Makefile:234: __sub-make] Error 2
sudo apt install bison
menuconfig make 宙に escesc
~/WSL2-Linux-Kernel linux-msft-wsl-6.6.y $ make xconfig
*
* Could not find Qt6 or Qt5 via pkg-config.
* Please install Qt6 or Qt5 and make sure it's in PKG_CONFIG_PATH
* You need Qt6Core Qt6Gui Qt6Widgets for Qt6
* You need Qt5Core Qt5Gui Qt5Widgets for Qt5
*
make[2]: *** [scripts/kconfig/Makefile:224: scripts/kconfig/qconf-libs] Error 1
make[1]: *** [/home/rclab/WSL2-Linux-Kernel/Makefile:697: xconfig] Error 2
make: *** [Makefile:234: __sub-make] Error 2
~/WSL2-Linux-Kernel linux-msft-wsl-6.6.y $ sudo apt install qt5-default
不要だった
apt list | grep -E "qt[5,6]"
不要
~/WSL2-Linux-Kernel linux-msft-wsl-6.6.y $ pkg-config --cflags --libs Qt6Core
Package Qt6Core was not found in the pkg-config search path.
Perhaps you should add the directory containing `Qt6Core.pc'
to the PKG_CONFIG_PATH environment variable
No package 'Qt6Core' found
/usr/lib/pkgconfig $ pkg-config --variable pc_path pkg-config
/usr/local/lib/x86_64-linux-gnu/pkgconfig:/usr/local/lib/pkgconfig:/usr/local/share/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig
/lib/modules/6.6.75.1-microsoft-standard-WSL2+ $ uname -r
5.15.167.4-microsoft-standard-WSL2
(wsl とは関係ない Virtual Box のインストール)
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
current directory: /var/lib/gems/3.0.0/gems/bcrypt_pbkdf-1.1.1/ext/mri
/usr/bin/ruby3.0 -I /usr/lib/ruby/vendor_ruby -r ./siteconf20250224-10843-6ws7nd.rb extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h
You might have to install separate package for the ruby development
environment, ruby-dev or ruby-devel for example.
sudo apt install ruby-full
asdf install ruby 3.4.2
~ $ asdf install ruby 3.4.2
==> Downloading ruby-3.4.2.tar.gz...
-> curl -q -fL -o ruby-3.4.2.tar.gz https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.2.tar.gz
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 22.1M 100 22.1M 0 0 10.6M 0 0:00:02 0:00:02 --:--:-- 10.6M
==> Installing ruby-3.4.2...
-> ./configure "--prefix=$HOME/.asdf/installs/ruby/3.4.2" --enable-shared --with-ext=openssl,psych,+
-> make -j 28
-> make install
==> Installed ruby-3.4.2 to /home/rclab/.asdf/installs/ruby/3.4.2
~ $ cd ./vagrant
~/vagrant main $ ruby --version
No version is set for command ruby
Consider adding one of the following versions in your config file at
ruby 3.4.2
~/vagrant main $ asdf global
Usage: asdf global <name> <version>
~/vagrant main $ asdf global ruby 3.4.2
~/vagrant main $ ruby --version
ruby 3.4.2 (2025-02-15 revision d2930f8e7a) +PRISM [x86_64-linux]
~/vagrant main $ sudo bundle install
sudo: unable to execute /usr/local/bin/bundle: No such file or directory
~/vagrant main $ gem -v
3.6.2
~/vagrant main $ gem install bundler
Fetching bundler-2.6.5.gem
Successfully installed bundler-2.6.5
1 gem installed
A new release of RubyGems is available: 3.6.2 → 3.6.5!
Run `gem update --system 3.6.5` to update your installation.
~/vagrant main $ bundle install
Fetching https://github.com/hashicorp/vagrant-spec.git
Fetching gem metadata from https://rubygems.org/...........
Resolving dependencies...
Could not find compatible versions
Because every version of vagrant depends on Ruby >= 3.0, < 3.4
and Gemfile depends on vagrant >= 0,
Ruby >= 3.0, < 3.4 is required.
So, because current Ruby version is = 3.4.2,
version solving has failed.
Pending: (Failures listed here are expected and do not affect your suite's status)
1) VagrantPlugins::CommandBox::Command::Repackage with three arguments repackages the box with the given provider
# Not yet implemented
# ./test/unit/plugins/commands/box/command/repackage_test.rb:53
2) VagrantPlugins::GuestOmniOS::Cap:RSync .mount_nfs_folder mounts with options
# Not yet implemented
# ./test/unit/plugins/guests/omnios/cap/mount_nfs_folder_test.rb:46
3) VagrantPlugins::FTPPush::SFTPAdapter#upload uploads the file
# a way to mock an SFTP server
Failure/Error: test_with_mock_sftp_server
NameError:
undefined local variable or method `test_with_mock_sftp_server' for #<RSpec::ExampleGroups::VagrantPluginsFTPPushSFTPAdapter::Upload:0x000079cb458db690>
# ./test/unit/plugins/pushes/ftp/adapter_test.rb:115:in `block (3 levels) in <top (required)>'
Failures:
1) Vagrant::Util::Platform within the WSL .wsl_to_windows_path when within WSL when windows access is enabled should generate expanded path when within WSL
Failure/Error: expect(subject.wsl_to_windows_path(path)).to eq("#{rootfs_path}#{path.gsub("/", "\\")}")
expected: "C:\\WSL\\rootfs\\home\\vagrant\\test"
got: "\\\\wsl.localhost\\VagrantExperimenr\\home\\vagrant\\test"
(compared using ==)
# ./test/unit/vagrant/util/platform_test.rb:491:in `block (6 levels) in <top (required)>'
2) Vagrant::Util::Platform within the WSL .wsl_to_windows_path when within WSL when windows access is enabled should generate direct path when outside the WSL
Failure/Error: expect(subject.wsl_to_windows_path("/mnt/c/vagrant")).to eq("c:\\vagrant")
expected: "c:\\vagrant"
got: "C:\\vagrant"
(compared using ==)
# ./test/unit/vagrant/util/platform_test.rb:495:in `block (6 levels) in <top (required)>'
3) Vagrant::Util::Platform within the WSL .wsl_to_windows_path when within WSL when windows access is enabled when within lxrun generated WSL instance should include rootfs when accessing non-home path
Failure/Error: expect(subject.wsl_to_windows_path("/tmp/test")).to include("rootfs")
expected "\\\\wsl.localhost\\VagrantExperimenr\\tmp\\test" to include "rootfs"
# ./test/unit/vagrant/util/platform_test.rb:510:in `block (7 levels) in <top (required)>'
4) Vagrant::Util::Platform within the WSL .wsl_to_windows_path when within WSL when windows access is enabled when within lxrun generated WSL instance should properly handle Pathname
Failure/Error: expect(subject.wsl_to_windows_path(Pathname.new("/tmp/test"))).to include("rootfs")
expected "\\\\wsl.localhost\\VagrantExperimenr\\tmp\\test" to include "rootfs"
# ./test/unit/vagrant/util/platform_test.rb:514:in `block (7 levels) in <top (required)>'
Finished in 11 minutes 44 seconds (files took 1.08 seconds to load)
5015 examples, 4 failures, 3 pending
Failed examples:
rspec ./test/unit/vagrant/util/platform_test.rb:490 # Vagrant::Util::Platform within the WSL .wsl_to_windows_path when within WSL when windows access is enabled should generate expanded path when within WSL
rspec ./test/unit/vagrant/util/platform_test.rb:494 # Vagrant::Util::Platform within the WSL .wsl_to_windows_path when within WSL when windows access is enabled should generate direct path when outside the WSL
rspec ./test/unit/vagrant/util/platform_test.rb:509 # Vagrant::Util::Platform within the WSL .wsl_to_windows_path when within WSL when windows access is enabled when within lxrun generated WSL instance should include rootfs when accessing non-home path
rspec ./test/unit/vagrant/util/platform_test.rb:513 # Vagrant::Util::Platform within the WSL .wsl_to_windows_path when within WSL when windows access is enabled when within lxrun generated WSL instance should properly handle Pathname