Problem with Appended/Linked objects: editability

I need to append/link/proxy about 400 objects into a scene, which works nicely. After linking and making each one a proxy, I can transform them in the scene seperately.
BUT I then need to perform a boolean difference between one object (which has already been in the scene) and all those 400. Normally, I can just “join” those 400 geometries and then boolean/difference them as a single object.
But now that I linked them into the scene from another file, when I want to join them, I get an error “Can’t edit external libdata”.

How could I do this? (boolean/difference each one seperately is not an option, it takes hours and leeds most certainly to a crash. Differencing them all as 1 single joined object normally works very nicely).

Many thanks for your help!

These kinds of grandiose boolean operations may not be possible so start to think of a work around. Perhaps you can construct some kind of shapekey or shapekeys that mimic the effect of the boolean upon the target object. Then synchronize when you show those shape keys based upon that “one” object that is affecting them all.

Also consider reducing the poly count of your objects. If Blender can not perform a boolean operation on two objects how can it possibly do that on 400? Get one boolean operation to work an move on from there.

Your not using SubDivision modifiers are you? If so get rid of them.