Yes, you can specify a relative/absolute path in DllImport if you'd like. Generally it is easier to get consistent behavior if you either: 1) rely on the user to install the binary somewhere and place it on the path, or 2) deploy the native binary along with your application. We generally do 1) in .NET Core, or we rely on components of Windows, for example.
That won't work with Nuance CSDK. It will install the Linux binary to /usr/local/nuance-csdk/bin, /usr/local/nuance-csdk/lib, etc..