Open mgravell opened 8 months ago
ah, I understand - editing hugely...
When PlatformTarget is AnyCpu or x86 the process is still 64-bit but duckdb.dll doesn't get copied to the output folder so I think adding a Environment.Is64BitProcess
won't help at runtime.
Suggestion: if the library has <PlatformTarget>x64</PlatformTarget>
, it can't be referenced from an incompatible project - it gives an error message about the mismatch (although that might have problems for linux ARM)
Ah I didn't know that. For Linux Arm, there is only a 64bit native binary so will it be a problem?
I don't know, honestly
On .NET Framework, the default target architecture (unless specified explicitly) is "any", IIRC - and will default to x86; the package doesn't have x86 binaries (only x64), so on 32-bit it fails with
Unable to load DLL 'duckdb'
Maybe add a 64-bit check, and/or explicitly specify the target architecture?
original report:
~I see that there's a
netstandard2.0
package in the nuget, but: it doesn't seem to work; it doesn't work in the tests here, and doesn't work in standalone packages either.~~If it isn't expected to work on netfx, it might be worth simply dropping the netstandard2.0 target - but this might just be a packaging snafu~
~test setup example:~
~with:~
~gives:~