Arduino, C++, Serial USB issue.

A while back I wrote a C++ program that would read data sent out the serial/usb port of the arduino and was working wonderfully up until I moved it over to a different computer. The only real difference that I can think of is that is its has a newer kernel. Ubuntu 9.04 kernel 2.6.31. What happens now is that the program does not seem to be receiving the data. However it will if I first open the Serial Monitoring window of the Arduino Programing Interface then start up my C++ program. This maybe more of a question for a Linux C++ Programming board than an Arduino one but I thought maybe someone here may have ran into a similar problem. As a side note the same C++ code works fine on another computer (MAC Book Pro). So I'm thinking its just something with the Linux OS and how it is now handeling the USB/serial stuff. Anyone have any tips, suggestions or comments? TYIA

I think opening the Serial monitoring window just opens the COM port. (http://code.google.com/p/arduino/source/browse/trunk/app/src/processing/app/Serial.java) Maybe your code doesn't do that properly? Does your code check to see if the COM port is available? If the serial monitoring window is open, the COM port shouldn't be available for use by any other program..