{"id":2714,"date":"2025-04-22T05:21:14","date_gmt":"2025-04-22T05:21:14","guid":{"rendered":"https:\/\/www.woojin.help\/?p=2714"},"modified":"2025-06-12T11:13:53","modified_gmt":"2025-06-12T11:13:53","slug":"wsl2-setup-for-development-environments-bluecon-keba","status":"publish","type":"post","link":"https:\/\/www.woojin.help\/ko\/wsl2-setup-for-development-environments-bluecon-keba\/","title":{"rendered":"WSL2 Setup for Development Environments (Bluecon, KEBA)"},"content":{"rendered":"<div class=\"pdfprnt-buttons pdfprnt-buttons-post pdfprnt-top-right\"><\/div>\n<p class=\"wp-block-paragraph\"><strong>Tags:<\/strong> <code>WSL<\/code>, <code>Windows Subsystem for Linux<\/code>, <code>Qt<\/code>, <code>KEBA<\/code>, <code>Bluecon2.5<\/code>, <code>Ubuntu<\/code>, <code>ext4.vhdx<\/code>, <code>Qt5.15.13<\/code>, <code>Qwt<\/code>, <code>Virtualization<\/code>, <code>Windows<\/code>, <code>Linux<\/code>, <code>Compatibility<\/code>, <code>\uac1c\ubc1c<\/code>, <code>KEBA Controller<\/code><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Why Use WSL?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">WSL (Windows Subsystem for Linux) allows a full Linux environment to run directly within Windows \u2013 without needing a separate virtual machine or dual-boot setup. For our Qt\/KEBA\/Bluecon2.5 development workflow, a preconfigured <strong>ext4.vhdx<\/strong> image is provided, ensuring consistency across developer machines.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Step-by-Step Setup Guide<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">1. Enable WSL Features<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Open a terminal with administrator privileges and run:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-ast-global-color-7-background-color has-background\">bashKopierenBearbeiten<code>dism.exe \/online \/enable-feature \/featurename:Microsoft-Windows-Subsystem-Linux \/all \/norestart\ndism.exe \/online \/enable-feature \/featurename:VirtualMachinePlatform \/all \/norestart\n<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">2. Install WSL2 Linux Kernel Update<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Download and install the latest kernel: \ud83d\udc49 <a class=\"\" href=\"https:\/\/learn.microsoft.com\/ko-kr\/windows\/wsl\/install-manual\">WSL2 Kernel Update Package (Microsoft)<\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">3. Set WSL Version to 2 by Default<\/h4>\n\n\n\n<pre class=\"wp-block-preformatted has-ast-global-color-7-background-color has-background\">bashKopierenBearbeiten<code>wsl --set-default-version 2\n<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">4. Install Ubuntu from Microsoft Store<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Search for \u201cUbuntu\u201d in the Microsoft Store and install e.g., Ubuntu 20.04.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">5. Use the Provided ext4.vhdx Image<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Replace the default virtual disk with the provided image: Path:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-ast-global-color-7-background-color has-background\">makefileKopierenBearbeiten<code>C:\\Users\\&lt;USERNAME&gt;\\AppData\\Local\\Packages\\\nCanonicalGroupLimited.Ubuntu18.04onWindows_...\\LocalState\\\n<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">6. Disable Hyper-V Temporarily (If Needed)<\/h4>\n\n\n\n<pre class=\"wp-block-preformatted has-ast-global-color-7-background-color has-background\">bashKopierenBearbeiten<code>bcdedit \/set hypervisorlaunchtype off\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><em>A restart is required. Re-enable with:<\/em><\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-ast-global-color-7-background-color has-background\">bashKopierenBearbeiten<code>bcdedit \/set hypervisorlaunchtype auto\n<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Notes for Qt Development in WSL<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Qt version <strong>5.15.13<\/strong> is used (LGPLv3 compliant).<\/li>\n\n\n\n<li>Ensure correct Qwt and toolchain paths in Qt Creator.<\/li>\n\n\n\n<li>Flags like <code>-D_LINUX_ARM_ARCH_<\/code> can be removed for x86_64 targets.<\/li>\n\n\n\n<li>Avoid redefining types like <code>uint64_t<\/code> to prevent conflicts with standard headers.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udca1 Benefits<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Shared <code>.vhdx<\/code> image provides a consistent development environment.<\/li>\n\n\n\n<li>Compatible with Linux-based KEBA controllers.<\/li>\n\n\n\n<li>No need for separate Linux hardware or dual-boot setups.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\ud83d\udcc2 Internal image path:<\/strong> <code>Z:\\Technik\\Steuerung\\11.KEBA\\Images\\ext4.vhdx<\/code><br><\/p>\n\n\n\n<div class=\"wp-block-pdfjsblock-pdfjs-embed pdfjs-wrapper\"><\/div>","protected":false},"excerpt":{"rendered":"<p>Tags: WSL, Windows Subsystem for Linux, Qt, KEBA, Bluecon2.5, Ubuntu, ext4.vhdx, Qt5.15.13, Qwt, Virtualization, Windows, Linux, Compatibility, Development, KEBA Controller [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[379,388],"tags":[],"class_list":["post-2714","post","type-post","status-publish","format-standard","hentry","category-documentation","category-how-to-guides"],"_links":{"self":[{"href":"https:\/\/www.woojin.help\/ko\/wp-json\/wp\/v2\/posts\/2714","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.woojin.help\/ko\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.woojin.help\/ko\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.woojin.help\/ko\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.woojin.help\/ko\/wp-json\/wp\/v2\/comments?post=2714"}],"version-history":[{"count":2,"href":"https:\/\/www.woojin.help\/ko\/wp-json\/wp\/v2\/posts\/2714\/revisions"}],"predecessor-version":[{"id":2720,"href":"https:\/\/www.woojin.help\/ko\/wp-json\/wp\/v2\/posts\/2714\/revisions\/2720"}],"wp:attachment":[{"href":"https:\/\/www.woojin.help\/ko\/wp-json\/wp\/v2\/media?parent=2714"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.woojin.help\/ko\/wp-json\/wp\/v2\/categories?post=2714"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.woojin.help\/ko\/wp-json\/wp\/v2\/tags?post=2714"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}