13 ms·
JetBrains is working on a cross-platform C++ IDE
- niggler 14y agoI'm confused by this. If you had a particularly good IDE in a particular OS, why wouldn't you use a VM and run that OS for the purpose of the IDE? Especially if its on Linux.
- norswap 14y agoWell, the only good C++ IDE (according to many people) is Visual Studio, which is tuned for Microsoft-flavoured C++ (which should follow standard, but like always, some slight difference with g++ I suppose). Also not being able to run the code on the platform where you code is incredibly annoying.
- niggler 14y agoI don't see where it said they would support multiple compilers. It does say they are integrating with Clang analyzer, but no indication of native support for MSVC idiosyncracies
- thwest 14y agoBoth MSVC and g++ have some C++ language extensions enabled by default. Examples include msvc allowing you to drop 'typename' where the compiler can deduce that a token is actually a type, and g++ allowing variable length arrays. Visual Studio works great on cross platform code bases. It is so much better than Eclipse, but I'll stick with vim :)
- alexkcd 14y agoI recommend checking out Qt Creator. It's cross platform, has code completion, live syntax checking, supports regular Makefiles, C++11, and much more. Plus, if you're looking to build a cross platform GUI app, Qt is a great toolkit, and Qt Creator (as the name suggests) supports drag&drop UI building, QML etc.
- alok-g 14y agoLast time I tried Qt Creator, it was very slow as compared to Visual Studio. I ended up practically giving up on it entirely. Please someone tell me I am wrong about this. I liked the interface for Qt Creator very much and would prefer it as such.
- papaf 14y agoI use Qt Creator and Visual Studio 2010 on the same medium size code base and Qt Creator has a much faster UI. I find that compilation in Qt Creator is possibly slower if you are on windows (using mingw) but on Linux its around 10 times faster (through the use of ccache and make -g4).
- andrewf 14y agoDepends how long ago "last time" was. I first used Qt Creator in ~2009, it's gotten a lot better over time.
- fauigerzigerk 14y agoIt does not fully support C++11. For instance, I still get squiggly underlines for brace initializers in 2.6.2. Renaming is very unreliable. Code navigation doesn't recognize the standard library that's actually used according to the .pro file. Every compile gives me spurious warnings about missing directories on the Mac. And the documentation is awful. I still haven't figured out how to make precompiled headers work with clang (but that may be my fault).
- Derbasti 14y agofrankly, I think Visual Studio is a sub-par IDE for C++. Code highlighting is pretty bare bones. Debugging often misses stack frames and it regularly loses access to local variables. There is practically no refactoring support. The compiler has a weird non-standard feature set. Auto completion as usually not context aware. "Find usage" usually does not find every reference. I could go on... When people rave about Visual Studio, they are mostly talking about C# development. And even there, they often talk about Resharper. That said, install Visual Assist X and Visual Studio becomes quite a decent C++ IDE. That does not fix debugging or the compiler of course, but refactoring, highlighting, code navigation, contextual cues and auto completion are mightily improved.
- pjmlp 14y agog++ is no standard. ANSI and ISO are. Contrary to many in FOSS think, all C and C++ compiler vendors have language extensions and gcc is not immune to this.
- ibrahima 14y agoI wish all the best to them. Eclipse with CDT is OK but often just blows up in my face. The last time I tried to use it I ended up switching to Emacs completely :/. But I love IntelliJ for Java, Ruby, and Python, would love to see them build a nice C++ IDE along those lines. Not having used AppCode I don't know how good the support is for C++ already. I wonder if they will be using clang/llvm for static analysis? Though I don't know much about that area, I've noticed that all C++ IDEs that I've tried (including MSVC++) are much poorer than Java IDEs in that aspect.
- niggler 14y ago"I wonder if they will be using clang/llvm for static analysis?" From the page: "The IDE will be integrated with Clang Analyzer, so that more than 2000 code inspections and error diagnostics results from Clang compiler would be shown right in the editor. Of course, you also would be able to review them in a bulk mode"
- martin_ 14y agoDon't these already exist? For example codeblocks?
- ansgri 14y agoDoes codeblocks have advanced code manipulation tools, i.e. refactoring support (in the presence of complex templated code)? It's an extremely complex problem for C++, and JetBrains seem to have the right brains to solve it.
- martin_ 14y agoDoesn't look like it - AppCode definitely looks way better, I was just curious that there may be others in this arena already.
- zalzane 14y agoCodeblocks is essentially notepad with a gui for mingw compiler options. It cant be compared with visual studio in terms of development, refactoring, and debugging tools.
- martin_ 14y agoTheir features page states otherwise: http://www.codeblocks.org/features http://www.codeblocks.org/features -- Multiple compilers (Mingw, MSVC, Borland, and more).. Build in debugger, plugin support, etc. I haven't used it, so i'm just assuming their website is accurate
- andrewflnr 14y agoHaving used it, I know the debugger works. I didn't get into the more complicated stuff much.
- geon 14y ago> notepad with a gui for mingw compiler options That was a bit harsh. It definitely isn't VS, but there is code navigation, auto completion, debugging etc.
- melling 14y agoThen all we'll need is a great cross-platform UI toolkit. People have been working on them for 20 years but I not sure if anything really works well.
- username111 14y agoThis is the reason I don't use jetbrains products, I use linux and the Java font rendering is absolutely awful, I've tried all the fixes and I can't find any of them pleasing enough to use.
- kunai 14y agoWhy don't you try Qt Jambi or GTK+ if Swing on Linux is awful? GTK integrates perfectly with Linux if you're using GNOME. Just a thought.
- ultimoo 14y agoI use GNOME. How would one go about switching out Swing for GTK while running a JetBrains IDE (or another application)?
- kunai 14y agoSimple. Switch to VIM. Or, just write GTK code from scratch directly in the IDE. It's not too hard. I currently use Swing in Java, all written from scratch - no IDEs to be found. I've also dabbled around with simple GTK+ apps. They aren't as easy, nor as efficient, to work with as the standard Java toolkit, but you get used to it. I switched back to Swing because I wanted as few dependencies as possible.
- duaneb 14y agoSo--I'm still missing something. Are you saying that the way to get good font rendering in IntelliJ is to write GTK+ apps? It sounds like you misread the OP.
- ArtB 14y agoWill this be integrated with IntelliJ or available as a module/plugin?
- tregoning 14y agoWondering the same... specially since IntellJ is supposed to encompass all other Jetbrains IDEs
- nevster 14y agoI don't know the precise answer to the original question. But with regards to AppCode it's pretty much a standalone product that has features IntelliJ doesn't. IntelliJ incorporates everything found in all the other IDEs like RubyMine and PyCharm but doesn't include the additional stuff found in AppCode.
- Kaali 14y agoI've heard that the reason for this is the XCode project format. The purpose of AppCode is to be a better IDE for iOS/OSX development. But if the future version targets cross platform development, not meaning cross platform on the host side, but cross platform on the compiler target side; it would probably mean that the project format support should support Makefiles and other build systems; and hopefully that would be integrated in IntelliJ.
- Watabou 14y agoI love IntelliJ for java development but I never got why I might need a big IDE for c/C++. I just use Vim for that. I mean it does omnicompletion and code correction with clang, has snippets, support for switching between header and source code files. It works pretty well for me. Even sublime text would do the job since it has all of those features too. What do IDEs have over Vim in terms of features that I may be missing out on? For java, I would definitely use IntelliJ because of the debugging features alone but I think it's overkill for something like C/C++/Python
- swah 14y agoDoes your comment suggests that you're using Java for more complex stuff than you would ever use C++?
- Watabou 14y agoNot really, I just prefer using lldb/gdb or just simple printf/couts for debugging purposes. For Java, you really can't get decent code checking with vim unless you use a the eclim plugin and that just feels like a hack.
- MrUnknown 14y agoTo me, it seems like a lot of these light-weight Non-IDE text editors, are basically IDEs anyway. You just said sublime and Vim have most of the features of an IDE. I personally use RubyMine, and while I don't use the debugging a whole lot, it comes in handy with some really confusing issues. Other than that, it is just a fancy text editor that I have become used to for Ruby work.
- georgehaake 14y agoI signed up for a newsletter regarding this release yesterday. Received an email from Jetbrains that it was a April Fools joke.
- sidww2 14y agoIt wasn't an April Fools joke http://blog.jetbrains.com/objc/2013/04/c-ide-an-april-fools-day-joke/?utm_source=rss&utm_medium=rss&utm_campaign=c-ide-an-april-fools-day-joke http://blog.jetbrains.com/objc/2013/04/c-ide-an-april-fools-...
- georgehaake 14y agoRight, this is what I received. Hi from JetBrains, This is a short but important note about the C++ IDE we revealed yesterday: Yes, it was an April Fools' joke, but the IDE is actually real. Thanks for believing and subscribing to the list. As soon as we have something ready, you'll be the first to know and try it out. Stay tuned! Oh, and if you use a Mac, you are welcome to try C/C++ in AppCode and let us know what you think. Develop with pleasure! The JetBrains Team www.jetbrains.com
- thejosh 14y agoI hope that it's not in Java, because their other products for Linux have really bad fonts.
- ultimoo 14y agoTrue. I have somehow never liked how desktop applications written in Java turn out. I don't know whether it is because they don't use a native windowing toolkit or something else.
- gregschlom 14y agoMost Java apps nowadays use the native windowing toolkit. SWT for example (the major gui framework for Java) uses GTK on Linux, Cocoa on OSX and Win32 API on Windows
- pjmlp 14y agoUsually the blame is on the developers that don't make use of what Java offers. There used to be a blog series explaining developers how to take advantage of Swing to make nice UIs. The problem is that most don't care and use whatever is the default.
- deleted 14y ago[deleted]
- BHSPitMonkey 14y agoMy experience with IntelliJ on Linux is that after a short time spent in the IDE, the software maxes out the OS open files limit (even if you've bumped it up to, say, 4096) and crash horribly (usually blowing away some percentage of the IDE's own configuration each time). Fonts are the least of their problems.
- koalaman 14y agohttp://blogs.jetbrains.com/idea/2010/04/native-file-system-watcher-for-linux/ http://blogs.jetbrains.com/idea/2010/04/native-file-system-w...
- dorolow 14y agoThis is excellent news. PyCharm has been great to work with, along with every other JetBrains product barring AppCode. I attempted to try to replace Xcode with AppCore for C++ development as I was put off by some of characteristics of Xcode and had many positive experiences with JetBrains. AppCode ended up modifying my preexisting Xcode project that I had opened, changing several settings that silently broke my build. I don't really recall what settings it broke in particular, but I just reverted so it wasn't that big of a deal. It didn't end up suiting my purposes very well as the C++ support just wasn't that great at the time. It seemed like a decent IDE if you do ObjC work, though.
- thrush 14y agocoming from a student who did most of their learning in C++, this sounds awesome. period.
- rch 14y ago>>Built-in support for Doxigen documentation system for all supported languages. Great feature, but it's Doxygen with a 'y'.
- Daegalus 14y agoThis is great. It already handles pretty much every other language. Once it gets this. And maybe C# through monogame. it will be the ultimate IDE. Love jetbrains products. Best $200 i ever spent on Ultimate
- kombine 14y agoSomething that people already mentioned, but still. There is great Visual Studio for Windows and for cross-platform development there is Qt Creator. The latter also comes with a full-fledged development framework that allows you do GUI, threading, networking, databases: it is effectively what a standard library should be. It also really fast and has a slick interface allowing to do code navigation really fast. I don't have to tell you what I use for C++ development. So it will be very hard for them to compete with existing options.
- uuilly 14y agoQt Creator is a wonderful IDE. I've used many and never seen one better. And the Qt libs are underrated for non-gui systems development.
- qompiler 14y agoExcept for the fact that Qt is not as cross-platform as the standard C++ library. Qt also uses non-C++ features such as signals/slots which require usage of their own Meta Object Compiler.
- nicholassmith 14y agoYou can do stock C++ work in the Qt IDE, it's perfectly happy doing it.
- mpyne 14y agoQt's moc is a preprocessor/code-generator which compiles to standard C++. Do you also tell people that they shouldn't use flex/lex/bison/yacc/antlr/etc.? Why are those code generators/DSLs acceptable but the moc is not? It's not as if the Qt authors added it because they don't understand C++, they added it because it solves a vexing problem in C++ GUI design.
- qompiler 14y agoI would have agreed with you if Qt used something like the #pragma directive. Alas, they decided to inject keywords inside of the standard language which breaks every C++ compiler.
- pjmlp 14y agoThis is great! Looking forward for it, there are very few mature C++ IDEs around and this would be a nice addition, specially if it matches their offering in other languages.
- ed_blackburn 14y agoIs only me or they missing a trick by skipping C#? Or are they concerned it'll disrupt Resharper sales? Or is there simple not a market for C# outside of Visual Studio and MonoDevelop?
- berkut 14y agoWhat's it built in? Java I'd imagine? IntelliJ was almost perfect for Java (last used it 3 years ago), other than the ridiculous memory usage and the constant freezing which I'm pretty sure the JVM's GC was responsible for. I've been using Qt Creator for C++ code for the past 3 years, and it's so much faster and non-laggy it's lovely - even when having some serious things missing (multiple monitor support).
- pkolaczk 14y agoIntelliJ Idea does not use more than 1/30 of my laptop memory with a huge project open. Constant freezing? This must have been a bug, because I'm using it for 2 years now, and no freezing at all, and autocomplete / navigation / find-usages are crazy fast. It gets a little sluggish only when I switch branches and it has to reindex hundred megabytes of jars. Well, but how often you do it... BTW: Comparing it to Qt creator is very unfair, because Qt creator does not have half of the features included in IntelliJ. E.g. refactoring / inspections / full type-aware error highlighting (not just syntax checking).
- webreac 14y ago10 years ago, I have used SNiFF+ (from windriver). This seams to have disappeared. It was very flexible for cross-platform (MSVC and HP) development in C++ and java. I think there are many good ideas in SNiFF+ that could be taken.
- maligree 14y agoHuh. I'm surprised by how many comments here are of the "but we already have XYZ" flavor. You're right. We don't need more. Let's just stop trying to make things better. Wakey, wakey. JetBrains is investing time and money (or is that the same thing, anyway?) to develop a new C++ IDE, a market (though I don't like that word) where nothing new has sprung up in a while. That's __good__ news, what's the matter with you? Can it harm you?
- weitzj 14y agoI am really looking forward to this IDE.What I am missing is a good profiling tools integration. So hopefully they have this in mind.MacOsX gives them a lot of stuff for free with DTrace and clang, so I am excited how this will work on Linux. (does it have DTrace?) Maybe I will be better off using this new IDE with Solaris or FreeBSD.
- akandiah 14y agoI've just downloaded and tried AppCode (which I believe this product will be an extension of). It is written in Java and is rather slow when compared to XCode and Visual Studio 2008. The real memory usage on my system for this product is ~340MB which is rather heavy when dealing with a Hello World project. When dealing with C/C++ or ObjectiveC I expect something that's very light and quick to load - not something that feels this bloated!
- pkolaczk 14y ago340 MB is heavy? What are you coding on? A netbook? BTW: measuring memory usage on a Hello world project is pointless. You can't extrapolate this value to memory usage on large projects. Most of this memory is just code of the IDE and plugins, which does not depend on the project size. I work on some really huge projects in IntelliJ Idea, sometimes 3 or more at the same time and it never needed more than 512 MB of heap, which is pretty impressive result, considering how much it actually does (all the inspections / type checking / background compilation / autocomplete come at some price in memory usage; most of the C++ editors you mentioned don't support them to such extent, or sometimes at all).
- akandiah 14y ago>340 MB is heavy? What are you coding on? A netbook? I take it that you haven't tried coding on Visual Studio? Just because you have the memory, it doesn't mean that you should be using as much memory as you can. > I work on some really huge projects in IntelliJ Idea, sometimes 3 or more at the same time and it never needed more than 512 MB of heap That's because that amount is set as the maximum heap size. If any more memory is required, the disk swapping becomes heavier and heavier. Have a look at your idea.vmoptions file to see what the maximum allowable usage is set for your install. > most of the C++ editors you mentioned don't support them to such extent, or sometimes at all They don't support it for C or C++ due to inherent limitations in the compilation of the language - not because they are unable to do so! Visual Studio does all of what you've mentioned for languages which compile to an IL code (i.e those that rely on the .NET framework) with great ease.
- sqqqrly 14y agoThe Linux CLI is an IDE. I do not need another...
- nd-ebrp 14y agoRecently, JetBrains (the company), their ReSharper product, and their JVM language Kotlin were all deleted from the English language Wikipedia. I can't follow the deletionists' logic. I hope nothing else is going on -- like a competitor trying to remove information about them. Kotlin's removal in particular is strange, since several other JVM languages persists at Wikipedia, some of them much less well known than Kotlin. Still there are: Gosu, Ceylon, Fantom, Ioke, Seph, Groovy, Boo, Nashorn, Frink, Pizza, Pnuts, X10, Xtend, etc. Very strange.
- vorg 14y agoThe JetBrains Kotlin webpage http://confluence.jetbrains.com/display/Kotlin/Welcome http://confluence.jetbrains.com/display/Kotlin/Welcome still shows Kotlin as active. It's certainly better known than any of those other languages you mentioned. In fact, the two greatest innovators on the Groovy language, James Strachan (original creator of Groovy), and Alex Tkachman (original creator of Groovy's static mode), were "encouraged" to move on from Groovy by its present leadership, and are both now contributors to Kotlin.