OpenMP program cause the segmentation fault, because OpenMP program need much more stack resourses then normal C apps.
Compiling with OpenMP flag forces all local variables to be stack allocated and not heap allocated
Check the stack size:
ulimit -a # check all resources size
ulimit -s # check only stack size
Change the stack size:
ulimit -s <stack size> # unit is kbytess
Enlarge it until the program can run normally.