代码之家  ›  专栏  ›  技术社区  ›  Ismail Marmoush

在linux上与c++IDE抗争

  •  10
  • Ismail Marmoush  · 技术社区  · 14 年前

    • Netbeans 6.9.1(崩溃,非常慢的编辑器,但是在项目创建中非常惊人和容易)
    • Eclipse(快速编辑器,我讨厌项目配置,即使在php中,它也很烦人)
    • 代码块没有那么多ppl推荐的
    • 安茹塔的代码完成真的sux

    你可能会认为我很懒或者很快就放弃了,但我发誓我已经搜索了很多,并且阅读了每一本的pooooor教程,它们都有太多的信息,没有人需要开始学习。我认为在编程领域,我们真的缺乏好的文档。你可以在(Boost图书馆网站)上看到,我真的希望有人能给我一些有用的方法来帮助我度过这场混乱。


    谢天谢地,在得到了很好的答案之后,我认为我必须阅读关于CMAKE、makefiles概念的文章。然后我的一半问题就会消失,我认为现在使用IDE使我无法理解“Make”的东西,这对我计划在linux上进行长期开发没有帮助

    p、 s(Qt creator太棒了!!它非常像MAC,整洁、干净、用户友好)


    几周后 Emacs很好,但也许对于一个想提高写作技巧的初学者来说,这将是一件乏味的工作,你需要尽快完成它!


    就像说一开始不要轻易放弃可能会帮你节省很多时间。。

    12 回复  |  直到 11 年前
        1
  •  13
  •   emailhy    14 年前

    也许您可以尝试qt creator,它是为开发qt应用程序而设计的,但是您可以将它用于其他c++程序。它支持cmake。

        2
  •  4
  •   slashmais    14 年前

    关于code::blocks你错了。

    我已经尝试了您列出的大部分内容,但最终还是使用了code::blocks。

    如果你真的对简单的用户界面开发感兴趣,看看 Ultimate++

        3
  •  3
  •   StackedCrooked    14 年前

    • 季度创建者
    • 共晶石

    顺便说一句,如果你打算在未来做更多的Linux开发,那么理解make文件是必须的。为了帮助您开始,下面是最简单的示例:

    SOURCES=main.cpp hello.cpp
    
    all:
        g++ $(SOURCES) -o hello
    

    注意:使用实际值 而不是前面的4个空间 g++ ..

    就这样。

        4
  •  2
  •   bmeric    14 年前
        5
  •  2
  •   Mr.Ree    14 年前

    对于emacs中的自动完成,我使用(在.emacs文件中):

    (require 'completion)
    (global-set-key "\C-\\"  'complete)
    

    它至少需要三个字符,然后向后搜索第一个类似名称的令牌。(您可能还希望启用字体锁定和C++模式。)

    Emacs确实有很长的学习曲线。但是它非常强大,非常可定制,非常有用。您始终可以从命令的一小部分开始,然后从中增长。有一个内置的教程模式(Ctrl-h t)。像(Ctrl-h B)或(Ctrl-h k)这样的东西可以帮助你找出各种键在做什么。

    alias tgcc 'g++ \!:* -o \!:1:r -Wall ; if ( $status == 0 ) ./\!:1:r'
    tgcc foo.C
    

    对于更复杂的系统,makefile是必不可少的!在linux的fedora(和其他风格)下,通过emacs“info”,有关于GNU Make系统的非常好的文档。或者尝试:

    http://www.gnu.org/software/make/manual/make.html

    总的来说,随着时间的推移,makefile变得越来越复杂。他们不经常这样开始。我们有一组源文件。从这些源文件派生的一组对象文件,通常通过一个简单的替换规则。从这些对象文件的子集派生的库。从各种对象文件和库派生的二进制文件。可能是在这些二进制文件上运行的测试程序。也许我们想要比较测试程序和回归测试的测试输出。也许我们想把一组文件打包成一个tarbar。可能是在清理时要删除的文件集。等。

    规则很简单。您可以定义数据集(通常是文件名)、应用命令集从现有数据(文件)创建新数据(再次定义,通常是文件名)的规则以及依赖项,以便知道何时重新创建。

    说真的,阅读手册,从简单开始,然后从那里开始构建。。。

    注意:尝试添加这些规则(不是第一条规则!)到您的(GNU)makefile:

    echo-%:
            @echo $* == "\"$($*)\""
    
    echoraw-%:
            @echo "$($*)"
    

    现在您可以说“make echo CC”之类的话来查看变量CC设置为什么。这对调试很有用。。。

        6
  •  1
  •   Nim    14 年前

    隐马尔可夫模型。。你检查过你安装的JVM的哪个版本了吗?我使用伊柯丽斯(CDT)和NETBeBeS(这是一个出色的C++ IDIHO)。我在Eclipse上遇到过一些问题(通常索引数百个文件有时会导致它耗尽内存,但您可以使用命令行选项来控制JVM可以使用多少内存)。

    为了自我提高,我建议你读一本关于makefiles的教程,有很多东西,google是你的朋友。不管IDE在生成makefile方面有多好,通常如果您向存储库贡献源代码,那么很难使用生成的makefile。

        7
  •  1
  •   Community Mofi    7 年前

    我还尝试了几个ide。包括日食和一切。最后,我只使用emacs(X版本)和automake/autoconf。对我来说,这是创造东西的捷径。而且,它几乎可以在每台机器上工作,而且大部分时间都是已经安装好或易于安装的。

    对于automake/autoconf,我使用了以下站点来学习:

    对于emacs,我只是遵循了附带的教程。此外,在开始使用emacs的X版本时,不需要记住那么多的按键。

    (顺便说一句:要求emacs自动完成 here

        8
  •  1
  •   Dalton Conley    14 年前

    尽管您正在查找与IDE相关的内容并生成生成生成文件。。等。。我更喜欢“vim”的简洁性和语法性

        9
  •  1
  •   Ludger Sprenker    14 年前

    你应该再试试kdevelop,它真的很值得!4版本提供了非常好的C++代码完成和编码帮助。 我想你的问题是,你必须先为“Hello world”示例创建一个“Launch Configuration”(查看Run->Configure Launches…)

        10
  •  0
  •   pm100    14 年前

    另一种选择是使用好的编辑器,并将其与使用半自动构建系统相结合

    • 经典是autoconf/automake。。。。如果你打算写真正的可移植的东西,那么这就是你要去的地方。它有一个陡峭的学习曲线,但工作。它是开源的通用构建系统

    我肯定还有其他人

    据记录,我在auto*和普通ole gdb中使用slickedit

        11
  •  0
  •   Jay    14 年前

    我也经历过同样的痛苦。我想同时使用windows和linux版本,这样我就可以跨平台工作了。

    • 我使用eclipse有一段时间了,但是调试器从来没有在windows下工作过,它对我来说不是很有用。不直观,使用困难。
    • 我终于决定上网本了。我让调试器在windows下工作,但是很痛苦。它有很多缺点,但至少可以在两个平台上编译和调试。他们正在根据用户反馈积极改进

        12
  •  0
  •   BЈовић    14 年前

    Kdevelop版本4仍然不够稳定。在4.0版(Ubuntu10.10附带的版本)中,execute按钮总是灰色的,并且总是崩溃。

    试试第三版-非常好。