From a quick glance through the errors it looks like one of the underlying classes (DW1000) also defined as being static and so can only be called from within a function that is static.
Which either means you need to work out which functions can be static and which can’t and go from there or you need to remove the static from the DW1000Class and repeat.
You are now on the second half of the first step, this isn’t even the hard bit.
Doing this and getting it to work this requires a knowledge of how the libraries work, what the keyword static means, and general c/c++ knowledge and experience.
Which brings us back to the first line of my first answer, it’s not easy. In terms of time/effort unless your time has zero cost associated with it or you are planning on building hundreds of systems it’s probably cheaper and easier to use one processor per part.
As for your question as to whether there is other code already existing that you could use to do this - positioning accuracy when anchors are all in the same place is terrible so this isn’t something you would normally want to do. That combined with the difficulty of hitting tight timing requirements on multiple devices simultaneously if they share a processor means that there are very few times when someone would ever want to run multiple devices off a single processor. Which is why just about all the code assumes only a single device.
Several years ago there was a DW1000 based phase difference of arrival dev kit offered. That ran two DW1000 devices off a single processor, the second one was slaved to the first rather than running as an independent device but it’s the only system I’m aware of that even came close to running two radios from a single processor. The official code for it was gone from the decawave site long before qorvo moved everything over to their domain but this is the internet, there is probably a copy floating around somewhere.