Skip to main content
GameDev.net gamedev.net
🔒 Locked

Windows Programmer coding in Linux

Started by Kada Nov 16, 2010 at 2:20 PM 5 replies 2.2k views
Original Post
Kada
Kada
Hi, I am a windows programmer, and I'd like to start doing all of my development on my Ubuntu Linux machine.

I currently code in C++. Where can I go to learn how to set myself up for programming C++ in linux, including tutorials/walkthroughs for compiling my projects.

Also, I am familiar with SDL and OpenGL - both of which are compatible with both Windows and Linux.

Is there another website that shows how to take a project that works in Windows and compile it in Linux (and vice versa?)

Thanks!!
www_linuxcad_com
www_linuxcad_com

Hi man, I can give you free few pointers,

want to start on Linux.

Well first things you got to learn are:

Unix commands, like cp,mv,pwd,su,mkdir,chdir,xterm,ssh etc..

makefile syntax and unix/linux make program,

bash shell,

I am assuming you already know the language you'd like to program in(whatever is it ansi c , c++ or Python), there is also C# clone on Linux it is called "mono".

Boris



Juanxo
Juanxo
also, check CMake. It's a language that let you create projects (makefile, visual studio solutions, etc) , and it's cross-platform, so you create one CMakeLists (a cmake file) and you can create the same project in other systems
lmelior
lmelior
You'll probably want to look at various IDEs as a first step.

It's impossible to say which one you'll like best, but I like to point people towards Wikipedia's comparison:
http://en.wikipedia.org/wiki/Comparison_of_integrated_development_environments#C.2FC.2B.2B

This might also help:
http://stackoverflow.com/questions/24109

Personally I'm a (g)vim user, and the small stuff that I've made has been simple enough to either compile by hand or write a quick Makefile. Other tools like gdb/ddd and valgrind are relatively simple enough that I haven't had the desire to use an IDE. But like I said, that's just from my limited experience and small projects.
Kambiz
Kambiz
We are using QtCreator for a cross platform project and we are using the same project file under Linux and Windows and it works very well. QtCreator is very powerful IDE and the underlying build system qmake is easy to use.
Steve132
Steve132
I think there's actually two (three?) different types of people, and thus there are three different answers to this question.


Person A is basically a windows developer who wants to learn linux for migrating windows software, supporting cross-platform programs, and being able to put "I can write software in linux!" on their resume. This person should learn the following technologies
-CMake
-Code::Blocks AND/OR KDevelop4
-Synaptic (-dev packages and the package management system in general)
-RabbitVCS or similar


Person B has similar motivations as person A, but also wants to learn a little bit how it works under the hood, and to be a unix developer more then %50 of the time. This person should learn (in addition):
-Basic command line skills: running programs, how to use the basic cases of: cd,cp,mv,rm,gcc,g++,make.
-How to use a simple GUI text editor (like gedit) to do development
-How to compile, link, and run a C++ program from the command line only (gcc options, optimization flags, linker settings, etc)
-How to write (and invoke) a Makefile for a simple project.
-(optionally) How to write a simple bash script
-Some of the basic linux api (like pthreads)
-How to build an external project that uses ./configure
-How to use subversion from the command line.

Person C wants to ditch windows forever. They want to be a linux development guru, like the gods of old. This person should learn (in addition):
-How to use an old-school text editor variant (like emacs or vim)
-How to make a project using autotools, AND how to use one other build system or IDE (like eclipse, boost-jam, something else)
-How to write perl or python.
-sed,grep,AND awk.
-How to build one or two large-ish projects from source (like gcc or firefox)
-Other stuff?

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.