从Windows新手问题学习Linux

时间:2010-10-01 14:22:30

标签: c++ linux

我是linux和编程的新手。我想学习linux命令并使用创建一些C和C ++程序来从我的Windows XP与linux API进行交互。但是,我不确定如何从基于Windows的计算机设置环境。

我应该安装什么程序?此外,似乎Linux有Ubuntu,Fedora。我也听说过Red Hat。有什么区别,我应该安装哪一个?

另外,使用Linux和Ubuntu之类的用户界面,使用IDE创建程序和使用VIM创建程序的命令行终端有什么区别吗?

此外,我听说过使用Valgrind来调试程序。 Valgrind是否与Ubuntu中的IDE一起使用或仅在命令行终端中工作?如果我的IDE已经有调试器,我还需要Valgrind吗?

很抱歉这些新手问题。

感谢。

5 个答案:

答案 0 :(得分:7)

你的问题很模糊,很容易引发争论和争吵。此外,你错过了那里的许多术语,在你开始使用Linux编程之前,你应该首先熟悉操作系统,特别是终端......但首先,用C / C ++编写的Windows编程并不完全相同在C / C ++ for Linux中编程。如果你想要后者,那就用后者。

我的建议是:

  1. 抓住VirtualBox并安装它。
  2. 下载Ubuntu;恕我直言,Ubuntu最适合初学者(或其他任何人),因为它有很多支持,良好的用户群,并且与几乎任何Linux软件安装程序兼容(RPM,deb等)你可以选择任何其他分布,这并不重要,但我推荐这个。 [1]
  3. 启动VirtualBox并创建一个新的Ubuntu虚拟机。这些步骤非常简单,请咨询documentation以获得任何帮助。您的虚拟机可能类似于:
    • 1GB的RAM就够了;
    • 10GB的硬盘(你不会需要更多,但如果您认为/home需要更多空间,可能会增加尺寸,请参阅下一点)< / LI>
    • 网络适配器设置桥接
  4. 从您刚刚下载的ISO安装Ubuntu(您已将VirtualBox作为CD-ROM设备安装到VirtualBox中)对于典型的最低Ubuntu安装(ext4 + swap),您只需要大约8GB的硬盘总数,但我建议this setup
  5. 享受您的安装。 (提示:现在您可以安装VirtualBox的Guest Additions。)
  6. 在Ubuntu VirtualBox窗口中打开终端并输入sudo apt-get install build-essential以安装GCC编译器
  7. Gedit默认已经安装了Ubuntu,与Windows的记事本相比,它是一个相当不错的文本编辑器。但是,vim不是,但您可以在终端中使用sudo apt-get install vim进行安装。
  8. 瞧!您已准备好在Linux环境中进行一些C / C ++编程,在这种情况下,如果您遇到困难,您仍然可以安装Windows。

    我还建议您使用终端(也就是命令行)完成大部分学习,这样您就可以了解工作原理。 然后,当您熟悉GCC编译器,MAKEFILE等时,您可以安装一些IDE以避免重复任务;我找到的两个最好的是AjuntaMonoDevelop。两者都可以从存储库中获得。

    现在,如果你想“创建一些C和C ++程序来与[你的] Windows XP中的linux API进行交互”,你需要学习套接字和SSH;因此,您可以从Windows计算机连接到Linux计算机,并从Windows应用程序远程执行某些命令。但在此之前,学习C / C ++并使用Linux。对于新手来说,你已经把手放在那里了。

    祝你好运!


    [1] Ubuntu(a Linux distribution)以Gnome为GUI,而KubuntuKDEXubuntu为{{{} 3}}。所有这些(GUI)都是单独的项目,您可以在任何Linux桌面安装上安装所有这些项目。甚至, 需要任何Linux发行版的GUI;例如,VMWare的XFCE有很多像这样的随时可用的Linux安装。

答案 1 :(得分:1)

尝试使用VM或live-cd。

Valgrind是一个命令行工具,但也许有些IDE使用集成它。

在Linux下你会看到,大多数时候IDE都没用(不是巨魔)。 你会手动做你的Makefile,......

希望你会喜欢它。

此致

答案 2 :(得分:1)

一次学习一件事。

  • 如果您想先学习编程,请先尝试python。它适用于Windows和Linux,可以更快地获得结果
  • 如果您想学习C ++,请获取Visual C ++ express或Cygwin / GCC
  • 如果您想体验Linux,请获得您选择的发行版(Linux-Mint是一个很好的插件,来自Windows)并在VM中尝试(VMWare Player或VirtualBox)
  • 尝试简单的项目,然后再担心调试器

答案 3 :(得分:0)

如果您在虚拟机(例如虚拟机或WMWare)中尝试它,您可以在决定要使用的Linux发行版之前测试所需的多个选项。有很多,但从你列出的内容来看,我个人认为Ubuntu比Fedora更容易启动。我从来没有使用过RedHat,所以我说不出来,但它并没有成为一个强硬的声誉(专家)。
无论如何,至少要开始我建议用GUI安装它(除非它是服务器,否则在启动之后......)。

关于IDE,您可以尝试Eclipse和Netbeans。它们在Windows和Linux上运行,但我不是C / C ++程序员,所以我不知道他们是否擅长这项工作。我不使用IDE,Vim远远不是独特的选择(Vim“addicts”:)会说它是独特的生产性但是这是个人选择而且学习时间不是很短)。 Personnaly我更喜欢一个好的IDE或至少是用于编程的图形编辑器,而不是我不喜欢使用命令行终端的功能和速度,因为我更喜欢将它用于系统管理或配置,而不是用于编程很长一段时间。

我不知道Valgrind,但Eclipse或Netbeans IDE当然有调试器。

答案 4 :(得分:0)

为Linux编程要学习的一系列项目,对于这些步骤,您可以参考:

  1. 红帽认证系统管理员I和II学生用书可以帮助您获得Linux中的生存能力,实际上当您真正了解这些课程涵盖的领域时,您将能够找到要学习的内容。 / LI>
  2. 使用关键字“Linux Programming”搜索亚马逊,选择一个并开始您的旅程。
  3. 玩得开心。