These functions are referenced via function pointers. After removing the extern "C", the function name is in the namespaces(WelsDec and WelsSVCEnc). The conflicts is solved. The better way is moving the functions into a new file in common directory.