<div dir="ltr"><div class="gmail_extra"><div class="gmail_extra">Thanks everyone for your replies. </div><div class="gmail_extra"><br></div><div class="gmail_extra">Regarding cross compilation, my code contains a sections linking to the broadcom driver and several other files (a whole slew of different vchi modules), which in turns links to many other files. For cross compile to work I would need to find all the required libs and static files (*.a) file upon which they depend to cross compile. And for the static libs link order needs to be preserved (<a href="http://stackoverflow.com/questions/45135/why-does-the-order-in-which-libraries-are-linked-sometimes-cause-errors-in-gcc">http://stackoverflow.com/questions/45135/why-does-the-order-in-which-libraries-are-linked-sometimes-cause-errors-in-gcc</a>) or compilation fails. On the Pi I use a have config program (provided by broadcom) in an ifdef withing my Pi's fpc.cfg. The config program dynamically generates settings for the gnu ld command to produce the correct static lib order.</div><div class="gmail_extra"><br></div><div class="gmail_extra">Rather than trying to solve these types of linking issues (not to mention the generating the correct hard float cross compiler) on my desktop PC, I thought my current workflow was easier a lot easier. </div><div class="gmail_extra"><br></div><div class="gmail_extra">Also, the ssh method for me has the added benefit of allowing me to execute my Pi program from a terminal on my desktop PC, and see the results in that terminal as the Pi brings up a full screen UI on another monitor. See this video taken from another developer -> <a href="https://www.youtube.com/watch?v=GhWs_3_SuW0">https://www.youtube.com/watch?v=GhWs_3_SuW0</a> .The difference my case is that I've written code to control a fullscreen Pi app through the ssh terminal, while on the Pi the terminal is not visible/accessible.</div></div></div>