Packaging process cant access third party plugin library file

I am using a third party plugin that relies on some external library file. The plugin is pacakged as .uplugin and located in the Plugins directory in my project folder. In the editor, when simulating gameplay, the plugin works.

However, when I package my project, the process fails as UATHelper cannot access a file related to that plugin.

UATHelper: Packaging (Windows): ERROR: System.IO.IOException: the system cannot access the file <myProjectDir>\Saved\StagedBuilds\WindowsClient\<myProjectName>\Content\Plugins\<myProjectName>\Source\ThirdParty\<someMoreDirs>\bin\<libfile>.so

The file in question exists in the given directory. How to proceed?

Why is it trying to load a .so file for a Windows package? Windows plugins are .dll files.

Hey,
I accidently marked your answer as the solution. In my understanding, .so files are dynamically linked library files. There also is a .dll file corresponding to the library content of the plugin.

I am not conviced the .so file itself is the problem as I havent touched this plugin in months and the packaging problem only occured very recently. Hence, I assume it must be related to some editor settings or misconfiguration that I did unknowingly change.

For loadable shared libraries:

.so files are ELF format, as used mainly by Linux and Android.
.dll files are PE format, as used exclusively by Windows.
.dylib files are Mach-O format, as used by macOS (and I think iOS).

If you’re trying to package for Windows, and it tries to load a .so file, then it’s trying to load the wrong file. It may be that some configuration change or update has configured it to try the wrong thing – that’s where I would look next in trying to debug the problem.

Could it be worthwile to try removing the .so file in question entirely? The packaging process targets Windows and the .so file is copied over with the plugin into the staging directory - no file, no access error?

You can try, but my guess is that won’t do it. It’s something about the configuration for packaging is my guess (assuming the permissions on the file are okay, and the file isn’t already open in some other process, and such…)

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.