I should think that you do not need to change "gcc" to "gcc -x none". As far as I know the default for the gcc driver is -x none. g++ is the one that changes the defaults. Also, I believe your other issues are because the language level defaults are probably also changed to incompatible settings when using the g++ command to compile c code because using g++ as the driver implies that you want C++ compatibility, not standard C. You really should only need to change the linker steps to include the additional C++ libraries (and of course to use your new .cpp source file).