Yes, H.264 should run on multiple threads with GCC, To enabling Codec threading features, Intel C++ Compiler or Microsoft* Visual C++* .Net* 2005 is required to build the sample code. I hope you are using IPP sample code. Please refer below articles to get more information on tuning H.264 for better performance.
Another thing is to check the slice number setting. H.264 encoding sample is threaded at slice level. In the encoding parameters, the slice number should equal to threading numbers.