Exactly what do you need? You are speaking of needing DLLs but then you mix that in with mentioning Linux and MacOS. Concepts similar exists on both operating systems, but a DLL won't work on anything but Windows. You can probably cross-compile using gcc but I'm lacking experience here. Are you certain you really need to compile it yourself? So far I have always been able to find a precompiled version of OpenCV for all platforms I needed it on.
Edit: Also, a couple of general pointers. Whenever possible use the same operating system to create a dynamic link library. Unless you know better, always use the exact same compiler and build settings you are using for the main program for the dynamic library. There is no magic bullet on how to build a library. Any decent one will come with build instructions on how to build the library on the different platforms. It might be as simple as going into the right directory and calling 'make' or it might requires hours of configuration and dependency hunting.
The very point of a forum is being a free resource for everyone. Answering questions in private defeats the whole purpose and is very selfish.
That aside, you just have to properly process the mouse messages to react on button presses. Since you do not offer any information on what you use to create and manage the window (pure Windows API? SDL? GLUT? GLFW? SFML? ...) it is impossible to be less general here.
There are plenty of ways to get text in there. A common approach would be using freetype to render text into a bitmap, use that bitmap as a texture and render that texture with OpenGL.
I have three suggestions: 1) Stick to one engine version. 2) Do not modify the actual engine code. 3) Instead of updating between releases, regularly pull in changes in the engine's repository. Keeping modifications alive will generally be easier with a sequence of small incremental merges than with monolithic changes between releases.
That said, I would strongly prefer (2), followed by (1) if it absolutely has to be done. My personal opinion is that if you have to do such modifications to the 3rd party engine you either picked the wrong engine to begin with or an engine that was not sufficiently along in its development to use it in an actual product.