I’ve been a Visual C++ user for quite some time now, and in the following weeks, I will be joining a (C++) Linux-only project. It should be noted that I have absolutely zero development experience on Linux.
Currently, Visual C++ 9 along with the Visual Assist X add-in make Windows-based development rather enjoyable. Having looked at various C++ IDEs on Linux left me a little disappointed with the coding experience, however.
I’d love to be able to use my current tool set (see above) for Linux development, so I have a couple of questions:
- Can the VS editor convert between CR+LF <-> LF in a reliable manner?
- Is it possible to set up a system where if I press “Build” in the IDE all of my work gets transferred to another box (e.g., a virtual machine) running Linux that compiles my project?
- How would debugging work? Is it possible to remote-debug an application running in Linux via something like
gdb? If so, would the “advanced” features of MS’s debugger (e.g., tracepoints, break-if-cond, etc.) be lost?
Is this even a sane thing to think of? Does anyone use a Windows environment for Linux development? If not, I guess I should just suck it up and move to a Linux environment all together…?
Any input is appreciated, as I feel a little lost right now.
I’ve done windows/linux/freebsd cross-platform development with Windows as my primary OS… so it is possible.
Use VS as editor.
Access Linux Dev node via SSH with
putty.
Use revision control system
(subversion/git/bazaar/mercurial/cvs)
to check changes into repo & check
changes out on Linux.
Use a multi-platform build process. I
use SCons. It is python based
and works beautifully – though it is
a little slow with the default
settings.
Launch build process from shell using
putty.
Use additional shells as needed to
attach gdb & debug.
Now to answer your questions:
Yes. There is a VS setting to say use unix line endings. Many revision control systems can also be configured to correct this for you.
Maybe, but that’s not how I did it.
Yes, you can remotely debug using GDB. GDB has many (all?) the features available with VS’s debuger but you have to learn the GDB commands. I don’t know of a way to use VS’s debugger to debug processes compiled with GCC – though this is a frequent request.