Nenkai / FF16Tools

Tools for Final Fantasy XVI / 16.
MIT License
39 stars 4 forks source link

Linux support #5

Closed Xeeynamo closed 2 months ago

Xeeynamo commented 2 months ago

I cannot build this from the source. And doing dotnet ./FF16PackLib.dll will result to a runtime error.

Please distribute a Linux build :crossed_fingers: I hope the Vortice.Windows dependency will play nicely.

Nenkai commented 2 months ago

It won't sadly, at least at the moment.

Other libraries don't quite work well in other ways so far. GDeflateNet was a likely candidate, but despite a fix by its author it still appears to be broken at the moment and won't load dll files on windows (on top of requiring .NET 9.0 and having no NuGet package).

ThomasAunvik commented 2 months ago

@Xeeynamo I've tested it on Linux, and there are some problems running it natively.

Vortice.Windows uses the DirectStorage dll's to get the encoder/decoder, and adding dstorage.dll and dstoragecore.dll won't work on linux natively.

So, basically what i had to do is to run wine dotnet ./FF16PackLib.dll for it to work (with the dll's added). and install dotnet core 8 on wine. winetricks --self-update winetricks dotnetdesktop8

Xeeynamo commented 2 months ago

I confirm I was able to extract everything by using winetricks as you suggested and by running the CLI tool with wine ./FF16Tools.CLI.exe :+1: