How to migrate a system from windows to unix?

The codes in the system are programed in VS2005 with MFC+OpenGL. I have to convert them from windows to unix on worksatation.

How to migrate a system developed in windows VS2005 with MFC+OpenGL to unix workstation?


for very simple unix programs you need at least knowledge about programming with Xlib functions. a small sample program can be found here . it should work for unix, too.

for building complex user interfaces, you should learn to use lesstif or any other widget set. widgets are equivalent to the MFC.

Your MFC will be the toughest thing to port because it inserts itself into the heart of your application. It’s not like low level win32, when you choose MFC you choose the fundamental classes that form the central structures of your application.

At least the structure will be cleanish, in that you will probably have a basic window class that handles all events and rendering. It really depends though because there’s a lot of multi-document views, docking and printing crap in there that you may or may not use.

You need a new framework to implement basic event handling & rendering, and gradually move your stuff over. Depending on how much of MFC you use you’ll probably need a GUI like the motif equivalent suggested (probably a bit low level if you want an easy life) or perhaps Qt, I think Qt may be a better choice if the license is acceptable.

I recommend looking into wxWidgets. It’s very similar to MFC, so porting should be easy.


For OpenGL, it should be no problem at all, since the pure GL code is platform independant already. You may have to change some context creation code, I don’t know how well MFC and wxWidgets handle this…