/home/casey/.nuget/packages/gdal.core/1.0.0/runtimes/linux-x64/native
<configuration> |
<packageSources> |
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" /> |
<add key="landis-ii-v7" value="https://www.myget.org/F/landis-ii-v7/api/v3/index.json" /> |
</packageSources> |
<?xml version="1.0" encoding="utf-8"?> This is problematic because there is a package with the same ID and Version in both of these repositories. I am not sure if the push of Landis.RasterIO.Gdal to Nuget.org was intentional but it seems to be causing issues in the build (on Linux anyways). This is because the package on Nuget.org depends on Gdal.Net and Gdal.Net.Core - neither of which are available for .NetCore2.0 or include support files for a Linux system architecture. The package on Myget.org, on the other hand, depends on Gdal.Core Version 1.0.0 - this is compatible with Linux. So when the package on MyGet.org is used, the software builds and works as intended. At first I couldn't work out why the install worked on some linux machines and not other others, despite having identical system builds. It turns out that the version of Nuget that is included in Dotnet SDK for Linux does not allow prioritisation of package sources with duplicate packages (I don't think any new versions do). Rather, it simply uses the package that is downloaded first - dependent on the server loads at a given time. Thus, there can be some unpredictable results... So...perhaps the simplest solution is to change the Landis.RasterIO.Gdal version number on NuGet to 2.0.1 (as it is newer). This will allow the correct package to be sourced each time and the instructions for a linux build of LANDIS-II version 7 on GitHub to be executed without error. Unless, of course, there is a way to specify the source with each package - but I can't find a way to do this. Another solution may be to duplicate and rename the package on MyGet.org to identify its use for Linux (e.g. Landis.RasterIO.Gdal.Linux). Just throwing out ideas here. Please let me know and thanks again for all of your help and great work developing the software. Cheers, Casey |