Блог пользователя theodor.moroianu

Автор theodor.moroianu, история, 5 лет назад, По-английски

The list of IDEs available for the IOI contest has been online for a while now Link.

Sadly, as geniucos pointed out in his blog, Code::Blocks — the only full IDE made for C++ (autocomplete, debug, run and a GUI ok out-of-the-box) is really unstable on Ubuntu, and the IOI tech team offers no support for it.

The only other full IDE compatible with C++ seems to be Eclise, written in and for Java, but a nice C++ IDE, after the necessary add-in are installed (the CDT add-in — C++ Development Tools).

Note that the official webpage clearly states 'Eclipse 4.11 (+ JDT & CDT 9.8)'.

I downloaded the VM for testing the OS we will use, and either I don't know how to activate CDT for Eclipse, either it was not installed, as I was unable to create any C++ project:

This is a screen shoot of the virtual machine with Eclipse offering no option to create a C++ project. I searched in the settings for "C++" keyword but found nothing.

Below a picture of my version of Eclipse with CDT installed:

Is there a secret option I don't know about, is the VM not up-to-date or is the IDEs list just wrong?

For any IOI current/former participant, what IDE do you recommend the most and why?

Теги ioi, c++, ide
  • Проголосовать: нравится
  • +24
  • Проголосовать: не нравится

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Auto comment: topic has been updated by theodor.moroianu (previous revision, new revision, compare).

»
5 лет назад, # |
  Проголосовать: нравится +44 Проголосовать: не нравится

Geany. Or if you are hardcore use vim.

  • »
    »
    5 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

    I also used Geany on IOIs. It's simple and doesn't have good code completion or other cool features, but it works well. But it's not a good option for you if you use a debugger.

»
5 лет назад, # |
  Проголосовать: нравится +16 Проголосовать: не нравится

To generally answer your last question, I came to see that CLion is pretty similar and much more stable than CB (I really recommend it). But IOI doesn't want to install it (as it's not a free software — not as if sublime was considered free last time I checked or as if they couldn't convince JetBrains to sponsor them but whatever, they clearly don't care).

  • »
    »
    5 лет назад, # ^ |
      Проголосовать: нравится +10 Проголосовать: не нравится

    Eclipse with C++ tools looks and with some tweaks can be made to mimic codeblocks, but not if they don't install the CDT — which is currently not installed in the VM they gave us

  • »
    »
    5 лет назад, # ^ |
      Проголосовать: нравится +9 Проголосовать: не нравится

    CLion is trialware and Sublime Text is winrarware. Maybe that's the difference, although I don't get it either.

    • »
      »
      »
      5 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится

      But as CLion offers a 30-day trial, isn't it somehow "free to use" for 30 days (although it is not a free software)?

      PS: I don't know anything about the licencing of software so I may have said a really dumb thing

      • »
        »
        »
        »
        5 лет назад, # ^ |
          Проголосовать: нравится +8 Проголосовать: не нравится

        Nnnot exactly.

        The license is a legal agreement, meaning it can contain as much casework as you want and if someone has a problem with someone else interprets it, it can go to court, where lawyers will bicker about the listed cases and probably add more sub-cases.

        I don't have the text of this specific license, so I can't tell you, but it usually includes provisions about permitted use (you can't sell it for 30 days, for example). Use for educational purposes is often permitted, but it's unclear if it would apply to IOI or if a judge would interpret it as such if JetBrains took exception to its use in IOI. So there's some justification for avoiding programs licensed like this, although it's not very good justification — I don't see why IOI couldn't contact JB and work something out.

»
5 лет назад, # |
Rev. 2   Проголосовать: нравится +8 Проголосовать: не нравится

Hey theodor.moroianu!

I have tested it a bit on my own with IOI 2019 official image, and I indeed couldn't find any reference of CDT in Installed Software in Eclipse:

Image

After digging around a bit, you can install it through Eclipse by pointing it to the CDT location at https://download.eclipse.org/tools/cdt/releases/9.7/ and installing everything. Which makes options like the ones you pointed appear (although not all of them). We can also see that a lot of C++ becomes installed:

Image

However, I've never worked with CDT so can you please confirm that after doing so everything works as you'd expect? In any case, it looks like it's indeed missing.

UPD: Actually I may have a guess. The Eclipse installed is 2019-03, for which version 9.7 of CDT is applicable. If I try to install CDT 9.8 (which is meant for Eclipse 2019-06) on 2019-03, like they promise on Environment page, then I get some compatibility errors, so maybe some automatic scripts fail to install it completely. Please confirm that installing 9.7 manually gives the expected result and I'll write HTC an e-mail with some technical details of this.

P.S. To answer your question, I used kate + debugging output at IOI. Although I wouldn't say I recommend it over nicer debugging tools. :)

  • »
    »
    5 лет назад, # ^ |
      Проголосовать: нравится +10 Проголосовать: не нравится

    After installing the first package i saw when searching for 'CDT' on the 'Eclipse Marketplace' it works just as I expected to :)

    I didn't know eclipse had such a tool (and the only version I was able to install was 9.7 so you're probably right about a script error).

    As we won't have an internet connection, we won't be able to install it ourselves, so if you could talk / press the matter with someone of the tech team it would be really great!

»
5 лет назад, # |
  Проголосовать: нравится +10 Проголосовать: не нравится
Question: Why don’t we have Visual Studio Code at IOI?

Answer: Due to Microsoft licenses that apply to Visual Studio Code product, we won’t be able to support it. We have been considering an open source alternative - VSCodium, but then extensions from Visual Studio Marketplace will not be available for a similar reason.

Could you please, explain these troubles with license? Isn't VSC free to use?

  • »
    »
    5 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    IDK about the exact reason, but here is my assumption:

    From the license:

    5. SCOPE OF LICENSE. This license applies to the Visual Studio Code product. Source code for Visual Studio Code is available at https://github.com/Microsoft/vscode under the MIT license agreement... You may not

    • ...

    • share, publish, rent or lease the software, or provide the software as a stand-alone offering for others to use.

    Note that the compiled binaries have their own license agreement, they are not licensed under MIT license as the sources do.