This example demonstrates a loading multiple dynamic libraries (C++ and Go) with the same interface into the single project.
Additionally, you may want to compare a solution with hashicorp/go-plugin-based and standard plugin-based examples. See gRPC, net/rpc, and plugin links.
cd cppplug && make && cd ..
cd goplug && make && cd ..
make
./multilib -plug1 cppplug/libcppplug.so -plug2 goplug/libgoplug.so
# or
./multilib -plug1 goplug/libgoplug.so -plug2 cppplug/libcppplug.so
At first, build plugins.
go test -benchmem -bench=.