gpt4 book ai didi

c - 搭建学习C的环境

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:46:57 25 4
gpt4 key购买 nike

我正在尝试按照 MIT OCW Material 学习 C/C++ 编程。我正在运行 Windows PC,类(class) Material 要求在 Linux 环境下使用 gcc/g++ 编译器(用于 C 和 C++)运行所有 C/C++ 程序。它们还需要使用 gdbvalgrind 作为调试器。

我已经从 MinGW 包中安装了 gcc/g++,想知道是否有关于如何实现设置的具体说明。现在我希望能够设置 Linux、gdbvalgrind 并且至少编写一个简单的程序并在 Linux 环境中编译和运行它。现在我还安装了 VirtualBox,但出于某种原因,我创建的虚拟机总是给出以下消息:FATAL: No bootable medium found!系统停止

我想我只是迷失在开始学习所需的所有软件包/工具中。我以前只使用过 Microsoft Visual Studio,所以这些全新的命令提示符和工具让我很困惑。如果有人能给我具体的说明,告诉我如何从 Windows PC 开始,并使用 gdbvalgrind 在Linux环境。

最佳答案

我建议您使用 VirtualBox 创建虚拟机。这是最好的,因为它可以将您的开发环境沙箱化,并且您可以在真正的 Linux 环境中工作。VirtualBox 是免费和开源的,您可能不需要任何您可能在 VMWare 或 Parallels 中看到的高级功能。

现在您已经构建了环境,您可以创建一个目录来放置您的项目文件夹。根据提示,只需执行 mkdir projectscd projectsmkdir helloworldcd 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

Valgrind 和卸载磁盘

从您的helloworld 项目文件夹中输入sudo apt install valgrind,然后运行valgrind ./hello

最后,转到设置 -> 存储并卸载安装 ISO。

SSH 访问

使用以下命令安装 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 虚拟机,还可以使用 scp 等工具。

共享文件夹

共享文件夹允许您拥有跨越两个文件系统的媒介,允许您在两个环境之间共享文件。此资源提供了不同方法的更多详细信息:https://www.virtualbox.org/manual/ch04.html#sharedfolders .我将在此处详述的设置中介绍如何快速设置它。

以下将安装 VirtualBox 共享文件夹所需的 Linux header :

sudo apt-get install build-essential linux-headers-`uname –r`

然后转到 VirtualBox 菜单的 Devices 选项卡并单击 Insert Guest Additions CD image...

现在我们需要挂载 cdrom 并运行脚本:

sudo mount /dev/cdrom /media/cdrom
sudo /media/cdrom/VBoxLinuxAdditions.run

确定您要共享的 Windows 文件夹,然后转到 VirtualBox guest Machine::Settings::Shared Folders 进行共享并使用选项 Auto-mountMake Permanent 添加它。完成后,执行 sudo reboot

共享文件夹自动添加并存在于/media/sf_*

您必须在 vboxsf 组中才能使用这些文件。使用此命令将用户 testuser 添加到该组:

sudo usermod -aG vboxsf testuser
sudo reboot

关于c - 搭建学习C的环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40414183/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com