国产无码免费,人妻口爆,国产V在线,99中文精品7,国产成人无码AA精品一,制度丝袜诱惑av,久久99免费麻辣视频,蜜臀久久99精品久久久久久酒店
        訂閱
        糾錯
        加入自媒體

        WSL:開發(fā)Linux程序的又一神器

        什么是 WSL?

        什么是 WSL2?

        激活 WSL 服務(wù)

        安裝 Ubuntu-18.04 操作系統(tǒng)

        通過 ssh 遠(yuǎn)程登錄

        編譯 Hello,World!

        作為一名嵌入式軟件開發(fā)工程師,在 Linux 系統(tǒng)下寫代碼、編譯、調(diào)試是避免不了的事情。

        但是很少有同學(xué)會直接拿一臺 Linux 真機(jī)來作為工作平臺,除非是那種利用遠(yuǎn)程服務(wù)器來編譯的場景。

        更普遍的使用場景是:在一臺 Windows/Mac 系統(tǒng)中,安裝虛擬機(jī),然后在虛擬機(jī)中安裝 Linux 操作系統(tǒng)。

        Windows 系統(tǒng)中常用的虛擬機(jī)有:Virtualbox、VMWare,Mac 系統(tǒng)中一般都是用 Parallels Desktop,速度確實比較快!

        在很久以前,我參與的項目主要是物聯(lián)網(wǎng)網(wǎng)關(guān),只需要編譯 Linux 系統(tǒng)下的可執(zhí)行程序,因此在日常工作中,都是直接在 Ubuntu 虛擬機(jī)中敲代碼(編輯器:VSCode、SubLime)、編譯、調(diào)試。

        后來需要開發(fā)跨平臺的應(yīng)用,開發(fā)模式就變成了:

        敲代碼:indows 系統(tǒng)中中的 Visual Studio;

        編譯 Windows 應(yīng)用程序: 直接用 Visual Studio 中的 VC 編譯器來編譯;

        編譯 Linux 應(yīng)用程序:通過遠(yuǎn)程部署的方式,把代碼同步到 Ubuntu 虛擬機(jī)中,然后遠(yuǎn)程編譯、調(diào)試;

        這樣的開發(fā)模式是屬于比較常見的,只不過每次 Ubuntu 虛擬機(jī)比較耗費(fèi)資源,啟動比較慢而已!

        編寫跨平臺的代碼,使用 CMake 工具來管理構(gòu)建過程,也是非常方便的。

        之前寫過 2 篇相關(guān)的文章:

        《使用 cmake 來搭建跨平臺的應(yīng)用程序框架:C語言版本》

        《使用 cmake 來搭建跨平臺的應(yīng)用程序框架:C++版本》

        這 2 篇總結(jié),算是一個簡單的工程模板吧。

        平時如果我需要寫一些簡單的 Demo 發(fā)給別人,我就會直接復(fù)制一下,然后添加上演示代碼就可以了。

        說了這么多,都是在描述跨平臺開發(fā)的工作場景,或者說是開發(fā)模式。

        其實,在 Windows 系統(tǒng)中,還有一種安裝 Linux 系統(tǒng)的方式,這就是 WSL/WSL2!

        下面,我就把自己的安裝、配置過程與大家分享一下!

        什么是 WSL?

        這部分沒有什么好掰扯的,直接從微軟官網(wǎng)摘錄如下:

        WSL(Windows Subsystem for Linux):Windows 系統(tǒng)中的一個子系統(tǒng),在這個子系統(tǒng)上可以運(yùn)行 Linux 操作系統(tǒng)。

        可以讓開發(fā)人員直接在 Windows 上按原樣運(yùn)行 GNU/Linux 環(huán)境(包括大多數(shù)命令行工具、實用工具和應(yīng)用程序),且不會產(chǎn)生傳統(tǒng)虛擬機(jī)或雙啟動設(shè)置開銷。

        什么是 WSL2?

        WSL2 是適用于 Linux 的 Windows 子系統(tǒng)體系結(jié)構(gòu)的一個新版本,它是對基礎(chǔ)體系結(jié)構(gòu)的一次重大改造。

        它使用虛擬化技術(shù)和 Linux 內(nèi)核來實現(xiàn)其新功能,主要目標(biāo)是提高文件系統(tǒng)性能和添加完全的系統(tǒng)調(diào)用兼容性。

        個人理解:

        WSL:并不是一個真正的 Linux 操作系統(tǒng),僅僅是 Linux 應(yīng)用程序與 Windows 操作系統(tǒng)之間的一個適配層。

        在這個適配層之上,可以運(yùn)行 Linux 應(yīng)用程序,有點類似于以前的 cygwin 的方式。

        WSL2:它就是一個虛擬機(jī),類似于 Vitual Box,在這個虛擬機(jī)之上,運(yùn)行一個完整的 Linux 操作系統(tǒng)。

        相對于 Virtual Box、VMWare 來說,WSL2提供更全面的兼容性、與 Windows 系統(tǒng)的互操作性更好、運(yùn)行速度更快、占用系統(tǒng)資源更少。

        激活 WSL 服務(wù)

        按 Win+X, 啟動 Windows PowerShell (管理員),注意:是帶有管理員的這個啊:

        或者直接在搜索窗口中輸入 Power, 然后選擇以管理員方式運(yùn)行:

        PowerShell 的窗口是:

        可以把 PowerShell 理解成升級版的、功能更強(qiáng)勁的 cmd。

        在 PowerShell 窗口中,輸入如下指令來激活 WSL 服務(wù):

        Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

        此時,提示需要重啟系統(tǒng)(不用說,肯定選擇 Y):

        電腦重啟之后,按下 Win + R,調(diào)出命令輸入窗口。輸入指令 appwiz.cpl。

        點擊左側(cè)的 【啟動或關(guān)閉 Windows 功能】:

        彈出下面這個窗口:

        可以看到:【適用于 Linux 的 Windows 子系統(tǒng)】這一欄已經(jīng)被勾選了,說明 WSL 服務(wù)已經(jīng)啟動。

        接下來要做的事情,就是安裝 Ubuntu 操作系統(tǒng)。

        安裝 Ubuntu-18.04 操作系統(tǒng)

        啟動 【W(wǎng)indows Store】:

        在右上角的搜索欄中,輸入:Ubuntu

        我們這里就選擇 Ubuntu-18.04 吧,這也是我工作中使用的版本。

        下載速度挺快的:

        安裝完成之后,點擊【啟動】按鈕:

        第一次打開速度稍微慢一些,大約 1 分鐘左右吧,提示設(shè)置用戶名、密碼,然后就進(jìn)入我們熟悉的窗口了:

        這樣,Ubuntu-18.04 系統(tǒng)就安裝好了!

        我一般在系統(tǒng)安裝之后,會把 root 用戶的密碼也設(shè)置一下,以后總會需要使用 root 身份來登錄系統(tǒng)的。

        $ sudo passwd

        系統(tǒng)安裝之后,第一件事情一般都是更換軟件源。

        可以選擇阿里、清華或者中科大的源,這里就直接使用清華的軟件源:

        $ cd /etc/apt
        $ sudo cp sources.list source.list.bak
        $ sudo vim sources.list

        把下面軟件源復(fù)制、粘貼進(jìn)去:

        deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
        # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
        deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
        # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
        deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
        # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
        deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
        # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse

        保存之后,執(zhí)行更新指令:

        $ sudo apt-get update
        $ sudo apt-get upgrade
        這個步驟,請同學(xué)們耐心等待,稍安勿躁。出現(xiàn)提示輸入,選擇 Y 就行了。
        通過 ssh 遠(yuǎn)程登錄

        如果您覺得這個黑乎乎的窗口有點丑,那么可以通過 Windows 系統(tǒng)中的 Xshell 工具來遠(yuǎn)程登錄(ssh)。

        為了這個目的,我們需要在 Ubuntu-18.04 中重新安裝 sshd 服務(wù):

        $ sudo apt purge openssh-server
        $ sudo apt install openssh-server

        安裝完畢之后,需要修改配置文件,以運(yùn)行遠(yuǎn)程登錄:

        $ sudo vim  /etc/ssh/sshd_config

        修改1:把 13 行的 #Port 22 改為 Port 22。

        修改2:把 32 行的 #PermitRootLogin prohibit-password 改為 PermitRootLogin yes。

        修改3:把 56 行的 #PasswordAuthentication yes 改為 PasswordAuthentication yes。

        修改之后,啟動 sshd 服務(wù):

        $ sudo service ssh restart

        此時,啟動 Windows 系統(tǒng)中的 Xshell 來遠(yuǎn)程登錄一下,主機(jī)名只需要填寫:localhost 即可:

        建立鏈接的時候,需要保存秘鑰:

        然后輸入用戶名和密碼:

        如果出現(xiàn)下面這個提示,先不用理會它,直接選擇【否】,這是與 Linux 的圖形窗口相關(guān)的,后面會解釋。

        此時,就可以在 Xshell 中愉快的操作 Ubuntu 的命令行窗口了。

        是不是感覺少了點什么東西?那些 Desktop、Documents、Picture 等默認(rèn)文件夾怎么都不見了?

        這個問題,后面在演示 WSL2 的時候就見分曉了!

        編譯 Hello,World!

        最后,我們來編譯一個應(yīng)用程序。首先安裝 gcc 編譯器:

        $ sudo apt-get install gcc

        再寫一個 hello.c 文件:

        #include

        然后編譯、執(zhí)行:

        ccc@DESKTOP-5LT2QM5:~/tmp$ gcc hello.c -o hello
        ccc@DESKTOP-5LT2QM5:~/tmp$ ./hello
        Hello,World!

        完美!

        聲明: 本文由入駐維科號的作者撰寫,觀點僅代表作者本人,不代表OFweek立場。如有侵權(quán)或其他問題,請聯(lián)系舉報。

        發(fā)表評論

        0條評論,0人參與

        請輸入評論內(nèi)容...

        請輸入評論/評論長度6~500個字

        您提交的評論過于頻繁,請輸入驗證碼繼續(xù)

        暫無評論

        暫無評論

          掃碼關(guān)注公眾號
          OFweek人工智能網(wǎng)
          獲取更多精彩內(nèi)容
          文章糾錯
          x
          *文字標(biāo)題:
          *糾錯內(nèi)容:
          聯(lián)系郵箱:
          *驗 證 碼:

          粵公網(wǎng)安備 44030502002758號

          主站蜘蛛池模板: 榆社县| 欧美BBXX| 香港| 国产小精品| 制服.丝袜.亚洲.中文.综合懂| 亚洲无码在线免费观看| 亚洲天堂在线播放| www.国产在线观看| 国产自在线| 金堂县| 九色视频丨PORNY丨丝袜| 亚洲无码社区| WWW.99| 阳朔县| 国产精品99久久久久久成人| 亚洲天堂自拍| 溧阳市| 国产成人无码网站m3u8| 9191av| 另类一区| 国产乡下妇女做爰视频| 中文字幕av在线| 大庆市| 3P免费视频| 欧美午夜精品| 91成人在线播放| aV无码av高潮aV三区| 阜城县| 久久久中文| 欧韩一区| 五月色情婷婷| 中文字幕日产av| 丰满午夜人妻无码AAAA| 另类天堂天堂av| 午夜剧场黄色| 国产高清A片| 亚洲?欧美?自拍?偷拍| 日本中文字幕色| 熟妇人妻系列| 国产精品???A片在线观看| 亚州无码熟女|