ajolma / geo-gdal-ffi Goto Github PK
View Code? Open in Web Editor NEWPerl FFI to GDAL using FFI::Platypus
License: Other
Perl FFI to GDAL using FFI::Platypus
License: Other
This is just a drive by suggestion peeking at the source code of this module you have a lot of attach calls wrapped in evals that ignore the exception, if thrown:
https://github.com/ajolma/Geo-GDAL-FFI/blob/master/lib/Geo/GDAL/FFI.pm#L448
This is exactly the use case intended by the ignore_not_found attribute:
https://metacpan.org/pod/FFI::Platypus#ignore_not_found1
which would save an eval and make the code a little shorter :)
You can even turn it on and off if you need to:
$ffi->ignore_not_found(1);
$ffi->attach( optional_func => ... );
$ffi->ignore_not_found(0);
$ffi->attach( required_func => ... );
What do you think of adding a method to get at a layer's parent dataset?
It is not part of the GDAL API so far as I can see, but since Geo::GDAL::FFI stores a hash of parent refs it should be possible to access it and return the relevant item.
This would be convenient when passing layers between subs to use for selections, as one does not need to also pass the dataset ref.
Something like this might be sufficient:
sub GetParentDataset {
my ($self) = @_;
return $Geo::GDAL::FFI::parent ($$self);
}
'''root@aler:/sg# cpanm Geo::GDAL::FFI
--> Working on Geo::GDAL::FFI
Fetching http://www.cpan.org/authors/id/A/AJ/AJOLMA/Geo-GDAL-FFI-0.09.tar.gz ... OK
==> Found dependencies: Alien::gdal
--> Working on Alien::gdal
Fetching http://www.cpan.org/authors/id/S/SL/SLAFFAN/Alien-gdal-1.30.tar.gz ... OK
Configuring Alien-gdal-1.30 ... OK
Building and testing Alien-gdal-1.30 ... OK
Successfully installed Alien-gdal-1.30
Configuring Geo-GDAL-FFI-0.09 ... OK
Building and testing Geo-GDAL-FFI-0.09 ... FAIL
'''! Installing Geo::GDAL::FFI failed. See /root/.cpanm/work/1653404421.416310/build.log for details. Retry with --force to force install it.
1 distribution installed
root@aler:/sg# vi /root/.cpanm/work/1653404421.416310/build.log'''
'''# Failed test 'use Geo::GDAL::FFI;'''
'''# at t/00.t line 11.
'''# Tried to use 'Geo::GDAL::FFI'.'''
'''# Error: Can't attach to GDAL methods. Does Alien::gdal provide GDAL dynamic libs? at /root/.cpanm/work/1653404421.416310/Geo-GDAL-FFI-0.09/blib/lib/Geo/GDAL/FFI.pm line 1659.'''
'''# BEGIN failed--compilation aborted at /root/.cpanm/work/1653404421.416310/Geo-GDAL-FFI-0.09/blib/lib/Geo/GDAL/FFI.pm line 1659.'''
'''# Compilation failed in require at t/00.t line 11.'''
'''# BEGIN failed--compilation aborted at t/00.t line 11.'''
Bareword "PopFinderLocation" not allowed while "strict subs" in use at t/00.t line 116.
Bareword "GetVersionInfo" not allowed while "strict subs" in use at t/00.t line 129.
Execution of t/00.t aborted due to compilation errors.
'''# Tests were run but no plan was declared and done_testing() was not seen.'''
'''# Looks like your test exited with 255 just after 1.'''
t/00.t .........
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 1/1 subtests
Can't attach to GDAL methods. Does Alien::gdal provide GDAL dynamic libs? at /root/.cpanm/work/1653404421.416310/Geo-GDAL-FFI-0.09/blib/lib/Geo/GDAL/FFI.pm line 1659.
BEGIN failed--compilation aborted at /root/.cpanm/work/1653404421.416310/Geo-GDAL-FFI-0.09/blib/lib/Geo/GDAL/FFI.pm line 1659.
Compilation failed in require at t/geometry.t line 6.
BEGIN failed--compilation aborted at t/geometry.t line 6.
t/geometry.t ...
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run
Can't attach to GDAL methods. Does Alien::gdal provide GDAL dynamic libs? at /root/.cpanm/work/1653404421.416310/Geo-GDAL-FFI-0.09/blib/lib/Geo/GDAL/FFI.pm line 1659.
BEGIN failed--compilation aborted at /root/.cpanm/work/1653404421.416310/Geo-GDAL-FFI-0.09/blib/lib/Geo/GDAL/FFI.pm line 1659.
Compilation failed in require at t/pdl.t line 6.
BEGIN failed--compilation aborted at t/pdl.t line 6.
t/pdl.t ........
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run
Can't attach to GDAL methods. Does Alien::gdal provide GDAL dynamic libs? at /root/.cpanm/work/1653404421.416310/Geo-GDAL-FFI-0.09/blib/lib/Geo/GDAL/FFI.pm line 1659.
BEGIN failed--compilation aborted at /root/.cpanm/work/1653404421.416310/Geo-GDAL-FFI-0.09/blib/lib/Geo/GDAL/FFI.pm line 1659.
Compilation failed in require at t/sr.t line 6.
BEGIN failed--compilation aborted at t/sr.t line 6.
t/sr.t .........
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run
Can't attach to GDAL methods. Does Alien::gdal provide GDAL dynamic libs? at /root/.cpanm/work/1653404421.416310/Geo-GDAL-FFI-0.09/blib/lib/Geo/GDAL/FFI.pm line 1659.
BEGIN failed--compilation aborted at /root/.cpanm/work/1653404421.416310/Geo-GDAL-FFI-0.09/blib/lib/Geo/GDAL/FFI.pm line 1659.
Compilation failed in require at t/vsistdout.t line 6.
BEGIN failed--compilation aborted at t/vsistdout.t line 6.
t/vsistdout.t ..
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run
t/00.t (Wstat: 65280 Tests: 1 Failed: 1)
Failed test: 1
Non-zero exit status: 255
Parse errors: No plan found in TAP output
t/geometry.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: No plan found in TAP output
t/pdl.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: No plan found in TAP output
t/sr.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: No plan found in TAP output
t/vsistdout.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: No plan found in TAP output
Files=5, Tests=1, 3 wallclock secs ( 0.05 usr 0.01 sys + 2.19 cusr 0.43 csys = 2.68 CPU)
Result: FAIL
Failed 5/5 test programs. 1/1 subtests failed.
make: *** [Makefile:932: test_dynamic] Error 2
-> FAIL Installing Geo::GDAL::FFI failed. See /root/.cpanm/work/1653404421.416310/build.log for details. Retry with --force to force install it.
1 distribution installed'''
The tests all create files locally, often with the same name. This could lead to clashes when tests are run in parallel.
Test::TempDir::Tiny provides a useful way of separating them all, as well as handling cleanup on successful completion.
Had to define,
{
local $FFI::Platypus::keep;
local $FFI::Platypus::TypeParser::ffi_type; }
}
Or I get a warning during loading that it was used only once.
Name "FFI::Platypus::keep" used only once: possible typo at /usr/lib/x86_64-linux-gnu/perl-base/XSLoader.pm
Name "FFI::Platypus::TypeParser::ffi_type" used only once: possible typo at /usr/lib/x86_64-linux-gnu/perl-base/XSLoader.pm
It seems that Geo::GDAL::FFI::Band does not inherit from Geo::GDAL::FFI::Object, but perhaps it should?
It seems it did under the old system.
https://arijolma.org/Geo-GDAL/2.4/classGeo_1_1GDAL_1_1Band.html
Geo::GDAL::FFI::DataSet::CreateLayer calls OSRClone on the SpatialReference arg irrespective of its value. This then crashes when the value is undef or ''.
Geo-GDAL-FFI/lib/Geo/GDAL/FFI/Dataset.pm
Line 115 in 6674734
The check could instead test for the boolean value of the arg.
$sr = Geo::GDAL::FFI::OSRClone(${$args->{SpatialReference}}) if $args->{SpatialReference};
It seems the Intersection, Union and similar methods are not yet implemented for layers.
e.g. https://www.gdal.org/classOGRLayer.html#a5202606175f7e7dcd76c3eb237ac8303
I can use geometry objects to achieve the same results, but it would avoid some looping if it could be applied at the Layer level.
It seems that the FreeBSD port does not include the NITF driver. This is causing failures under Cirrus CI for downstream dependencies.
From https://cirrus-ci.com/task/6207322767228928?logs=install#L10610 :
Driver 'NITF' not found. at /.cpanm/work/1682383834.41121/Geo-GDAL-FFI-0.09/blib/lib/Geo/GDAL/FFI.pm line 1483.
Geo::GDAL::FFI::GetDriver("NITF") called at t/00.t line 141
# Tests were run but no plan was declared and done_testing() was not seen.
# Looks like your test exited with 2 just after 12.
The test should check if NITF is available. This is probably most easily done by using an eval{} in the if block for those tests.
https://github.com/ajolma/Geo-GDAL-FFI/blob/287215b902504234ac297dd55cfa2540f5ccaf15/t/00.t#L143-160
As reported in Debian Bug #1055581:
Your package FTBFS with GDAL 3.8.0 from experimental:
Cannot write feature at /build/libgeo-gdal-ffi-perl-0.1/blib/lib/Geo/GDAL/FFI/Driver.pm line 49. Geo::GDAL::FFI::Driver::Create(Geo::GDAL::FFI::Driver=SCALAR(0x557a150d4c40), "/vsimem/test.tiff", 10) called at t/vsistdout.t line 63 # Tests were run but no plan was declared and done_testing() was not seen. # Looks like your test exited with 2 just after 1. t/vsistdout.t ..
The full buildlog is attached.
Similar to checking for GEOS support.
Alien::gdal seems not to find the libproj dll under strawberry perl, but this is probably a broader issue as other setups might do the same.
I'm getting crashes in a test script that has multiple perl references to a GDAL band object. The failures happen when the G:G::FGI::Band::DESTROY method is called.
The parent hash entry for $$self is deleted in that method, which frees the underlying GDAL object, so it could be a double free situation similar to that addressed under #12 .
How are coordinate transformations done in Geo::GDAL::FFI?
In the old perl bindings it was Geo::OSR::CoordinateTransformation
Something like:
use Geo::GDAL::FFI;
my $srs_from = Geo::GDAL::FFI::SpatialReference->new(EPSG => 4326);
my $srs_to = Geo::GDAL::FFI::SpatialReference->new(EPSG => 3067);
$transf = new Geo::GDAL::FFI::CoordinateTransformation($srs_from, $srs_to);
The type of the function argument(s) is incorrect which is a pointer to a scaler, but requires an array”
< $ffi->attach('GDALInvGeoTransform' => [qw/double[] double[]/] => 'int');
< $ffi->attach('GDALApplyGeoTransform' => [qw/double[] double double double* double*/] => 'void');
$ffi->attach('GDALInvGeoTransform' => [qw/double* double*/] => 'int');
$ffi->attach('GDALApplyGeoTransform' => [qw/double* double double double* double*/] => 'void');
It appears that the SQLite dialect does not handle spatial indexes from a second data set.
It might actually be related to how gdal parses the sql query and injects the ogr objects. Relevant code appears to be at http://github.com/OSGeo/gdal/blob/326820cd6965da05152290d1177d03b75099a093/gdal/ogr/ogrsf_frmts/sqlite/ogrsqliteexecutesql.cpp#L318-L339 and https://github.com/OSGeo/gdal/blob/326820cd6965da05152290d1177d03b75099a093/gdal/ogr/ogrsf_frmts/sqlite/ogrsqliteexecutesql.cpp#L588-L600
The code below works on my machine (returns three features) if $SI_lyr_name
does not include the data set name. It returns no features otherwise. I've tried several variants on quoting and data set name/table separators for the same result.
The code needs Alien::gdal from github so it has spatialite support.
use 5.010;
use Alien::gdal 1.14;
use Geo::GDAL::FFI;
my $driver = 'SQLite';
$driver = 'ESRI Shapefile';
my $out_fname1 = ('/vsimem/fishnet_1');
if ($driver eq 'SQLite') {
$out_fname1 .= '.db';
}
my $ds1
= Geo::GDAL::FFI::GetDriver($driver)
->Create ($out_fname1);
my $layer_name1 = 'Fishnet_Layer_1';
my $fishnet_lyr1
= $ds1->CreateLayer({
Name => $layer_name1,
GeometryType => 'Polygon',
#SpatialReference => undef,
Fields => [{
Name => 'fldx',
Type => 'Integer'
}],
Options => {SPATIAL_INDEX => 'YES'},
});
my $layer_name2 = 'Fishnet_Layer_2';
my $fishnet_lyr2
= $ds1->CreateLayer({
Name => $layer_name2,
GeometryType => 'Polygon',
#SpatialReference => undef,
Fields => [{
Name => 'fldx',
Type => 'Integer'
}],
Options => {SPATIAL_INDEX => 'YES'},
});
my $poly1 = 'POLYGON ((1 0, 1 1, 0 1, 0 0, 1 0))';
my $poly2 = 'POLYGON ((2 0, 2 1, 1 1, 1 0, 2 0))';
my $poly3 = 'POLYGON ((2 1, 2 2, 1 2, 1 1, 2 1))';
# layer 1
my $i = 0;
foreach my $wkt ($poly1, $poly2, $poly3) {
$i++;
my $f = Geo::GDAL::FFI::Feature->new($fishnet_lyr1->GetDefn);
$f->SetGeomField([WKT => $wkt]);
$f->SetField (fldx => $i);
$fishnet_lyr1->CreateFeature($f);
}
# layer 2
$i = 0;
foreach my $wkt ($poly1, $poly2, $poly3) {
$i++;
my $f = Geo::GDAL::FFI::Feature->new($fishnet_lyr2->GetDefn);
$f->SetGeomField([WKT => $wkt]);
$f->SetField (fldx => $i);
$fishnet_lyr2->CreateFeature($f);
}
if ($driver ne 'SQLite') {
$ds1->ExecuteSQL(qq{CREATE SPATIAL INDEX ON "$layer_name1"});
}
# try close and reopen layers
#$fishnet_lyr1 = undef;
#$fishnet_lyr1 = $dataset1->GetLayer;
# try some sql
my $ds1_name = $ds1->GetName;
my $lyr1_name = $fishnet_lyr1->GetName;
my $lyr2_name = $fishnet_lyr2->GetName;
my $SI_lyr_name = $lyr2_name;
# comment out next line to work
$SI_lyr_name = "$ds1_name.$lyr2_name";
my $sql = <<END_SQL
SELECT ST_Intersection(A.geometry, B.geometry) AS geometry, A.*, B.*
FROM "$lyr1_name" as A, "$lyr2_name" AS B
WHERE
A.fldx > 0
AND
A.rowid IN (0, 1, 2)
AND
A.rowid IN (
SELECT rowid FROM SpatialIndex WHERE
f_table_name = '$SI_lyr_name'
AND search_frame = A.geometry
)
AND
ST_Intersects (A.geometry, B.geometry)
AND
(
ST_Contains (A.geometry, B.geometry)
OR
Dimension (ST_Intersection(A.geometry, B.geometry)) = 2
)
END_SQL
;
warn $sql;
$result1 = eval {
$ds1->ExecuteSQL (
$sql,
undef,
'SQLite',
);
};
my $e = $@;
warn $e if $e;
if (!$e && !defined $result1) {
warn 'UNDEF RESULT SET';
my $msg = Geo::GDAL::FFI::error_msg();
warn $msg if $msg;
}
elsif ($result1) {
$result1->ResetReading;
while (my $feat = $result1->GetNextFeature) {
say "R1: " . $feat;
my $geom = $feat->GetGeomField();
say $geom->AsText;
}
}
The error handling code in Geo::GDAL::FFI appears to conflate both warning and fatal level errors.
This can cause action at a distance issues where one operation logs warnings into @Geo::GDAL::FFI::errors
. When a later unrelated method call encounters a fatal error (or checks if @Geo::GDAL::FFI::errors
has any contents) then it throws an exception, listing the warning before the error.
One example of this is the Layer Intersection method, which logs warnings when multipart polygons are loaded into a geopackage that expects simple polygons (related to https://trac.osgeo.org/gdal/ticket/4939 ). If a (much) later function checks for errors then it calls confess to report the Intersection warnings.
Perhaps the error handler should log any warnings to STDERR, and not push them onto @Geo::GDAL::FFI::errors
.
I'd work up a PR, but I'm not sure how to check for error level given the arguments passed to the error handler.
I'm seeing errors at startup on a Mac with GDAL installed via Homebrew, and thus a system install for Alien::gdal where the PKG_CONFIG_PATH does not include the gdal.pc file.
perl -MGeo::GDAL::FFI -e1
Can't find gdal.pc in any of /Users/shawn/perl5/perlbrew/perls/perl-5.36.0/lib/site_perl/5.36.0/darwin-2level/auto/share/dist/Alien-gdal/lib/pkgconfig
use the PKG_CONFIG_PATH environment variable, or
specify extra search paths via 'search_paths'
It seems to come from the code block starting Line 1494 and going to Line 1518.
Geo-GDAL-FFI/lib/Geo/GDAL/FFI.pm
Line 1494 in b804ef3
The code includes a comment that it is for a bug that was fixed in GDAL 2.3.1, so should the whole block be conditional on the GDAL version being <=2.3.1?
e.g.:
use Sort::Versions;
if (versioncmp('2.3.1', Alien::gdal->version) < 0) {
...
}
There are a few recent additions to OGRGeometry that would be useful to have. They will need to be version guarded but that should not be too complex?
MakeValid (since GDAL 3.0)
https://gdal.org/doxygen/classOGRGeometry.html#a700a2d4b1c719e1f65fa3009bfc04f78
Normalize (since GDAL 3.3)
https://gdal.org/doxygen/classOGRGeometry.html#aa518a2cafc2a2394bc3a5196fa7dd017
There are others for which there seem to be bindings but no methods, e.g. Polygonize.
At the moment I am calling Geo::GDAL::FFI::OGR_L_GetFeatureCount($$layer);
. It would be nice to have this as a method.
Geo-GDAL-FFI-0.07:
amd64-freebsd / 5.26.3:
amd64-freebsd / 5.28.0:
x86_64-linux / 5.26.2:
x86_64-linux / 5.28.0:
Working on an unrelated code that uses Perl threads I discovered an issue that seems related to Geo::GDAL::FFI.
A test script that simply works and includes multiple threads and Thread::Queues, which does not use any GDAL function, suddenly starts with the following errors by simply adding a 'use Geo::GDAL::Geo' in the code. I even commented out the DESTROY sub without any luck. It seems not related to FFI::Platypus or other dependencies. I noticed that the BEGIN section of FFI.pm does run a new() . Once commented out, the issue disappears. My hypothesis is that the $instance variable needs a proper protection against threads, which could be done by caller subs eventually, but including new() in the BEGIN sec triggers threads issues.
Scalars leaked: -3
Attempt to free unreferenced scalar: SV 0x556a02d45158, Perl interpreter: 0x556a06e4d540 during global destruction.
Attempt to free unreferenced scalar: SV 0x556a02d44f18, Perl interpreter: 0x556a06e4d540 during global destruction.
Attempt to free unreferenced scalar: SV 0x556a02d450b0, Perl interpreter: 0x556a06e4d540 during global destruction.
Aborted
Hi Ari
there's a minor issue in the code:
./lib/Geo/GDAL/FFI.pm:$ffi->attach('OGR_G_AddGeometry' => [qw/opaque opaque/] => 'int');
./lib/Geo/GDAL/FFI/Geometry.pm: my $e = Geo::GDAL::FFI::OGR_G_OGR_G_AddGeometry($$self, $$g);
Thanks for the good work
I can provide a pull request for this one if you provide some pointers.
Looks like the GetExtent method is processed in Geo::GDAL::FFI::new, but is not part of the Layer class.
https://github.com/ajolma/Geo-GDAL-FFI/blob/master/lib/Geo/GDAL/FFI.pm#L953
Is there some way of generating factory methods for the other methods like this?
Test t/00.t uses a WKT projection string that has changed in proj 6.
Modifying the test to use is
instead of ok
shows the difference is in the AXIS parameters and the precision of the UNIT value.
This might be best fixed with a version guard for the expected value.
# Failed test 'Set/get projection string'
# at t/00.t line 193.
# got: 'GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AXIS["Latitude",NORTH],AXIS["Longitude",EAST],AUTHORITY["EPSG","4326"]]'
# expected: 'GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]]'
Calling OGR_G_GetEnvelope on a Geometry object results in a crash. See code below.
The FFI bindings are set as 'OGR_G_GetEnvelope' => [qw/opaque double[4]/] => 'void');
, but if I am reading the GDAL header files correctly then it needs to be passed an Envelope struct and not an array ref?
The SWIG bindings don't seem to help in this regard as they call $self->GetEnvelope
but I cannot see where it originates from.
use 5.010;
use Geo::GDAL::FFI;
say 'Generating polygon';
my $filt_poly = Geo::GDAL::FFI::Geometry->new(
WKT => 'POLYGON ((4 0, 4 4, 0 4, 0 0, 4 0))',
);
say 'WKT:';
say $filt_poly->ExportToJSON;
# next line purely for debug
my $ptlist = $filt_poly->GetPoints;
say 'Getting envelope';
my $envelope = [0,0,0,0];
Geo::GDAL::FFI::OGR_G_GetEnvelope ($filt_poly, $envelope);
say 'Envelope is ' . join ' ', @$envelope;
say 'got to end';
I've been able to reproduce the test failures in CI with t/00.t
on a local machine. The error is below.
The root cause is that layer objects hold a reference to their parent dataset object. Dataset objects call FlushCache
and then GDALClose
in their DESTROY
method, but if there is a layer object in scope then DESTROY will not be called.
Some background info is in #23 and #24 but this behaviour has been in place for a long time.
It might also be the cause of the issues with one TODO test in t/layer.t
:
Lines 181 to 185 in b3c7b76
I'll update t/00.t
now but this behaviour should ideally be documented if it is not already.
Failing test output:
Open failed for 'test.shp'. Hint: add VERBOSE_ERROR to open_flags. at /Users/runner/work/Geo-GDAL-FFI/Geo-GDAL-FFI/blib/lib/Geo/GDAL/FFI.pm line 1705.
Geo::GDAL::FFI::Open("test.shp") called at t/00.t line 300
# Tests were run but no plan was declared and done_testing() was not seen.
# Looks like your test exited with 255 just after 29.
t/00.t .................
Dubious, test returned 255 (wstat 65280, 0xff00)
All 29 subtests passed
On some of my smoker systems the test suite fails:
# Failed test 'use Geo::GDAL::FFI;'
# at t/00.t line 11.
# Tried to use 'Geo::GDAL::FFI'.
# Error: Can't locate FFI/Platypus/Declare.pm in @INC (you may need to install the FFI::Platypus::Declare module) (@INC contains: /home/cpansand/.cpan/build/2021030717/Geo-GDAL-FFI-0.08-4/blib/lib /home/cpansand/.cpan/build/2021030717/Geo-GDAL-FFI-0.08-4/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/PDL-2.028-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/PDL-2.028-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-Exception-0.43-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-Exception-0.43-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Module-Compile-0.38-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Module-Compile-0.38-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Digest-SHA1-2.13-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Digest-SHA1-2.13-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/List-MoreUtils-0.430-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/List-MoreUtils-0.430-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-LeakTrace-0.17-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-LeakTrace-0.17-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/List-MoreUtils-XS-0.430-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/List-MoreUtils-XS-0.430-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Exporter-Tiny-1.002002-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Exporter-Tiny-1.002002-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Inline-C-0.81-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Inline-C-0.81-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/YAML-LibYAML-0.82-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/YAML-LibYAML-0.82-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Pegex-0.75-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Pegex-0.75-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/XXX-0.35-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/XXX-0.35-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/YAML-PP-0.026-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/YAML-PP-0.026-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Tie-IxHash-1.23-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Tie-IxHash-1.23-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Parse-RecDescent-1.967015-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Parse-RecDescent-1.967015-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/File-ShareDir-Install-0.13-3/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/File-ShareDir-Install-0.13-3/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Inline-0.86-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Inline-0.86-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-Warn-0.36-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-Warn-0.36-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Uplevel-0.2800-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Uplevel-0.2800-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/File-Map-0.67-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/File-Map-0.67-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Exporter-Progressive-0.001013-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Exporter-Progressive-0.001013-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/PerlIO-Layers-0.012-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/PerlIO-Layers-0.012-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Convert-UU-0.5201-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Convert-UU-0.5201-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Astro-FITS-Header-3.08-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Astro-FITS-Header-3.08-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Module-Build-0.4231-5/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Module-Build-0.4231-5/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/ExtUtils-Depends-0.8000-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/ExtUtils-Depends-0.8000-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Devel-CheckLib-1.14-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Devel-CheckLib-1.14-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Mock-Config-0.03-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Mock-Config-0.03-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/JSON-4.03-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/JSON-4.03-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/FFI-Platypus-1.34-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/FFI-Platypus-1.34-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-gdal-1.23-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-gdal-1.23-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-proj-1.15-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-proj-1.15-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Env-ShellWords-0.02-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Env-ShellWords-0.02-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-sqlite-1.06-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-sqlite-1.06-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/IO-Socket-SSL-2.070-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/IO-Socket-SSL-2.070-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Mozilla-CA-20200520-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Mozilla-CA-20200520-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Net-SSLeay-1.90-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Net-SSLeay-1.90-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-patch-0.15-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-patch-0.15-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-libtiff-1.01-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-libtiff-1.01-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-geos-af-1.007-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-geos-af-1.007-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Sort-Versions-1.62-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Sort-Versions-1.62-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/PkgConfig-0.25026-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/PkgConfig-0.25026-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/File-Find-Rule-0.34-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/File-Find-Rule-0.34-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Text-Glob-0.11-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Text-Glob-0.11-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Number-Compare-0.03-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Number-Compare-0.03-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-MSYS-0.14-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-MSYS-0.14-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/ExtUtils-MakeMaker-7.60-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/ExtUtils-MakeMaker-7.60-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-Decode-SourceForge-0.02-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-Decode-SourceForge-0.02-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/URI-5.09-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/URI-5.09-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-Needs-0.002006-4/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-Needs-0.002006-4/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Mojo-DOM58-2.000-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Mojo-DOM58-2.000-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-PkgConfig-PPWrapper-0.01-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-PkgConfig-PPWrapper-0.01-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-Cleanse-BuildDir-0.05-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-Cleanse-BuildDir-0.05-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Data-Dump-1.23-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Data-Dump-1.23-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-2.38-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-2.38-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/File-chdir-0.1010-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/File-chdir-0.1010-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/FFI-CheckLib-0.27-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/FFI-CheckLib-0.27-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test2-Suite-0.000139-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test2-Suite-0.000139-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-Simple-1.302183-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-Simple-1.302183-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Term-Table-0.015-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Term-Table-0.015-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Info-0.002-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Info-0.002-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Scope-Guard-0.21-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Scope-Guard-0.21-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Module-Pluggable-5.2-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Module-Pluggable-5.2-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Importer-0.026-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Importer-0.026-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/PDL-2.028-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/PDL-2.028-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-Exception-0.43-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-Exception-0.43-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Module-Compile-0.38-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Module-Compile-0.38-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Digest-SHA1-2.13-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Digest-SHA1-2.13-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/List-MoreUtils-0.430-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/List-MoreUtils-0.430-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-LeakTrace-0.17-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-LeakTrace-0.17-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/List-MoreUtils-XS-0.430-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/List-MoreUtils-XS-0.430-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Exporter-Tiny-1.002002-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Exporter-Tiny-1.002002-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Inline-C-0.81-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Inline-C-0.81-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/YAML-LibYAML-0.82-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/YAML-LibYAML-0.82-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Pegex-0.75-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Pegex-0.75-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/XXX-0.35-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/XXX-0.35-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/YAML-PP-0.026-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/YAML-PP-0.026-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Tie-IxHash-1.23-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Tie-IxHash-1.23-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Parse-RecDescent-1.967015-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Parse-RecDescent-1.967015-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/File-ShareDir-Install-0.13-3/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/File-ShareDir-Install-0.13-3/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Inline-0.86-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Inline-0.86-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-Warn-0.36-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-Warn-0.36-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Uplevel-0.2800-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Uplevel-0.2800-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/File-Map-0.67-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/File-Map-0.67-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Exporter-Progressive-0.001013-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Exporter-Progressive-0.001013-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/PerlIO-Layers-0.012-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/PerlIO-Layers-0.012-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Convert-UU-0.5201-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Convert-UU-0.5201-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Astro-FITS-Header-3.08-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Astro-FITS-Header-3.08-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Module-Build-0.4231-5/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Module-Build-0.4231-5/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/ExtUtils-Depends-0.8000-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/ExtUtils-Depends-0.8000-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Devel-CheckLib-1.14-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Devel-CheckLib-1.14-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Mock-Config-0.03-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Mock-Config-0.03-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/JSON-4.03-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/JSON-4.03-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/FFI-Platypus-1.34-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/FFI-Platypus-1.34-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-gdal-1.23-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-gdal-1.23-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-proj-1.15-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-proj-1.15-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Env-ShellWords-0.02-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Env-ShellWords-0.02-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-sqlite-1.06-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-sqlite-1.06-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/IO-Socket-SSL-2.070-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/IO-Socket-SSL-2.070-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Mozilla-CA-20200520-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Mozilla-CA-20200520-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Net-SSLeay-1.90-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Net-SSLeay-1.90-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-patch-0.15-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-patch-0.15-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-libtiff-1.01-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-libtiff-1.01-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-geos-af-1.007-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-geos-af-1.007-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Sort-Versions-1.62-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Sort-Versions-1.62-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/PkgConfig-0.25026-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/PkgConfig-0.25026-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/File-Find-Rule-0.34-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/File-Find-Rule-0.34-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Text-Glob-0.11-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Text-Glob-0.11-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Number-Compare-0.03-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Number-Compare-0.03-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-MSYS-0.14-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-MSYS-0.14-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/ExtUtils-MakeMaker-7.60-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/ExtUtils-MakeMaker-7.60-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-Decode-SourceForge-0.02-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-Decode-SourceForge-0.02-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/URI-5.09-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/URI-5.09-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-Needs-0.002006-4/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-Needs-0.002006-4/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Mojo-DOM58-2.000-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Mojo-DOM58-2.000-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-PkgConfig-PPWrapper-0.01-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-PkgConfig-PPWrapper-0.01-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-Cleanse-BuildDir-0.05-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-Cleanse-BuildDir-0.05-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Data-Dump-1.23-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Data-Dump-1.23-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-2.38-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-2.38-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/File-chdir-0.1010-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/File-chdir-0.1010-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/FFI-CheckLib-0.27-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/FFI-CheckLib-0.27-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test2-Suite-0.000139-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test2-Suite-0.000139-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-Simple-1.302183-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-Simple-1.302183-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Term-Table-0.015-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Term-Table-0.015-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Info-0.002-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Info-0.002-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Scope-Guard-0.21-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Scope-Guard-0.21-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Module-Pluggable-5.2-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Module-Pluggable-5.2-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Importer-0.026-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Importer-0.026-1/blib/lib /opt/perl-5.30.0t/lib/site_perl/5.30.0/x86_64-linux-thread-multi /opt/perl-5.30.0t/lib/site_perl/5.30.0 /opt/perl-5.30.0t/lib/5.30.0/x86_64-linux-thread-multi /opt/perl-5.30.0t/lib/5.30.0 .) at /home/cpansand/.cpan/build/2021030717/Geo-GDAL-FFI-0.08-4/blib/lib/Geo/GDAL/FFI/VSI/File.pm line 8, <DATA> line 209.
# BEGIN failed--compilation aborted at /home/cpansand/.cpan/build/2021030717/Geo-GDAL-FFI-0.08-4/blib/lib/Geo/GDAL/FFI/VSI/File.pm line 8, <DATA> line 209.
# Compilation failed in require at /home/cpansand/.cpan/build/2021030717/Geo-GDAL-FFI-0.08-4/blib/lib/Geo/GDAL/FFI.pm line 14, <DATA> line 209.
# BEGIN failed--compilation aborted at /home/cpansand/.cpan/build/2021030717/Geo-GDAL-FFI-0.08-4/blib/lib/Geo/GDAL/FFI.pm line 14, <DATA> line 209.
# Compilation failed in require at t/00.t line 11, <DATA> line 209.
# BEGIN failed--compilation aborted at t/00.t line 11, <DATA> line 209.
Possible unintended interpolation of @Geo::GDAL::FFI::errors in string at t/00.t line 52, <DATA> line 209.
Bareword "PopFinderLocation" not allowed while "strict subs" in use at t/00.t line 116, <DATA> line 209.
Bareword "GetVersionInfo" not allowed while "strict subs" in use at t/00.t line 129, <DATA> line 209.
Execution of t/00.t aborted due to compilation errors.
# Tests were run but no plan was declared and done_testing() was not seen.
# Looks like your test exited with 255 just after 1.
t/00.t .........
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 1/1 subtests
Can't locate FFI/Platypus/Declare.pm in @INC (you may need to install the FFI::Platypus::Declare module) (@INC contains: /home/cpansand/.cpan/build/2021030717/Geo-GDAL-FFI-0.08-4/blib/lib /home/cpansand/.cpan/build/2021030717/Geo-GDAL-FFI-0.08-4/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/PDL-2.028-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/PDL-2.028-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-Exception-0.43-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-Exception-0.43-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Module-Compile-0.38-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Module-Compile-0.38-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Digest-SHA1-2.13-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Digest-SHA1-2.13-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/List-MoreUtils-0.430-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/List-MoreUtils-0.430-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-LeakTrace-0.17-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-LeakTrace-0.17-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/List-MoreUtils-XS-0.430-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/List-MoreUtils-XS-0.430-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Exporter-Tiny-1.002002-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Exporter-Tiny-1.002002-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Inline-C-0.81-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Inline-C-0.81-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/YAML-LibYAML-0.82-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/YAML-LibYAML-0.82-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Pegex-0.75-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Pegex-0.75-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/XXX-0.35-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/XXX-0.35-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/YAML-PP-0.026-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/YAML-PP-0.026-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Tie-IxHash-1.23-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Tie-IxHash-1.23-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Parse-RecDescent-1.967015-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Parse-RecDescent-1.967015-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/File-ShareDir-Install-0.13-3/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/File-ShareDir-Install-0.13-3/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Inline-0.86-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Inline-0.86-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-Warn-0.36-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-Warn-0.36-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Uplevel-0.2800-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Uplevel-0.2800-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/File-Map-0.67-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/File-Map-0.67-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Exporter-Progressive-0.001013-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Exporter-Progressive-0.001013-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/PerlIO-Layers-0.012-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/PerlIO-Layers-0.012-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Convert-UU-0.5201-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Convert-UU-0.5201-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Astro-FITS-Header-3.08-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Astro-FITS-Header-3.08-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Module-Build-0.4231-5/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Module-Build-0.4231-5/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/ExtUtils-Depends-0.8000-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/ExtUtils-Depends-0.8000-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Devel-CheckLib-1.14-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Devel-CheckLib-1.14-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Mock-Config-0.03-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Mock-Config-0.03-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/JSON-4.03-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/JSON-4.03-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/FFI-Platypus-1.34-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/FFI-Platypus-1.34-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-gdal-1.23-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-gdal-1.23-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-proj-1.15-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-proj-1.15-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Env-ShellWords-0.02-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Env-ShellWords-0.02-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-sqlite-1.06-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-sqlite-1.06-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/IO-Socket-SSL-2.070-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/IO-Socket-SSL-2.070-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Mozilla-CA-20200520-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Mozilla-CA-20200520-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Net-SSLeay-1.90-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Net-SSLeay-1.90-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-patch-0.15-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-patch-0.15-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-libtiff-1.01-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-libtiff-1.01-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-geos-af-1.007-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-geos-af-1.007-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Sort-Versions-1.62-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Sort-Versions-1.62-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/PkgConfig-0.25026-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/PkgConfig-0.25026-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/File-Find-Rule-0.34-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/File-Find-Rule-0.34-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Text-Glob-0.11-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Text-Glob-0.11-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Number-Compare-0.03-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Number-Compare-0.03-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-MSYS-0.14-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-MSYS-0.14-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/ExtUtils-MakeMaker-7.60-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/ExtUtils-MakeMaker-7.60-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-Decode-SourceForge-0.02-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-Decode-SourceForge-0.02-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/URI-5.09-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/URI-5.09-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-Needs-0.002006-4/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-Needs-0.002006-4/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Mojo-DOM58-2.000-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Mojo-DOM58-2.000-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-PkgConfig-PPWrapper-0.01-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-PkgConfig-PPWrapper-0.01-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-Cleanse-BuildDir-0.05-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-Cleanse-BuildDir-0.05-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Data-Dump-1.23-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Data-Dump-1.23-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-2.38-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-2.38-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/File-chdir-0.1010-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/File-chdir-0.1010-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/FFI-CheckLib-0.27-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/FFI-CheckLib-0.27-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test2-Suite-0.000139-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test2-Suite-0.000139-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-Simple-1.302183-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-Simple-1.302183-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Term-Table-0.015-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Term-Table-0.015-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Info-0.002-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Info-0.002-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Scope-Guard-0.21-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Scope-Guard-0.21-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Module-Pluggable-5.2-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Module-Pluggable-5.2-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Importer-0.026-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Importer-0.026-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/PDL-2.028-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/PDL-2.028-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-Exception-0.43-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-Exception-0.43-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Module-Compile-0.38-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Module-Compile-0.38-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Digest-SHA1-2.13-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Digest-SHA1-2.13-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/List-MoreUtils-0.430-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/List-MoreUtils-0.430-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-LeakTrace-0.17-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-LeakTrace-0.17-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/List-MoreUtils-XS-0.430-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/List-MoreUtils-XS-0.430-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Exporter-Tiny-1.002002-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Exporter-Tiny-1.002002-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Inline-C-0.81-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Inline-C-0.81-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/YAML-LibYAML-0.82-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/YAML-LibYAML-0.82-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Pegex-0.75-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Pegex-0.75-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/XXX-0.35-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/XXX-0.35-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/YAML-PP-0.026-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/YAML-PP-0.026-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Tie-IxHash-1.23-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Tie-IxHash-1.23-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Parse-RecDescent-1.967015-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Parse-RecDescent-1.967015-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/File-ShareDir-Install-0.13-3/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/File-ShareDir-Install-0.13-3/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Inline-0.86-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Inline-0.86-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-Warn-0.36-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-Warn-0.36-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Uplevel-0.2800-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Uplevel-0.2800-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/File-Map-0.67-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/File-Map-0.67-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Exporter-Progressive-0.001013-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Exporter-Progressive-0.001013-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/PerlIO-Layers-0.012-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/PerlIO-Layers-0.012-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Convert-UU-0.5201-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Convert-UU-0.5201-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Astro-FITS-Header-3.08-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Astro-FITS-Header-3.08-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Module-Build-0.4231-5/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Module-Build-0.4231-5/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/ExtUtils-Depends-0.8000-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/ExtUtils-Depends-0.8000-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Devel-CheckLib-1.14-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Devel-CheckLib-1.14-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Mock-Config-0.03-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Mock-Config-0.03-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/JSON-4.03-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/JSON-4.03-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/FFI-Platypus-1.34-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/FFI-Platypus-1.34-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-gdal-1.23-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-gdal-1.23-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-proj-1.15-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-proj-1.15-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Env-ShellWords-0.02-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Env-ShellWords-0.02-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-sqlite-1.06-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-sqlite-1.06-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/IO-Socket-SSL-2.070-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/IO-Socket-SSL-2.070-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Mozilla-CA-20200520-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Mozilla-CA-20200520-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Net-SSLeay-1.90-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Net-SSLeay-1.90-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-patch-0.15-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-patch-0.15-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-libtiff-1.01-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-libtiff-1.01-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-geos-af-1.007-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-geos-af-1.007-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Sort-Versions-1.62-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Sort-Versions-1.62-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/PkgConfig-0.25026-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/PkgConfig-0.25026-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/File-Find-Rule-0.34-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/File-Find-Rule-0.34-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Text-Glob-0.11-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Text-Glob-0.11-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Number-Compare-0.03-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Number-Compare-0.03-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-MSYS-0.14-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-MSYS-0.14-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/ExtUtils-MakeMaker-7.60-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/ExtUtils-MakeMaker-7.60-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-Decode-SourceForge-0.02-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-Decode-SourceForge-0.02-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/URI-5.09-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/URI-5.09-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-Needs-0.002006-4/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-Needs-0.002006-4/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Mojo-DOM58-2.000-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Mojo-DOM58-2.000-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-PkgConfig-PPWrapper-0.01-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-PkgConfig-PPWrapper-0.01-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-Cleanse-BuildDir-0.05-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-Plugin-Cleanse-BuildDir-0.05-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Data-Dump-1.23-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Data-Dump-1.23-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-2.38-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Alien-Build-2.38-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/File-chdir-0.1010-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/File-chdir-0.1010-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/FFI-CheckLib-0.27-0/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/FFI-CheckLib-0.27-0/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test2-Suite-0.000139-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test2-Suite-0.000139-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Test-Simple-1.302183-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Test-Simple-1.302183-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Term-Table-0.015-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Term-Table-0.015-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Info-0.002-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Sub-Info-0.002-1/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Scope-Guard-0.21-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Scope-Guard-0.21-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Module-Pluggable-5.2-2/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Module-Pluggable-5.2-2/blib/lib /home/cpansand/.local/share/.cpan/build/2021030717/Importer-0.026-1/blib/arch /home/cpansand/.local/share/.cpan/build/2021030717/Importer-0.026-1/blib/lib /opt/perl-5.30.0t/lib/site_perl/5.30.0/x86_64-linux-thread-multi /opt/perl-5.30.0t/lib/site_perl/5.30.0 /opt/perl-5.30.0t/lib/5.30.0/x86_64-linux-thread-multi /opt/perl-5.30.0t/lib/5.30.0 .) at /home/cpansand/.cpan/build/2021030717/Geo-GDAL-FFI-0.08-4/blib/lib/Geo/GDAL/FFI/VSI/File.pm line 8, <DATA> line 209.
BEGIN failed--compilation aborted at /home/cpansand/.cpan/build/2021030717/Geo-GDAL-FFI-0.08-4/blib/lib/Geo/GDAL/FFI/VSI/File.pm line 8, <DATA> line 209.
Compilation failed in require at /home/cpansand/.cpan/build/2021030717/Geo-GDAL-FFI-0.08-4/blib/lib/Geo/GDAL/FFI.pm line 14, <DATA> line 209.
BEGIN failed--compilation aborted at /home/cpansand/.cpan/build/2021030717/Geo-GDAL-FFI-0.08-4/blib/lib/Geo/GDAL/FFI.pm line 14, <DATA> line 209.
Compilation failed in require at t/geometry.t line 6, <DATA> line 209.
BEGIN failed--compilation aborted at t/geometry.t line 6, <DATA> line 209.
t/geometry.t ...
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run
... etc ...
This is probably a documentation issue.
The code below results in a slew of subroutine redefinition warnings. If I change the my
declaration to state
then they disappear.
If the Geo::GDAL::FFI object is a package singleton then it should probably be clarified in the docs.
use 5.010;
use Geo::GDAL::FFI;
for my $i (0,1) {
my $g = Geo::GDAL::FFI->new;
}
It seems that Geo::GDAL::Dataset::ExecuteSQL does not work with vsi layers, at least under Windows. The code below fails under Windows. I have not tested under Linux or Mac.
This issue might be broader than the perl bindings, but I have not been able to get a working python install on my Windows machine.
use 5.010;
use Geo::GDAL::FFI;
my $driver = 'SQLite'; # needs Alien::gdal 1.14, not yet on cpan
$driver = 'ESRI Shapefile';
my $out_fname1 = ('/vsimem/fishnet_1');
my $layer_name1 = 'Fishnet_Layer_1';
my $dataset1
= Geo::GDAL::FFI::GetDriver($driver)
->Create ($out_fname1);
my $fishnet_lyr1
= $dataset1->CreateLayer({
Name => $layer_name1,
GeometryType => 'Polygon',
#SpatialReference => undef,
Options => {SPATIAL_INDEX => 'YES'},
});
my $poly1 = 'POLYGON ((1 0, 1 1, 0 1, 0 0, 1 0))';
my $poly2 = 'POLYGON ((2 0, 2 1, 1 1, 1 0, 2 0))';
my $poly3 = 'POLYGON ((2 1, 2 2, 1 2, 1 1, 2 1))';
# layer 1
foreach my $wkt ($poly1, $poly2, $poly3) {
my $f = Geo::GDAL::FFI::Feature->new($fishnet_lyr1->GetDefn);
$f->SetGeomField([WKT => $wkt]);
$fishnet_lyr1->CreateFeature($f);
#say 'WKT1: ' . $f->GetGeomField->AsText;
}
if ($driver ne 'SQLite') {
$dataset1->ExecuteSQL(qq{CREATE SPATIAL INDEX ON "$layer_name1"});
}
# try close and reopen layers
#$fishnet_lyr1 = undef;
#$fishnet_lyr1 = $dataset1->GetLayer;
# try some sql
my $ds1 = $fishnet_lyr1->GetParentDataset;
my $ds1_name = $ds1->GetName;
my $lyr1_name = $fishnet_lyr1->GetName;
$result1 = eval {
$ds1->ExecuteSQL (
qq{SELECT * FROM $lyr1_name},
#undef,
#'SQLite',
);
};
my $e = $@;
warn $e if $e;
if (!($e && $result1)) {
warn 'UNDEF RESULT SET';
my $msg = Geo::GDAL::FFI::error_msg();
warn $msg if $msg;
}
else {
$result1->ResetReading;
while (my $feat = $result1->GetNextFeature) {
say "R1: " . $feat;
my $geom = $feat->GetGeomField();
say $geom->AsText;
}
}
My changes to ExecuteSQL need more work and tests. Possibly it is related to the parent ref handling.
I get failures in Biodiverse when calling it, but no failures when I revert to my overridden methods which do not use the parent ref subs.
https://ci.appveyor.com/project/shawnlaffan/biodiverse/builds/20974596
https://travis-ci.org/shawnlaffan/biodiverse/builds/467310945
FFI::Platypus::Declare has recently been released as a stand-alone distribution, so Geo::GDAL::FFI now fails to build on a clean system.
https://metacpan.org/release/FFI-Platypus-Declare
It is also now discouraged, but that warrants its own issue.
I can provide a PR, but it should just be a one line change.
The first code block produces redefined warnings. The second does not.
There seems to be something in one of the dependencies that is triggering it, but I have not been able to track it down yet.
use 5.010;
use strict;
use warnings;
use JSON::MaybeXS;
use Geo::GDAL::FFI;
Subroutine JSON::PP::Boolean::(++ redefined at C:/berrybrew/5.26.1_64_PDL/perl/lib/overload.pm line 48.
Subroutine JSON::PP::Boolean::(0+ redefined at C:/berrybrew/5.26.1_64_PDL/perl/lib/overload.pm line 48.
Subroutine JSON::PP::Boolean::(-- redefined at C:/berrybrew/5.26.1_64_PDL/perl/lib/overload.pm line 48.
use 5.010;
use strict;
use warnings;
use Geo::GDAL::FFI;
use JSON::MaybeXS;
I'm porting my code across to Geo::GDAL::FFI from Geo::GDAL, and cannot find a method in the code for Geo::GDAL::Band::CategoryNames.
There seems to be something in the code, but I am unsure which object type it applies to.
Geo-GDAL-FFI/lib/Geo/GDAL/FFI.pm
Lines 505 to 506 in 2430078
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.