Developing on Windows and Linux
Adamant Games has two coders. I like to do my work in Windows, and Paul likes to do his work in linux. Our last game, Danger Maze, was coded in Java, and Paul and I both used native version of NetBeans to do our coding, with cvs as our backend. This worked great.
However, for our next game we're considering coding in C++. I would like to use Visual Studio in windows, and Paul is examining various linux-based IDEs (kdevelop is the leading contender). We are swifty coming to the realization that this may cause some serious headaches. For example, if I add a new source file to the Visual Studio project, I'll need to tell Paul so he can manually add the file to his kdevelop project. Ugh.
So, anyone have any suggestions? Does anyone else have a coding team that codes on different platforms?
My first suggestion would be to choose a single platform to develop on. That will save you a lot of hassles.
However, a couple of ideas for cross platform development.
1. Have a separate build system. Use whatever IDE or editor you like to do the coding, but use ANT or one of the other makefile systems to do your builds. ANT is very nice, IMO, I used it for some Java work a couple of years ago and found it much better to use than make.
2. If you want to use your separate IDEs to build and debug your software, write a plugin or a set of macros to keep the build files updated.
3. I would not rely on the other coder to add your new files to the linux build files. If you add the file to VS, then it is your responsibility to add it to the linux makefile, and vice versa.
4. A possibility is to separate responsibilities. If you have a core engine, and a separate set of tools that need to be coded. Then have one programmer do the tools, and the other do the engine. Then port each side over to the appropriate platform when each set is finished.
My situation is similar - I'm the coder (and Mystery Studio's everything else except modeller, 2D artist and musician), I develop exclusively on Linux, but the target market is obviously Windows.
Bluecat's advice is good. However I'd strongly advice against using Visual Studio except as an IDE. Use it as a text editor with syntax highlighting but for nothing more; you should use the same compiler in both platforms, and that probably means GCC (or Intel C++). Your worst headaches aren't forgetting to include files, but compiler incompatibilities (an important point is whether you also want the project to be cross platform. Even if you don't, you want your fellow coder to be able to compile and test his code, right?)
that's a reason why i bought codewarrior, it exists on almost all the OS. I can change without a learning curve.