Is libGMT 6.0.x or 6.1.1 thread-safe?

I’m trying to use BOOST threads to generate a set of independent plots in parallel using libGMT 6.0.x (or 6.1.1) in my application. Unfortunately the app keeps falling over with segfaults when I do so. A non-threaded version works fine, it’s just slow to step through all the sets of plots.

So, is libGMT thread-safe? If so, how do I need to set it up to run properly in a threaded environment?
Is it almost thread-safe? If so, what do I need to slap locks around to keep from stepping on itself?

If it’s not thread-safe, I’ll have to figure out how to speed things up some other way.

libgmt is not thread-safe but it will depend a bit on what you do if you can get away with things. Do you create separate sessions?

Well, if you make your code generate different API structs for each thread AND make the plotting modules generate different PPID (no idea right now on how to do that), see this recent post and link, then maybe you can generate parallel jobs.
You may also have a look at the movie.c to see what it does to run plotting jobs in parallel.