[英]Setting up environment for learning C
我試圖通過遵循MIT OCW材料學習C / C ++編程。 我正在運行Windows PC,課程材料要求使用gcc
/ g++
編譯器(適用於C和C ++)在Linux環境下運行所有C / C ++程序。 他們還需要使用gdb
和valgrind
作為調試器。
我已經從MinGW軟件包中安裝了gcc
/ g++
,並且想知道是否有關於如何實現設置的特定說明。 現在,我希望能夠設置Linux, gdb
和valgrind
,並至少編寫一個簡單的程序並在Linux環境中編譯和運行它。 現在,我還安裝了VirtualBox,但由於某種原因,我創建的虛擬機始終會顯示以下消息: FATAL: No bootable medium found! System halted
FATAL: No bootable medium found! System halted
。
我想我只是迷上了開始學習所需的所有軟件包/工具。 我以前只使用過Microsoft Visual Studio,所以這些全新的命令提示符和工具確實讓我感到困惑。 如果有人能給我有關如何從Windows PC開始並在Linux環境中使用gdb
和valgrind
編譯和調試簡單C程序的詳細說明,那將是很好的。
我建議您使用VirtualBox創建虛擬機。 這是最好的,因為它可以沙盒化您的開發環境,並且您可以使用真正的Linux環境。VirtualBox是免費的開放源代碼,並且您可能不需要在VMWare或Parallels中看到的任何高級功能。
現在已經構建了環境,您可以在項目文件夾所在的目錄中創建目錄。 在提示符下,只需執行mkdir projects
, cd projects
, mkdir helloworld
, cd helloworld
。 然后,您可以使用內置的編輯器nano
來編輯文件。 鍵入nano hello.c
,然后輸入以下內容:
#include <stdio.h>
int main()
{
printf("Hello, world\n");
}
然后鍵入Ctrl-O
進行寫出,然后Ctrl-X
退出。
然后,您只需要安裝gcc
,我建議您也安裝make
:
$ sudo apt install gcc
...
$ sudo apt install make
現在在您的開發環境中編譯和測試您的第一個程序:
$ make hello
$ ./hello
然后,您應該在屏幕上看到Hello, world
。
從helloworld
項目文件夾中輸入sudo apt install valgrind
,然后運行valgrind ./hello
。
最后,轉到設置->存儲,然后卸載安裝ISO。
使用以下命令安裝openssh-server
:
sudo apt install openssh-server
通過鍵入ifconfig
查找Ubuntu主機的IP地址。 然后,對於VirtualBox,轉到Settings
:: Network
:: Advanced
,然后單擊Port Forwarding
。 使用以下設置:
Host IP: 127.0.0.1
Host Port: 22
Guest IP: (IP of Ubuntu VM)
Guest Port: 22
現在,您可以ssh
到Ubuntu VM,還可以使用諸如scp
工具。
共享文件夾允許您使用跨兩個文件系統的介質,從而可以在兩個環境之間共享文件。 該資源提供了有關不同方法的更多詳細信息: https : //www.virtualbox.org/manual/ch04.html#sharedfolders 。 我將介紹如何在此處詳細介紹的設置中快速進行設置。
以下將安裝VirtualBox共享文件夾所需的Linux標頭:
sudo apt-get install build-essential linux-headers-`uname –r`
然后轉到VirtualBox菜單的“ Devices
選項卡,然后單擊“ Insert Guest Additions CD image...
。
現在我們需要mount
cdrom
並運行腳本:
sudo mount /dev/cdrom /media/cdrom
sudo /media/cdrom/VBoxLinuxAdditions.run
找出您要共享的Windows文件夾,然后通過轉到VirtualBox guest虛擬Machine
:: Settings
:: Shared Folders
並使用“ Auto-mount
和Make Permanent
”選項添加它來Shared Folders
它。 完成后,執行sudo reboot
。
共享文件夾會自動添加並存在於/media/sf_*
。
您必須在vboxsf
組中才能使用這些文件。 使用此命令將用戶testuser
添加到該組:
sudo usermod -aG vboxsf testuser
sudo reboot
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.