Is it possible to use .dll on a go application on linux?

I’m planning on making a biometric application on a Linux machine. The biometric scanner sdk that I am using has a dll file included(zkemkeeper.dll). I have had used the dll file on windows(not using golang) and this will be the first time that I’ll be developing on Linux.
I wanted to know if what I am planning to do will work before I start on developing the application. I would greatly appreciate it if anyone will kindly give me some answers or recommendations.

The short simple answer is “no.” The longer answer is “it depends.”

We need a lot more information to give you a good answer. You’re probably going to need a “Windows-like” environment for this to work. What that means depends completely on what that DLL does. Based on your description of using a biometric scanner, it sounds like this might be a device driver in which case you’ll almost certainly need to find a Windows device to run the driver from. If you wanted to not use Windows, you might want to reverse engineer the system calls that the DLL makes to windows to port the driver to Linux or find or implement a wrapper that exposes Linux syatem calls and APIs as Windows system calls and/or APIs. I’m not sure if such a project exists.

Can you check if there’s a Linux version of the DLL (usually called a shared library, shared object, or .so file on *nix systems)?

3 Likes

Thank you for the reply. The dll is used to communicate to the scanner/terminal. It confuses me that they can’t give an sdk for linux since the scanner/terminal I have runs on linux.

I might actually need to reverse engineer. Though It’ll be my first time doing reverse engineering which will take me some time haha.
Thank you so much!