How to turn gpclibPermit() to TRUE
Asked Answered
M

2

23

When I run gpclibPermit(), I've got the answer FALSE. How can I change it to be TRUE?

Macmillan answered 13/1, 2014 at 14:15 Comment(1)
You need to have the gpclib package installed.Disrate
S
41

I've struggled with the gpclibPermit issue myself. You don't provide a reproducible example, but I am guessing that you are having a sesion like this:

library(maptools)
Checking rgeos availability: FALSE
Note: when rgeos is not available, polygon geometry computations in maptools depend 
    on gpclib, which has a restricted licence. It is disabled by default;
to enable gpclib, type gpclibPermit()
> gpclibPermitStatus()
[1] FALSE
> gpclibPermit()
[1] FALSE
> gpclibPermitStatus()
[1] FALSE

At this point it helps to look at what gpclibPermit and gpclibPermitStatus actually do:

> gpclibPermit
function ()  
{
if ("gpclib" %in% .packages(all.available = TRUE)) 
    assign("gpclib", TRUE, envir = .MAPTOOLS_CACHE)
if (gpclibPermitStatus()) 
    warning("support for gpclib will be withdrawn from maptools at the next major release")
gpclibPermitStatus()
}
<environment: namespace:maptools>
> gpclibPermitStatus
function () 
    get("gpclib", envir = .MAPTOOLS_CACHE)
<environment: namespace:maptools>

That is, you can't give maptools the permission to use gpclib unless you have the package gpclib installed.

install.packages("gpclib")
library(maptools)
Loading required package: sp
Checking rgeos availability: FALSE
Note: when rgeos is not available, polygon geometry computations in maptools depend on gpclib,  which has a restricted licence. It is disabled by default; to enable gpclib, type gpclibPermit()

> gpclibPermit()
[1] TRUE
Warning message:
In gpclibPermit() :
support for gpclib will be withdrawn from maptools at the next major release
> gpclibPermitStatus()
[1] TRUE
Stilbite answered 7/3, 2014 at 21:51 Comment(0)
R
15

I had this issue myself and found it easiest to install rgeos, and ensure that it was attached prior to attaching maptools

library(ggplot2)
library(rgeos)
library(maptools)
Redraft answered 2/2, 2016 at 18:59 Comment(1)
Nicely done solution resolves the gpclibPermit = FALSE messageDev

© 2022 - 2024 — McMap. All rights reserved.