Giter Site home page Giter Site logo

juliapolyhedra / cddlib.jl Goto Github PK

View Code? Open in Web Editor NEW
36.0 6.0 12.0 321 KB

cdd wrapper module for Julia. cdd is a library for polyhedra manipulation such as double description and Fourier-Motzkin elimination

License: Other

Julia 100.00%
polyhedral-computations cdd polyhedra

cddlib.jl's Introduction

CDDLib

CDDLib.jl is a wrapper for cddlib.

CDDLib.jl can be used with C API of cddlib, the higher level interface of Polyhedra.jl, or as a linear programming solver with JuMP or MathOptInterface.

Problem description

As written in the README of cddlib:

The C-library cddlib is a C implementation of the Double Description Method of Motzkin et al. for generating all vertices (that is, extreme points) and extreme rays of a general convex polyhedron in R^d given by a system of linear inequalities:

P = { x=(x1, ..., xd)^T :  b - A  x  >= 0 }

where A is a given m x d real matrix, b is a given m-vector and 0 is the m-vector of all zeros.

The program can be used for the reverse operation (that is, convex hull computation). This means that one can move back and forth between an inequality representation and a generator (that is, vertex and ray) representation of a polyhedron with cdd. Also, cdd can solve a linear programming problem, that is, a problem of maximizing and minimizing a linear function over P.

License

CDDLib.jl is licensed under the GPL v2 license.

The underlying solver, cddlib/cddlib is also licensed under the GPL v2 license.

Installation

Install CDDLib.jl using the Julia package manager:

import Pkg
Pkg.add("CDDLib")

Building the package will download binaries of cddlib that are provided by cddlib_jll.jl.

Use with JuMP

Use CDDLib.Optimizer{Float64} to use CDDLib.jl with JuMP:

using JuMP, CDDLib
model = Model(CDDLib.Optimizer{Float64})

When using CDDLib.jl with MathOptInterface, you can pass a different number type:

using MathOptInterface, CDDLib
model = CDDLib.Optimizer{Rational{BigInt}}()

Debugging

CDDLib.jl uses two global Boolean variables to enable debugging outputs: debug and log.

You can query the value of debug and log with get_debug and get_log, and set their values with set_debug and set_log.

cddlib.jl's People

Contributors

blegat avatar femtocleaner[bot] avatar frapac avatar juliatagbot avatar matbesancon avatar mforets avatar odow avatar oyamad avatar rdeits avatar saschatimme avatar sebastianguadalupe avatar staticfloat avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

cddlib.jl's Issues

Installation

Hello! I have not been able to successfully install this. I'm on Windows 10, using Julia-0.4.5 through Juno (the Atom package), all freshly installed. I used:

Pkg.add("CDDLib")

The result was:

INFO: Cloning cache of CDDLib from git://github.com/blegat/CDDLib.jl.git
INFO: Cloning cache of MathProgBase from git://github.com/JuliaOpt/MathProgBase.jl.git
INFO: Installing CDDLib v0.0.1
INFO: Installing MathProgBase v0.4.3
INFO: Building CDDLib
===============================[ ERROR: CDDLib ]================================

LoadError: None of the selected providers can install dependency libcddgmp.
Use BinDeps.debug(package_name) to see available providers

while loading C:\Users\abram\.julia\v0.4\CDDLib\deps\build.jl, in expression starting on line 60

================================================================================

================================[ BUILD ERRORS ]================================

WARNING: CDDLib had build errors.

 - packages with build errors remain installed in C:\Users\abram\.julia\v0.4
 - build the package(s) and all dependencies with \`Pkg.build("CDDLib")\`
 - build a single package by running its \`deps/build.jl\` script

================================================================================

Then, trying Pkg.build("CDDLib") for good measure:

INFO: Building CDDLib
===============================[ ERROR: CDDLib ]================================

LoadError: None of the selected providers can install dependency libcddgmp.
Use BinDeps.debug(package_name) to see available providers

while loading C:\Users\abram\.julia\v0.4\CDDLib\deps\build.jl, in expression starting on line 60

================================================================================

================================[ BUILD ERRORS ]================================

WARNING: CDDLib had build errors.

 - packages with build errors remain installed in C:\Users\abram\.julia\v0.4
 - build the package(s) and all dependencies with \`Pkg.build("CDDLib")\`
 - build a single package by running its \`deps/build.jl\` script

================================================================================
INFO: Nothing to be done

Converting between representation of high dimensional polytopes

In my use case (related to verification of neural networks) I am working with high dimensional polytopes/polyhedra, and have found that these polytopes fail to convert from h-rep to v-rep.

The particular case I run into this on is 750+ dimensional, corresponding to an image, but it can be seen in much smaller cases also, starting in the mid-20s.

I am using LazySets to represent the polytope, since that is what I am using in my application. I make a random example by randomly assigning constraints until I hit a valid set. Obviously this is silly, but it works:

using LazySets, Polyhedra, CDDLib 

function valid_hrep(nconst, dim)
    H = HPolyhedron(rand(nconst, dim) .- 0.5, rand(nconst) .- 0.5)
    while isempty(H) || !isbounded(H)
        H = HPolyhedron(rand(nconst, dim) .- 0.5, rand(nconst) .- 0.5)
    end 
    return HPolytope(H)
end

20-D tends to work every time:

julia> H = valid_hrep(30, 20);

julia> @time tovrep(H, backend = CDDLib.Library());
  0.994134 seconds (33.76 k allocations: 3.300 MiB)

25-D is hit or miss. In this case, I interrupt after a few minutes. In other cases, I have let it run for much longer to ensure that it indeed never finishes.

julia> H = valid_hrep(40, 25);

julia> @time tovrep(H, backend = CDDLib.Library()); #...
^C^C^C^C^CWARNING: Force throwing a SIGINT
ERROR: InterruptException:
Stacktrace:
 [1] macro expansion at /Users/tomer/.julia/packages/CDDLib/bKo5p/src/CDDLib.jl:24 [inlined]
 [2] dd_matrix2poly at /Users/tomer/.julia/packages/CDDLib/bKo5p/src/polyhedra.jl:52 [inlined]
 [3] CDDPolyhedra{Float64,Float64}(::CDDInequalityMatrix{Float64,Float64}) at /Users/tomer/.julia/packages/CDDLib/bKo5p/src/polyhedra.jl:68
 [4] CDDPolyhedra(::CDDInequalityMatrix{Float64,Float64}) at /Users/tomer/.julia/packages/CDDLib/bKo5p/src/polyhedra.jl:83
 [5] getpoly(::CDDLib.Polyhedron{Float64}, ::Bool) at /Users/tomer/.julia/packages/CDDLib/bKo5p/src/polyhedron.jl:60
 [6] getpoly at /Users/tomer/.julia/packages/CDDLib/bKo5p/src/polyhedron.jl:56 [inlined]
 [7] getext(::CDDLib.Polyhedron{Float64}) at /Users/tomer/.julia/packages/CDDLib/bKo5p/src/polyhedron.jl:51
 [8] vrep at /Users/tomer/.julia/packages/CDDLib/bKo5p/src/polyhedron.jl:156 [inlined]
 [9] pointtype(::CDDLib.Polyhedron{Float64}) at /Users/tomer/.julia/packages/Polyhedra/T1zRo/src/iterators.jl:175
...

Note that tovrep is a LazySets function that calls Polyhedra.polyhedron, which in turn calls the specified library.

I was wondering if this is a bug, or some inherent limitation to scaling the algorithms, but having just tested it with LRSLib, it appears that LRS succeeds in this case.

julia> @time tovrep(H, backend = LRSLib.Library());
 16.479215 seconds (17.26 M allocations: 3.084 GiB, 8.54% gc time)

MathOptInterface says that Interval and GreaterThan constraints aren't supported by CDDLib

import MathOptInterface, CDDLib
const MOI = MathOptInterface

function powers(degree::Int, x::F) where {F <: Real}
        local ret = F[1 for _ in 0:degree]
        for i in 1:degree
                ret[i + 1] = x * ret[i]
        end
        ret
end

sets(pts::Vector{Tuple{F, F}}) where {F <: Real} =
        map(p -> MOI.GreaterThan(p[2]), pts)

saf(cs::Vector{F}, vars::T) where {F <: Real, T <: Any} =
        MOI.ScalarAffineFunction(MOI.ScalarAffineTerm.(cs, vars), zero(F))

safs(degree::Int, pts::Vector{Tuple{F, F}}, vars::T) where {F <: Real, T <: Any} =
        map(p -> saf(powers(degree, p[1]), vars), pts)

constrain(lp::Opt, degree::Int, pts::Vector{Tuple{F, F}}) where
  {Opt <: MOI.AbstractOptimizer, F <: Real} =
        MOI.add_constraints(lp,
                            safs(degree, pts, MOI.add_variables(lp, degree + 1)),
                            sets(pts))

constrain(::Type{F}) where {F <: Real} =
        constrain(CDDLib.Optimizer{F}(), 5, Tuple{F, F}[(0, 1//2), (1, 7//3)])

With this example code constrain(Float64) and constrain(Rational{BigInt}) both lead to MOI errors about the model not supporting the constraint:

MathOptInterface.UnsupportedConstraint{MathOptInterface.ScalarAffineFunction{Float64}, MathOptInterface.GreaterThan{Float64}}: `MathOptInterface.ScalarAffineFunction{Float64}`-in-`MathOptInterface.GreaterThan{Float64}` constraint is not supported by the model.

Using Interval instead of GreaterThan results in a similar error, but LessThan seems to work. Not sure whether this is intended behavior.

CDDSolver(exact=true)

Consider the example in https://mathprogbasejl.readthedocs.io/en/latest/linprog.html:

using CDDLib
using MathProgBase
lp_solver = CDDSolver(exact=true)
sol = linprog([-1, 0], [2  1], '<', 3//2, lp_solver)
sol.objval

The value is -3//4.

Now divide both sides of the constraint by 3:

sol = linprog([-1, 0], [2//3  1//3], '<', 1//2, lp_solver)
sol.objval

The outcome is -4503599627370496//6004799503160661.

If we divide by a multiple of 2:

d = 2^20
sol = linprog([-1, 0], [2//d  1//d], '<', 3//(2*d), lp_solver)
sol.objval

then the outcome is exactly -3//4.

Is this a feature of cdd?

SegFault for BlockElimination

I encountered Segmentation Fault when using BlockElimination function. The minimum test code is as followed:

using Polyhedra, CDDLib
A=[-0.5458700320410754 -0.43028245741634163 -0.32949085078374596 -2.0178905562651726 1.0 0.0 0.0; -0.001696359345425646 -0.5944052771561518 -0.14259145370038157 -0.5715464802979783 0.0 1.0 0.0; 0.11176371186473642 0.16920950931092318 -0.6603345932930139 -0.11228115664803578 0.0 0.0 1.0; 0.5458700320410754 0.43028245741634163 0.32949085078374596 2.0178905562651726 -1.0 0.0 0.0; 0.001696359345425646 0.5944052771561518 0.14259145370038157 0.5715464802979783 0.0 -1.0 0.0; -0.11176371186473642 -0.16920950931092318 0.6603345932930139 0.11228115664803578 0.0 0.0 -1.0; -1.0 0.10091143255328394 3.4102811211934987 -6.813065334385856 0.0 0.0 0.0; 1.0 -0.8932312066317769 0.7730763460460294 2.524023981062126 0.0 0.0 0.0; 1.0 -0.0930882189983393 1.7475328342666678 4.495570410302662 0.0 0.0 0.0; -1.0 -0.05182954771533831 -1.1189515717142475 -3.9532525226843815 0.0 0.0 0.0; 1.0 4.239841226638941 -8.774257911319019 -2.2499336877985545 0.0 0.0 0.0; -1.0 1.0414219678515158 1.033883503426593 -0.9840648095304564 0.0 0.0 0.0; 1.0 -0.001284573155440541 -1.6845061382720732 -1.0153065939984884 0.0 0.0 0.0; 1.0 -4.299428761845123 -3.940453969462597 6.702373679526568 0.0 0.0 0.0; -1.0 0.0 0.0 0.0 0.0 0.0 0.0; 0.0 1.0 0.0 0.0 0.0 0.0 0.0]
b=[0.3653256599471767, 0.4574210313524346, 0.35534066564751254, -0.3653256599471767, -0.4574210313524346, -0.35534066564751254, -2.9769531018983972, 0.8613646098710365, 3.3649667529429204, -2.093853811646953, 8.893608931702863, 0.7565246179371888, 1.433621499051063, -3.9487728883626625, -1.0, 2.0]
poly_in = polyhedron(hrep(A,b), CDDLib.Library(:float))
poly_out = eliminate(poly_in, collect(1:4), BlockElimination())

I am using Julia v1.4.2 and Ubuntu 18.04. Further package details are as followed:

  [6e4b80f9] BenchmarkTools v0.5.0
  [3391f64e] CDDLib v0.6.3
  [5789e2e9] FileIO v1.4.5
  [587475ba] Flux v0.11.1
  [60bf3e95] GLPK v0.13.0
  [033835bb] JLD2 v0.3.1
  [682c06a0] JSON v0.21.1
  [4076af6c] JuMP v0.21.5
  [b4f0291d] LazySets v1.37.14
  [23992714] MAT v0.9.2
  [15e1cf62] NPZ v0.4.0
  [91a5bcdd] Plots v1.6.12
  [67491407] Polyhedra v0.6.11
  [d330b81b] PyPlot v2.9.0
  [9f7883ad] Tracker v0.2.13
  [37e2e46d] LinearAlgebra

Any suggestion on this? Thanks.

coefficient_type(::Optimizer{T})

Is this as intended?

julia> Polyhedra.coefficient_type(CDDLib.Optimizer{Rational{BigInt}}())
Float64

julia> CDDLib.coefficient_type(CDDLib.Optimizer{Rational{BigInt}}())
Rational{BigInt}

Re-enable appveyor

Looks like this hasn't been running since the package was moved to the organization?

`eliminate` does not return unique HalfSpaces and HyperPlanes

I noticed that doing FM elimination using Polyhedra and CDDLib on a polyhedron may generate an object with duplicate HalfSpaces. Is this the expected behavior of CDDLib? It would be nice to be able to remove duplicates as this could speed up plotting projections on 2D or 3D space. Maybe its just an issue of cdd.

Build errors on macOS

Hi!

I was hoping you could help me with some build errors that I'm getting on macOS.

The output from the whole process is quite long, but I think the relevant / possibly useful bits are:

...
...
WARNING: `@linux_only` is deprecated, use `@static if is_linux()` instead
...
...
Making all in lib-src
make[1]: Nothing to be done for `all'.
Making all in src
make[1]: Nothing to be done for `all'.
Making all in lib-src-gmp
/bin/sh ../libtool  --tag=CC   --mode=link gcc  -g -O2 -version-info 0:0:0 -no-undefined -L/Users/michaelchiu/.julia/v0.5/CDDLib/deps/usr/lib -Wl,-rpath -Wl,/Users/michaelchiu/.julia/v0.5/CDDLib/deps/usr/lib -o libcddgmp.la -rpath /Users/michaelchiu/.julia/v0.5/CDDLib/deps/usr/lib cddstd.lo cddcore.lo cddlp.lo cddmp.lo cddio.lo cddlib.lo cddproj.lo cddstd_f.lo cddcore_f.lo cddlp_f.lo cddmp_f.lo cddio_f.lo cddlib_f.lo cddproj_f.lo setoper.lo
libtool: link: gcc -dynamiclib  -o .libs/libcddgmp.0.dylib  .libs/cddstd.o .libs/cddcore.o .libs/cddlp.o .libs/cddmp.o .libs/cddio.o .libs/cddlib.o .libs/cddproj.o .libs/cddstd_f.o .libs/cddcore_f.o .libs/cddlp_f.o .libs/cddmp_f.o .libs/cddio_f.o .libs/cddlib_f.o .libs/cddproj_f.o .libs/setoper.o   -L/Users/michaelchiu/.julia/v0.5/CDDLib/deps/usr/lib  -g -O2 -Wl,-rpath -Wl,/Users/michaelchiu/.julia/v0.5/CDDLib/deps/usr/lib   -install_name  /Users/michaelchiu/.julia/v0.5/CDDLib/deps/usr/lib/libcddgmp.0.dylib -compatibility_version 1 -current_version 1.0 -Wl,-single_module
ld: warning: directory not found for option '-L/Users/michaelchiu/.julia/v0.5/CDDLib/deps/usr/lib'
Undefined symbols for architecture x86_64:
...
...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [libcddgmp.la] Error 1
make: *** [all-recursive] Error 1
===========================================================================[ ERROR: CDDLib ]============================================================================

LoadError: failed process: Process(setenv(`make -j8`,String["LSCOLORS=Gxfxcxdxbxegedabagacad","PATH=........"
ProcessExited(2)) [2]
while loading /Users/michaelchiu/.julia/v0.5/CDDLib/deps/build.jl, in expression starting on line 77

========================================================================================================================================================================

============================================================================[ BUILD ERRORS ]============================================================================

WARNING: CDDLib had build errors.
..
..

Neither 0 or 1 in first index of V-rep

julia> pol = HalfSpace([-0.0, -0.0, -1.0], 0.0)  HalfSpace([-0.0, -0.0, -1.0], 0.0)  HalfSpace([-2.88822, -2.88814, -1.0], -0.5201649970233834)  HalfSpace([-3.82659e-8, -2.21789e-8, -1.0], 3.175592530991495e-7)  HalfSpace([0.000233009, 0.000201829, -1.0], 0.0014080138136517413)  HalfSpace([0.000305723, 0.000298892, -1.0], 0.0013853823633649016)  HalfSpace([0.000452778, 0.000564088, -1.0], 0.0023422004969333083)  HalfSpace([-0.0, -0.0, -0.0], 1.0)  HalfSpace([-2.0, -1.0, -0.0], 1.0)  HalfSpace([-2.0, -2.0, -0.0], 1.0)  HalfSpace([2.0, 1.0, -0.0], 6.7)  HalfSpace([-0.0, -0.0, -0.0], 1.0)  HalfSpace([-0.0, -1.0, -0.0], 5.0)  HalfSpace([1.0, 1.0, -0.0], 2.85)  HalfSpace([-0.0, 1.0, -0.0], 4.0)  HalfSpace([-0.0, -0.0, -0.0], 1.0)  HalfSpace([-1.0, -0.0, -0.0], 0.5)  HalfSpace([1.0, -0.0, -0.0], 0.5)  HalfSpace([-0.0, -1.0, -0.0], -0.5)  HalfSpace([-0.0, 1.0, -0.0], 2.0)
H-representation Polyhedra.Intersection{Float64,Array{Float64,1},Int64}:
20-element iterator of HalfSpace{Float64,Array{Float64,1}}:
 HalfSpace([-0.0, -0.0, -1.0], 0.0)
 HalfSpace([-0.0, -0.0, -1.0], 0.0)
 HalfSpace([-2.88822, -2.88814, -1.0], -0.5201649970233834)
 HalfSpace([-3.82659e-8, -2.21789e-8, -1.0], 3.175592530991495e-7)
 HalfSpace([0.000233009, 0.000201829, -1.0], 0.0014080138136517413)
 HalfSpace([0.000305723, 0.000298892, -1.0], 0.0013853823633649016)
 HalfSpace([0.000452778, 0.000564088, -1.0], 0.0023422004969333083)
 HalfSpace([-0.0, -0.0, -0.0], 1.0)
 HalfSpace([-2.0, -1.0, -0.0], 1.0)
 HalfSpace([-2.0, -2.0, -0.0], 1.0)
 HalfSpace([2.0, 1.0, -0.0], 6.7)
 HalfSpace([-0.0, -0.0, -0.0], 1.0)
 HalfSpace([-0.0, -1.0, -0.0], 5.0)
 HalfSpace([1.0, 1.0, -0.0], 2.85)
 HalfSpace([-0.0, 1.0, -0.0], 4.0)
 HalfSpace([-0.0, -0.0, -0.0], 1.0)
 HalfSpace([-1.0, -0.0, -0.0], 0.5)
 HalfSpace([1.0, -0.0, -0.0], 0.5)
 HalfSpace([-0.0, -1.0, -0.0], -0.5)
 HalfSpace([-0.0, 1.0, -0.0], 2.0)

julia> p = polyhedron(pol, CDDLib.Library())
Polyhedron CDDLib.Polyhedron{Float64}:
20-element iterator of HalfSpace{Float64,Array{Float64,1}}:
 HalfSpace([-0.0, -0.0, -1.0], 0.0)
 HalfSpace([-0.0, -0.0, -1.0], 0.0)
 HalfSpace([-2.88822, -2.88814, -1.0], -0.5201649970233834)
 HalfSpace([-3.82659e-8, -2.21789e-8, -1.0], 3.175592530991495e-7)
 HalfSpace([0.000233009, 0.000201829, -1.0], 0.0014080138136517413)
 HalfSpace([0.000305723, 0.000298892, -1.0], 0.0013853823633649016)
 HalfSpace([0.000452778, 0.000564088, -1.0], 0.0023422004969333083)
 HalfSpace([-0.0, -0.0, -0.0], 1.0)
 HalfSpace([-2.0, -1.0, -0.0], 1.0)
 HalfSpace([-2.0, -2.0, -0.0], 1.0)
 HalfSpace([2.0, 1.0, -0.0], 6.7)
 HalfSpace([-0.0, -0.0, -0.0], 1.0)
 HalfSpace([-0.0, -1.0, -0.0], 5.0)
 HalfSpace([1.0, 1.0, -0.0], 2.85)
 HalfSpace([-0.0, 1.0, -0.0], 4.0)
 HalfSpace([-0.0, -0.0, -0.0], 1.0)
 HalfSpace([-1.0, -0.0, -0.0], 0.5)
 HalfSpace([1.0, -0.0, -0.0], 0.5)
 HalfSpace([-0.0, -1.0, -0.0], -0.5)
 HalfSpace([-0.0, 1.0, -0.0], 2.0)

julia> collect(points(p))
ERROR: AssertionError: ispoint == zero(T) || ispoint == one(T)
Stacktrace:
 [1] isrowpoint(::Ptr{CDDLib.Cdd_MatrixData{Float64}}, ::Int64, ::Type{Float64}) at /home/blegat/.julia/packages/CDDLib/bKo5p/src/matrix.jl:233
 [2] isrowpoint at /home/blegat/.julia/packages/CDDLib/bKo5p/src/matrix.jl:237 [inlined]
 [3] isvalid at /home/blegat/.julia/packages/CDDLib/bKo5p/src/matrix.jl:281 [inlined]
 [4] mixednext(::CDDGeneratorMatrix{Float64,Float64}, ::Polyhedra.Index{Float64,Array{Float64,1}}) at /home/blegat/.julia/packages/Polyhedra/Su6Kf/src/mixedrep.jl:23
 [5] nextindex at /home/blegat/.julia/packages/Polyhedra/Su6Kf/src/mixedrep.jl:33 [inlined]
 [6] iterate at /home/blegat/.julia/packages/Polyhedra/Su6Kf/src/indices.jl:66 [inlined]
 [7] mixedlength at /home/blegat/.julia/packages/Polyhedra/Su6Kf/src/mixedrep.jl:15 [inlined]
 [8] length(::Polyhedra.Indices{Float64,Array{Float64,1},CDDGeneratorMatrix{Float64,Float64}}) at /home/blegat/.julia/packages/CDDLib/bKo5p/src/matrix.jl:276
 [9] length(::Polyhedra.Indices{Float64,Array{Float64,1},CDDLib.Polyhedron{Float64}}) at /home/blegat/.julia/packages/Polyhedra/Su6Kf/src/indices.jl:81
 [10] npoints at /home/blegat/.julia/packages/Polyhedra/Su6Kf/src/iterators.jl:166 [inlined]
 [11] length at /home/blegat/.julia/packages/Polyhedra/Su6Kf/src/iterators.jl:192 [inlined]
 [12] _similar_for(::UnitRange{Int64}, ::Type{Array{Float64,1}}, ::Polyhedra.SingleRepIterator{Float64,Array{Float64,1},CDDLib.Polyhedron{Float64}}, ::Base.HasLength) at ./array.jl:517
 [13] _collect(::UnitRange{Int64}, ::Polyhedra.SingleRepIterator{Float64,Array{Float64,1},CDDLib.Polyhedron{Float64}}, ::Base.HasEltype, ::Base.HasLength) at ./array.jl:550
 [14] collect(::Polyhedra.SingleRepIterator{Float64,Array{Float64,1},CDDLib.Polyhedron{Float64}}) at ./array.jl:544
 [15] top-level scope at none:0

Reported by @jebouchat

Segmentation fault with julia v0.6

The CDDLib.jl and Polyhedra.jl unit tests fail with segfaults on Julia v0.6. The smallest reproducible example I can find so far is this:

using CDDLib
import CDDLib: Cdd_ErrorType, Cdd_boolean, @dd_ccall, Cdd_MatrixData, Cdd_rowrange,
    fulldim, myerror, myfree, CDDInequalityMatrix
using Polyhedra

A = eye(Int, 2)
b = [1, 1]
h = Polyhedra.SimpleHRepresentation(A, b)
matrix = CDDInequalityMatrix(h)
i = Cdd_rowrange(1)
len = fulldim(matrix) + 1
err = Ref{Cdd_ErrorType}(0)
certificateGMPRat = zeros(GMPRational, len)
found = (@dd_ccall Redundant Cdd_boolean (Ptr{Cdd_MatrixData{GMPRational}}, Cdd_rowrange, Ptr{GMPRational}, Ref{Cdd_ErrorType}) matrix.matrix i certificateGMPRat err)
myerror(err[])
certificate = Array{Rational{BigInt}}(certificateGMPRat)
myfree(certificateGMPRat)

which is distilled from the call to redundant(matrix, i) in test/board.jl.

Removing the final call to myfree(certificateGMPRat) prevents the segfault, but I don't understand enough about GMP to know if that's actually a good idea.

This may be related to the issue alluded to here: https://discourse.julialang.org/t/bindings-to-external-lib-work-with-0-5-but-fail-with-0-6-rc1/3734/2 . Apparently in julia v0.5, some finalizers were not actually being run, so it's possible that there's been a double-free somewhere in this code which was hidden by that v0.5 bug but revealed on v0.6.

Error in test.jl

Hello,

When I run test.jl in Jupyter, it return the following error:

MethodError: no method matching HRepresentation(::Matrix{Int64}, ::Vector{Int64})

Stacktrace:
[1] extremepoints(A::Matrix{Int64}, b::Vector{Int64})
@ Main .\In[9]:6
[2] top-level scope
@ In[9]:15

I need to find the extreme points of the convex hull of Ax<=b linear system where A is a [310x300] matrix. Is this problem solvable using cddlib? Any assistance with this would be highly appreciated

image

Build failure macOS

Couldn't build CDDLib. Here's the build.log.

Julia Version 1.1.0 on macOS Mojave Version 10.14.3

---

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100   160    0   160    0     0    156      0 --:--:--  0:00:01 --:--:--   156

  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:02 --:--:--     0
100  246k    0  246k    0     0  70853      0 --:--:--  0:00:03 --:--:--  122k
100  524k    0  524k    0     0   114k      0 --:--:--  0:00:04 --:--:--  173k
100 1259k    0 1259k    0     0   228k      0 --:--:--  0:00:05 --:--:--  318k
100 1663k    0 1663k    0     0   257k      0 --:--:--  0:00:06 --:--:--  340k
Archive:  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/downloads/82409bb792a0be0a8d57805842a491baf504a3b4.zip
82409bb792a0be0a8d57805842a491baf504a3b4
   creating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/
 extracting: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/.gitignore  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/AUTHORS  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/COPYING  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/ChangeLog  
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/HISTORY  -> ChangeLog 
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/INSTALL  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/Makefile.am  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/Makefile.in  
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/NEWS  -> HISTORY 
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/README  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/README.core2processor  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/aclocal.m4  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/ar-lib  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/compile  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/config.guess  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/config.sub  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/configure  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/configure.ac  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/depcomp  
   creating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/doc/
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/doc/.gitignore  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/doc/cddlibman.dvi  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/doc/cddlibman.pdf  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/doc/cddlibman.ps  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/doc/cddlibman.tex  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/doc/html.sty  
   creating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ext/
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ext/ccc4.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ext/ccc5.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ext/ccc6.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ext/ccp4.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ext/ccp5.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ext/ccp6.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ext/cyclic10-4.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ext/cyclic12-6.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ext/cyclic14-8.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ext/cyclic16-10.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ext/irbox20-4.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ext/irbox200-4.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ext/prodst62.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ext/reg24-5.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ext/reg600-5.ext  
   creating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/allzero.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/cross10.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/cross12.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/cross6.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/cross8.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/cube10.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/cube12.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/cube6.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/cube8.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/cubocta.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/ex1.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/infeas.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/integralpoints.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/kkd18_4.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/kkd27_5.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/kkd38_6.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/nonfull.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/origin.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/reg24-5.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/sampleh1.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/sampleh2.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/sampleh3.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/sampleh4.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/sampleh5.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/sampleh6.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/sampleh7.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/sampleh8.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/samplelp.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/samplelp1.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/samplelp2.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/samplelp3.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine/samplelp4.ine  
   creating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine3d/
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine3d/cube3.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine3d/cubocta.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine3d/dodeca.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine3d/grcubocta.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine3d/hexocta.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine3d/icododeca.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine3d/rcubocta.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ine3d/rhomtria.ine  
   creating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ml/
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ml/Combinatorica5.m  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ml/ExtendGraphics30.tar  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ml/IOPolyhedra.m  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ml/PolytopeSkeleton.m  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ml/README.cddmathlink  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ml/UnfoldPolytope.m  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ml/cddml-DietProblem.nb  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ml/cddml-PolytopeSkeleton.nb  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ml/cddml-Zonotope.m  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ml/cddml-Zonotope.nb  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples-ml/cddml-notebook.nb  
   creating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/project1.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/project1res.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/project2.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/project2res.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/redcheck.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/sample.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/sampleh1.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/sampleh2.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/sampleh3.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/sampleh4.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/sampleh5.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/sampleh6.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/sampleh7.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/sampleh8.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/samplelp.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/samplelp.testlp1_gmp_output  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/samplelp.testlp1_output  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/samplelp1.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/samplelp2.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/samplelp3.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/samplelp4.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/samplelp_big.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/samplelp_big_dualinfeas.ine  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/samplev1.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/samplev2.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/examples/samplev3.ext  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/install-sh  
   creating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/Makefile.am  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/Makefile.in  
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cdd.h  -> ../lib-src/cdd.h 
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cdd_f.h  
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddcore.c  -> ../lib-src/cddcore.c 
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddcore_f.c  
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddio.c  -> ../lib-src/cddio.c 
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddio_f.c  
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddlib.c  -> ../lib-src/cddlib.c 
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddlib_f.c  
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddlp.c  -> ../lib-src/cddlp.c 
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddlp_f.c  
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddmp.c  -> ../lib-src/cddmp.c 
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddmp.h  -> ../lib-src/cddmp.h 
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddmp_f.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddmp_f.h  
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddproj.c  -> ../lib-src/cddproj.c 
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddproj_f.c  
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddstd.c  -> ../lib-src/cddstd.c 
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddstd.h  -> ../lib-src/cddstd.h 
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddstd_f.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddstd_f.h  
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddtypes.h  -> ../lib-src/cddtypes.h 
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddtypes_f.h  
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/setoper.c  -> ../lib-src/setoper.c 
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/setoper.h  -> ../lib-src/setoper.h 
   creating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src/
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src/Makefile.am  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src/Makefile.in  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src/cdd.h  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src/cddcore.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src/cddio.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src/cddlib.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src/cddlp.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src/cddmp.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src/cddmp.h  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src/cddproj.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src/cddstd.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src/cddstd.h  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src/cddtypes.h  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src/setoper.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src/setoper.h  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/ltmain.sh  
   creating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/m4/
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/m4/libtool.m4  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/m4/ltoptions.m4  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/m4/ltsugar.m4  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/m4/ltversion.m4  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/m4/lt~obsolete.m4  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/make_all_f.sh  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/make_f.sh  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/missing  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/mkinstalldirs  
   creating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/.gdb_history  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/Makefile.am  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/Makefile.in  
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/adjacency.c  -> ../src/adjacency.c 
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/allfaces.c  -> ../src/allfaces.c 
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/fourier.c  -> ../src/fourier.c 
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/lcdd.c  -> ../src/lcdd.c 
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/projection.c  -> ../src/projection.c 
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/redcheck.c  -> ../src/redcheck.c 
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/redundancies.c  -> ../src/redundancies.c 
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/redundancies_clarkson.c  -> ../src/redundancies_clarkson.c 
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/simplecdd.c  -> ../src/simplecdd.c 
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/testcdd1.c  -> ../src/testcdd1.c 
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/testcdd2.c  -> ../src/testcdd2.c 
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/testlp1.c  -> ../src/testlp1.c 
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/testlp2.c  -> ../src/testlp2.c 
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/testlp3.c  -> ../src/testlp3.c 
    linking: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/testshoot.c  -> ../src/testshoot.c 
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/testuniq.c  
   creating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/Makefile.am  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/Makefile.in  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/adjacency.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/allfaces.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/fourier.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/lcdd.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/minkowski.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/projection.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/redcheck.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/redexter.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/redundancies.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/redundancies_clarkson.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/simplecdd.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/testcdd1.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/testcdd2.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/testlp1.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/testlp2.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/testlp3.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/testshoot.c  
  inflating: /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src/testuniq.c  
finishing deferred symbolic links:
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/HISTORY -> ChangeLog
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/NEWS -> HISTORY
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cdd.h -> ../lib-src/cdd.h
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddcore.c -> ../lib-src/cddcore.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddio.c -> ../lib-src/cddio.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddlib.c -> ../lib-src/cddlib.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddlp.c -> ../lib-src/cddlp.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddmp.c -> ../lib-src/cddmp.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddmp.h -> ../lib-src/cddmp.h
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddproj.c -> ../lib-src/cddproj.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddstd.c -> ../lib-src/cddstd.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddstd.h -> ../lib-src/cddstd.h
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/cddtypes.h -> ../lib-src/cddtypes.h
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/setoper.c -> ../lib-src/setoper.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp/setoper.h -> ../lib-src/setoper.h
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/adjacency.c -> ../src/adjacency.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/allfaces.c -> ../src/allfaces.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/fourier.c -> ../src/fourier.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/lcdd.c -> ../src/lcdd.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/projection.c -> ../src/projection.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/redcheck.c -> ../src/redcheck.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/redundancies.c -> ../src/redundancies.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/redundancies_clarkson.c -> ../src/redundancies_clarkson.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/simplecdd.c -> ../src/simplecdd.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/testcdd1.c -> ../src/testcdd1.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/testcdd2.c -> ../src/testcdd2.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/testlp1.c -> ../src/testlp1.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/testlp2.c -> ../src/testlp2.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/testlp3.c -> ../src/testlp3.c
  /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/src-gmp/testshoot.c -> ../src/testshoot.c
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... no
checking whether make supports nested variables... no
checking for gawk... (cached) awk
checking for gcc... gcc
checking whether the C compiler works... no
configure: error: in `/Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/builds/libcddgmp':
configure: error: C compiler cannot create executables
See `config.log' for more details
[ Info: Attempting to create directory /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/downloads
[ Info: Downloading file https://github.com/JuliaPolyhedra/cddlib/archive/82409bb792a0be0a8d57805842a491baf504a3b4.zip
[ Info: Done downloading file https://github.com/JuliaPolyhedra/cddlib/archive/82409bb792a0be0a8d57805842a491baf504a3b4.zip
[ Info: Attempting to create directory /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src
[ Info: Attempting to create directory /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps
[ Info: Directory /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps already exists
[ Info: Attempting to create directory /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/builds/libcddgmp
[ Info: Changing directory to /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/builds/libcddgmp
ERROR: LoadError: failed process: Process(setenv(`/Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/configure 'CPPFLAGS=-DGMPRATIONAL -I/Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src -I/Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp -I/Users/jeanbouchat/.julia/packages/Homebrew/s09IX/deps/usr/include' --prefix=/Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/usr`,["XPC_FLAGS=0x0", "PATH=/Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/usr/bin:/Users/jeanbouchat/.julia/packages/Homebrew/s09IX/deps/usr/bin:/Users/jeanbouchat/.julia/packages/Homebrew/s09IX/deps/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/jeanbouchat/.julia/packages/Homebrew/s09IX/deps/usr/opt/git/libexec/git-core", "PWD=/Users/jeanbouchat", "XPC_SERVICE_NAME=0", "TERM_PROGRAM=Apple_Terminal", "GIT_EXEC_PATH=/Users/jeanbouchat/.julia/packages/Homebrew/s09IX/deps/usr/opt/git/libexec/git-core", "SHELL=/bin/bash", "__CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0", "LC_CTYPE=UTF-8", "TMPDIR=/var/folders/wz/8sqv2ntx30ndvc24pqqg_g0h0000gn/T/", "HOMEBREW_CACHE=/Users/jeanbouchat/Library/Caches/Homebrew.jl/", "CPPFLAGS= -I/Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/usr/include -I/Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src -I/Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/src/cddlib-82409bb792a0be0a8d57805842a491baf504a3b4/lib-src-gmp", "LDFLAGS= -L/Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/usr/lib -L/Users/jeanbouchat/.julia/packages/Homebrew/s09IX/deps/usr/lib -Wl,-rpath -Wl,/Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/usr/lib", "SHLVL=1", "LOGNAME=jeanbouchat", "HOMEBREW_NO_ENV_FILTERING=1", "TERM_SESSION_ID=325501D9-1CC2-4AE8-BE05-CB48DE207EA4", "SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.HAvIBxNwZx/Listeners", "PKG_CONFIG_PATH=/Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/usr/lib/pkgconfig", "JULIA_LOAD_PATH=@:/var/folders/wz/8sqv2ntx30ndvc24pqqg_g0h0000gn/T/tmpaqMvIj", "_=/usr/local/bin/julia", "GIT_TEMPLATE_DIR=/Users/jeanbouchat/.julia/packages/Homebrew/s09IX/deps/usr/opt/git/share/git-core", "Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.ISRobKCHRl/Render", "USER=jeanbouchat", "HOMEBREW_NO_AUTO_UPDATE=1", "TERM=xterm-256color", "HOME=/Users/jeanbouchat", "TERM_PROGRAM_VERSION=421.1", "OPENBLAS_MAIN_FREE=1", "HOMEBREW_NO_ANALYTICS=1"]), ProcessExited(77)) [77]
Stacktrace:
 [1] error(::String, ::Base.Process, ::String, ::Int64, ::String) at ./error.jl:42
 [2] pipeline_error at ./process.jl:785 [inlined]
 [3] #run#515(::Bool, ::Function, ::Cmd) at ./process.jl:726
 [4] run(::Cmd) at ./process.jl:724
 [5] run(::BinDeps.SynchronousStepCollection) at /Users/jeanbouchat/.julia/packages/BinDeps/ZEval/src/BinDeps.jl:521
 [6] run(::FileRule) at /Users/jeanbouchat/.julia/packages/BinDeps/ZEval/src/BinDeps.jl:483
 [7] run(::BinDeps.SynchronousStepCollection) at /Users/jeanbouchat/.julia/packages/BinDeps/ZEval/src/BinDeps.jl:521 (repeats 2 times)
 [8] satisfy!(::BinDeps.LibraryDependency, ::Array{DataType,1}) at /Users/jeanbouchat/.julia/packages/BinDeps/ZEval/src/dependencies.jl:944
 [9] satisfy!(::BinDeps.LibraryDependency) at /Users/jeanbouchat/.julia/packages/BinDeps/ZEval/src/dependencies.jl:922
 [10] top-level scope at /Users/jeanbouchat/.julia/packages/BinDeps/ZEval/src/dependencies.jl:977
 [11] include at ./boot.jl:326 [inlined]
 [12] include_relative(::Module, ::String) at ./loading.jl:1038
 [13] include(::Module, ::String) at ./sysimg.jl:29
 [14] include(::String) at ./client.jl:403
 [15] top-level scope at none:0
in expression starting at /Users/jeanbouchat/.julia/packages/CDDLib/bKo5p/deps/build.jl:90

Segfault on PkgEval during lpsolve

Daily PkgEval testing of CDDLib.jl has been segfaulting for a while, e.g., https://s3.amazonaws.com/julialang-reports/nanosoldier/pkgeval/by_date/2022-11/24/CDDLib.primary.log:

[17] signal (11.1): Segmentation fault
in expression starting at /home/pkgeval/.julia/packages/CDDLib/ljSXl/test/MOI_wrapper.jl:10
__gmpn_lshift_zen at /opt/julia/bin/../lib/julia/libgmp.so (unknown line)
__gmpq_get_d at /opt/julia/bin/../lib/julia/libgmp.so (unknown line)
dd_LPgmp2LPf at /workspace/srcdir/cddlib/lib-src/cddlp.c:1856
dd_LPSolve at /workspace/srcdir/cddlib/lib-src/cddlp.c:1902
macro expansion at /home/pkgeval/.julia/packages/CDDLib/ljSXl/src/ccall.jl:13 [inlined]
dd_lpsolve at /home/pkgeval/.julia/packages/CDDLib/ljSXl/src/lp.jl:235 [inlined]
lpsolve at /home/pkgeval/.julia/packages/CDDLib/ljSXl/src/lp.jl:244 [inlined]
optimize! at /home/pkgeval/.julia/packages/CDDLib/ljSXl/src/MOI_wrapper.jl:81
optimize! at /home/pkgeval/.julia/packages/MathOptInterface/Ht8hE/src/MathOptInterface.jl:87 [inlined]
optimize! at /home/pkgeval/.julia/packages/MathOptInterface/Ht8hE/src/Utilities/cachingoptimizer.jl:316
optimize! at /home/pkgeval/.julia/packages/MathOptInterface/Ht8hE/src/Bridges/bridge_optimizer.jl:376 [inlined]
test_linear_open_intervals at /home/pkgeval/.julia/packages/MathOptInterface/Ht8hE/src/Test/test_linear.jl:4048

This doesn't seem like a Julia issue, but an issue with this package or cddl. As it's been at the top of PkgEval reports, could you take a look? If necessary, you can easily reproduce the PkgEval sandbox environment (on Linux):

pkg> add https://github.com/JuliaCI/PkgEval.jl

julia> using PkgEval

julia> config = Configuration(julia="nightly")
PkgEval configuration 'unnamed' (
  - julia: nightly
  - ...
)

julia> PkgEval.sandboxed_julia(config)

# this spawns a sandbox where you can install and test packages

(@v1.10) pkg> add CDDLib

(@v1.10) pkg> test CDDLib

[234] signal (11.1): Segmentation fault

Symbol Lookup Error

Hello, i'm having a problem to compile CDDLib in Julia.
Apparently, the compiler is unable to link libcddgmp.so to the libgmp

I get the following message when I try to do using CDDLib:

symbol lookup error: /usr/local/lib/libcddgmp.so: undefined symbol: __gmpq_init

libgmp-dev is installed (i tried to remove it and reinstall it)
I also tried to add -lgmp in the build.jl but it does not work either.

Any idea?

Inconsistent license version

LICENSE.md starts with the line "The CDDLib.jl package is licensed under the GPLv2 License" but then goes on to state that the license is version 3 or any later version.

Cannot find ddf_SetMatrixNumberType

The following happens without error

(v1.1) pkg> build CDDLib
Building LibCURL ─────────→ ~/.julia/packages/LibCURL/OoXMv/deps/build.log
Building WinRPM ──────────→ ~/.julia/packages/WinRPM/Y9QdZ/deps/build.log
Building Homebrew ────────→ ~/.julia/packages/Homebrew/s09IX/deps/build.log
Building SpecialFunctions → ~/.julia/packages/SpecialFunctions/fvheQ/deps/build.log
Building CDDLib ──────────→ ~/.julia/packages/CDDLib/bKo5p/deps/build.log
julia> using CDDLib

but then when I try

using Polyhedra, CDDLib
V_1 = [0 0; 1 0; 0 1; 1 1]
Pv_1 = vrep(V_1)
P_1 = polyhedron(Pv_1, CDDLib.Library())

I get the error message

julia> P_1 = polyhedron(Pv_1, CDDLib.Library())
ERROR: ccall: could not find function ddf_SetMatrixNumberType in library /usr/local/lib/libcddgmp.dylib
Stacktrace:
 [1] macro expansion at /Users/2kak7/.julia/packages/CDDLib/bKo5p/src/CDDLib.jl:24 [inlined]
 [2] dd_setmatrixnumbertype at /Users/2kak7/.julia/packages/CDDLib/bKo5p/src/matrix.jl:45 [inlined]
 [3] initmatrix(::Int64, ::Type{Float64}, ::Bool, ::Polyhedra.SingleMapRepIterator{Float64,Array{Float64,1},MixedMatVRep{Int64,Array{Int64,2}}}, ::Vararg{Union{AbstractArray{ElemT,1}, AbstractRepIterator{#s17,ElemT} where #s17, AllRepIterator{#s18,ElemT,LinElemT,LRT,RT} where RT<:AbstractRepIterator{#s18,ElemT} where LRT<:AbstractRepIterator{#s18,LinElemT} where LinElemT where #s18} where ElemT,N} where N) at /Users/2kak7/.julia/packages/CDDLib/bKo5p/src/matrix.jl:88
 [4] CDDGeneratorMatrix{Float64,Float64}(::Int64, ::Polyhedra.SingleMapRepIterator{Float64,Array{Float64,1},MixedMatVRep{Int64,Array{Int64,2}}}, ::Vararg{Union{Union{AbstractArray{#s18,1}, AbstractRepIterator{#s17,#s18} where #s17, AllRepIterator{#s181,#s18,LinElemT,LRT,RT} where RT<:AbstractRepIterator{#s181,#s18} where LRT<:AbstractRepIterator{#s181,LinElemT} where LinElemT where #s181} where #s18<:AbstractArray{Float64,1}, Union{AbstractArray{#s18,1}, AbstractRepIterator{#s17,#s18} where #s17, AllRepIterator{#s181,#s18,LinElemT,LRT,RT} where RT<:AbstractRepIterator{#s181,#s18} where LRT<:AbstractRepIterator{#s181,LinElemT} where LinElemT where #s181} where #s18<:(Line{Float64,AT} where AT<:AbstractArray{Float64,1}), Union{AbstractArray{#s18,1}, AbstractRepIterator{#s17,#s18} where #s17, AllRepIterator{#s181,#s18,LinElemT,LRT,RT} where RT<:AbstractRepIterator{#s181,#s18} where LRT<:AbstractRepIterator{#s181,LinElemT} where LinElemT where #s181} where #s18<:(Ray{Float64,AT} where AT<:AbstractArray{Float64,1})},N} where N) at /Users/2kak7/.julia/packages/CDDLib/bKo5p/src/matrix.jl:268
 [5] constructpolyhedron(::Type{CDDGeneratorMatrix{Float64,Float64}}, ::Int64, ::Tuple{MixedMatVRep{Int64,Array{Int64,2}}}, ::Polyhedra.SingleMapRepIterator{Float64,Array{Float64,1},MixedMatVRep{Int64,Array{Int64,2}}}, ::Vararg{Union{Union{AbstractArray{#s18,1}, AbstractRepIterator{#s17,#s18} where #s17, AllRepIterator{#s181,#s18,LinElemT,LRT,RT} where RT<:AbstractRepIterator{#s181,#s18} where LRT<:AbstractRepIterator{#s181,LinElemT} where LinElemT where #s181} where #s18<:(HyperPlane{Float64,AT} where AT<:AbstractArray{Float64,1}), Union{AbstractArray{#s18,1}, AbstractRepIterator{#s17,#s18} where #s17, AllRepIterator{#s181,#s18,LinElemT,LRT,RT} where RT<:AbstractRepIterator{#s181,#s18} where LRT<:AbstractRepIterator{#s181,LinElemT} where LinElemT where #s181} where #s18<:(HalfSpace{Float64,AT} where AT<:AbstractArray{Float64,1}), Union{AbstractArray{#s18,1}, AbstractRepIterator{#s17,#s18} where #s17, AllRepIterator{#s181,#s18,LinElemT,LRT,RT} where RT<:AbstractRepIterator{#s181,#s18} where LRT<:AbstractRepIterator{#s181,LinElemT} where LinElemT where #s181} where #s18<:AbstractArray{Float64,1}, Union{AbstractArray{#s18,1}, AbstractRepIterator{#s17,#s18} where #s17, AllRepIterator{#s181,#s18,LinElemT,LRT,RT} where RT<:AbstractRepIterator{#s181,#s18} where LRT<:AbstractRepIterator{#s181,LinElemT} where LinElemT where #s181} where #s18<:(Line{Float64,AT} where AT<:AbstractArray{Float64,1}), Union{AbstractArray{#s18,1}, AbstractRepIterator{#s17,#s18} where #s17, AllRepIterator{#s181,#s18,LinElemT,LRT,RT} where RT<:AbstractRepIterator{#s181,#s18} where LRT<:AbstractRepIterator{#s181,LinElemT} where LinElemT where #s181} where #s18<:(Ray{Float64,AT} where AT<:AbstractArray{Float64,1})},N} where N) at /Users/2kak7/.julia/packages/Polyhedra/Su6Kf/src/default.jl:124
 [6] vconvert(::Type{CDDGeneratorMatrix{Float64,Float64}}, ::MixedMatVRep{Int64,Array{Int64,2}}) at /Users/2kak7/.julia/packages/Polyhedra/Su6Kf/src/iterators.jl:379
 [7] convert at /Users/2kak7/.julia/packages/Polyhedra/Su6Kf/src/representation.jl:77 [inlined]
 [8] cddmatrix at /Users/2kak7/.julia/packages/CDDLib/bKo5p/src/matrix.jl:142 [inlined]
 [9] convert(::Type{CDDLib.Polyhedron{Float64}}, ::MixedMatVRep{Int64,Array{Int64,2}}) at /Users/2kak7/.julia/packages/CDDLib/bKo5p/src/polyhedron.jl:140
 [10] polyhedron(::MixedMatVRep{Int64,Array{Int64,2}}, ::CDDLib.Library) at /Users/2kak7/.julia/packages/CDDLib/bKo5p/src/polyhedron.jl:127
 [11] top-level scope at none:0

I have rebuilt libcddgmp.dylib completely from source and have manually examined the resulting library and it does indeed not have such a function.

Numerically inconsistent

I would like to understand why I sometimes run into a numerical inconsistency.

For example, take a 3D shape defined by the following vertices:

vertices = [ -8.02  -2.955 -2.412
             -7.942 -2.622 -2.362
             -7.956 -1.271 -2.403
             -7.878 -0.937 -2.353
             -7.763  1.284 -2.392
             -7.685  1.617 -2.342
             -7.699  2.968 -2.383
             -7.621  3.301 -2.333
             -6.495  3.278 -1.779
              0.773  3.13  -2.645 ]

Now, if I try to create a mesh from those vertices with

p = polyhedron(vrep(vertices), CDDLib.Library())
m = Polyhedra.Mesh(p)

I will end up with the following error:

Numerically inconsistent

Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] myerror(::Int32) at /home/henrique/.julia/packages/CDDLib/Okc0M/src/error.jl:23
 [3] dd_matrix2poly at /home/henrique/.julia/packages/CDDLib/Okc0M/src/polyhedra.jl:53 [inlined]
 [4] CDDPolyhedra{Float64,Float64}(::CDDGeneratorMatrix{Float64,Float64}) at /home/henrique/.julia/packages/CDDLib/Okc0M/src/polyhedra.jl:68
 [5] CDDPolyhedra(::CDDGeneratorMatrix{Float64,Float64}) at /home/henrique/.julia/packages/CDDLib/Okc0M/src/polyhedra.jl:83
 [6] getpoly(::CDDLib.Polyhedron{Float64}, ::Bool) at /home/henrique/.julia/packages/CDDLib/Okc0M/src/polyhedron.jl:62
 [7] getpoly at /home/henrique/.julia/packages/CDDLib/Okc0M/src/polyhedron.jl:56 [inlined]
 [8] getine(::CDDLib.Polyhedron{Float64}) at /home/henrique/.julia/packages/CDDLib/Okc0M/src/polyhedron.jl:45
 [9] hrep at /home/henrique/.julia/packages/CDDLib/Okc0M/src/polyhedron.jl:149 [inlined]
 [10] hyperplanetype(::CDDLib.Polyhedron{Float64}) at /home/henrique/.julia/dev/Polyhedra/src/iterators.jl:175
 [11] _broadcast_getindex_evalf at ./broadcast.jl:578 [inlined]
 [12] _broadcast_getindex at ./broadcast.jl:551 [inlined]
 [13] #19 at ./broadcast.jl:953 [inlined]
 [14] ntuple at ./tuple.jl:159 [inlined]
 [15] copy at ./broadcast.jl:953 [inlined]
 [16] materialize at ./broadcast.jl:753 [inlined]
 [17] hyperplanes at /home/henrique/.julia/dev/Polyhedra/src/iterators.jl:183 [inlined]
 [18] fulldecompose(::Polyhedra.Mesh{3,Float64,CDDLib.Polyhedron{Float64}}, ::Type{Float64}) at /home/henrique/.julia/dev/Polyhedra/src/decompose.jl:187
 [19] fulldecompose at /home/henrique/.julia/dev/Polyhedra/src/decompose.jl:229 [inlined]
 [20] decompose(::Type{GeometryTypes.Face{3,GeometryTypes.OffsetInteger{-1,UInt32}}}, ::Polyhedra.Mesh{3,Float64,CDDLib.Polyhedron{Float64}}) at /home/henrique/.julia/dev/Polyhedra/src/decompose.jl:239
 [21] GLPlainMesh(::Polyhedra.Mesh{3,Float64,CDDLib.Polyhedron{Float64}}) at /home/henrique/.julia/packages/GeometryTypes/ETYtg/src/primitives.jl:18
 [22] lower(::Polyhedra.Mesh{3,Float64,CDDLib.Polyhedron{Float64}}) at /home/henrique/.julia/dev/MeshCat/src/lowering.jl:167
 [23] lower(::Object{Polyhedra.Mesh{3,Float64,CDDLib.Polyhedron{Float64}},MeshCat.GenericMaterial}) at /home/henrique/.julia/dev/MeshCat/src/lowering.jl:21
 [24] send(::MeshCat.CoreVisualizer, ::MeshCat.SetObject{Object{Polyhedra.Mesh{3,Float64,CDDLib.Polyhedron{Float64}},MeshCat.GenericMaterial}}) at /home/henrique/.julia/dev/MeshCat/src/lowering.jl:250
 [25] setobject! at /home/henrique/.julia/dev/MeshCat/src/visualizer.jl:165 [inlined]
 [26] setobject!(::Visualizer, ::Polyhedra.Mesh{3,Float64,CDDLib.Polyhedron{Float64}}) at /home/henrique/.julia/dev/MeshCat/src/abstract_visualizer.jl:12
 [27] top-level scope at In[5]:2

Using exact arithmetic seems to get rid of this issue but at the cost of extreme computational times:

p = polyhedron(vrep(vertices), CDDLib.Library(:exact))
m = Polyhedra.Mesh(p)

Screenshots of a notebook showing both situations:

With exact arithmetic:
1

Without exact arithmetic:
2

Failed to precompile CDDLib (v0.7)

Hello,
I get an error with using CDDLib in v0.7. Do you think my installation is broken, or it is an error with the new julia version?

Thanks in advance.

julia> using Polyhedra

julia> using CDDLib
[ Info: Precompiling CDDLib [3391f64e-dcde-5f30-b752-e11513730f60]
WARNING: importing deprecated binding Base.Void into CDDLib.
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/CDDLib.jl:36
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:17 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:17
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:11
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:27 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:27
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:27 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:27
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:29 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:29
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:29 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:29
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:25
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:25
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:43 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:43
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:37
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:68 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:68
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:66
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:95 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:95
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:95 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:95
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:93
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:101 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:101
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:101 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:101
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:101 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:101
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:99
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:107 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:107
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:107 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:107
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:107 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:107
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:105
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:123 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:123
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:123 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:123
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:126 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:126
┌ Warning: Syntax `&argument` around /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:126 is deprecated. Remove the `&` and use a `Ref` argument type instead.
└ @ ~/.julia/packages/CDDLib/gsxS1/src/mytype.jl:126
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:121
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:121
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/mytype.jl:159
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/settype.jl:1
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/settype.jl:7
WARNING: importing deprecated binding Base.IntSet into CDDLib.
WARNING: Base.IntSet is deprecated, use BitSet instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/settype.jl:40
WARNING: Base.IntSet is deprecated, use BitSet instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/settype.jl:51
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/matrix.jl:26
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/matrix.jl:29
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/matrix.jl:37
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/matrix.jl:40
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/matrix.jl:44
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/matrix.jl:47
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/matrix.jl:51
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/matrix.jl:54
WARNING: Base.IntSet is deprecated, use BitSet instead.
  likely near /Users/forets/.julia/packages/CDDLib/gsxS1/src/matrix.jl:65
ERROR: LoadError: LoadError: TypeError: in Type{...} expression, expected UnionAll, got Type{Union{Int64, Size}}
Stacktrace:
 [1] top-level scope at none:0
 [2] include at ./boot.jl:317 [inlined]
 [3] include_relative(::Module, ::String) at ./loading.jl:1038
 [4] include at ./sysimg.jl:29 [inlined]
 [5] include(::String) at /Users/forets/.julia/packages/CDDLib/gsxS1/src/CDDLib.jl:3
 [6] top-level scope at none:0
 [7] include at ./boot.jl:317 [inlined]
 [8] include_relative(::Module, ::String) at ./loading.jl:1038
 [9] include(::Module, ::String) at ./sysimg.jl:29
 [10] top-level scope at none:2
 [11] eval at ./boot.jl:319 [inlined]
 [12] eval(::Expr) at ./client.jl:399
 [13] top-level scope at ./none:3
in expression starting at /Users/forets/.julia/packages/CDDLib/gsxS1/src/matrix.jl:79
in expression starting at /Users/forets/.julia/packages/CDDLib/gsxS1/src/CDDLib.jl:50
ERROR: Failed to precompile CDDLib [3391f64e-dcde-5f30-b752-e11513730f60] to /Users/forets/.julia/compiled/v0.7/CDDLib/SMSjF.ji.
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] macro expansion at ./logging.jl:313 [inlined]
 [3] compilecache(::Base.PkgId, ::String) at ./loading.jl:1185
 [4] macro expansion at ./logging.jl:311 [inlined]
 [5] _require(::Base.PkgId) at ./loading.jl:941
 [6] require(::Base.PkgId) at ./loading.jl:852
 [7] macro expansion at ./logging.jl:311 [inlined]
 [8] require(::Module, ::Symbol) at ./loading.jl:834

No method matching sethrep!(::CDDLib.Polyhedron, ::CDDInequalityMatrix)

After JuliaPolyhedra/Polyhedra.jl#298 I reach another problem (maybe this should rather be reported in CDDLib, not sure).

(@v1.7) pkg> status Polyhedra CDDLib
      Status `~/.julia/environments/v1.7/Project.toml`
  [3391f64e] CDDLib v0.9.0
  [67491407] Polyhedra v0.7.4

julia> using Polyhedra, CDDLib

julia> Q = polyhedron(vrep([[1.0]]), CDDLib.Library());

julia> removevredundancy!(Q; ztol=1e-7)

ERROR: MethodError: no method matching sethrep!(::CDDLib.Polyhedron{Float64}, ::CDDInequalityMatrix{Float64, Float64})
Closest candidates are:
  sethrep!(::Any, ::Any, ::Any) at ~/.julia/packages/Polyhedra/3AInN/src/defaultlibrary.jl:115
  sethrep!(::Interval, ::HRep) at ~/.julia/packages/Polyhedra/3AInN/src/interval.jl:207
  sethrep!(::DefaultPolyhedron, ::HRepresentation) at ~/.julia/packages/Polyhedra/3AInN/src/defaultlibrary.jl:120
  ...
Stacktrace:
 [1] sethrep!(p::CDDLib.Polyhedron{Float64}, h::CDDInequalityMatrix{Float64, Float64}, red::Redundancy)
   @ Polyhedra ~/.julia/packages/Polyhedra/3AInN/src/defaultlibrary.jl:115
 [2] detecthlinearity!(p::CDDLib.Polyhedron{Float64}, solver::Type; kws::Base.Pairs{Symbol, Float64, Tuple{Symbol}, NamedTuple{(:ztol,), Tuple{Float64}}})
   @ Polyhedra ~/.julia/packages/Polyhedra/3AInN/src/linearity.jl:37
 [3] removevredundancy!(p::CDDLib.Polyhedron{Float64}; strongly::Bool, planar::Bool, kws::Base.Pairs{Symbol, Float64, Tuple{Symbol}, NamedTuple{(:ztol,), Tuple{Float64}}})
   @ Polyhedra ~/.julia/packages/Polyhedra/3AInN/src/redundancy.jl:159

TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.

If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.

Switch to BinaryBuilder

Hey,

I tried to move this over to the new BinaryBuilder.jl but unfortunately failed somewhat miserably due to my restricted C / Linking skills.

I setup a repository with the build script and a travis config at https://github.com/saschatimme/CDDLibBuilder. Here is the log of the failed build. Unfortunately I currently do not have access to a linux machine with admin rights so I cannot locally debug this issue :(

Is there maybe something obvious I missed?

Segfault in dd_blockelimination

I've been running into a Segfault in CDDLib while using Lazy sets (mentioned in a LazySets.jl issue JuliaReach/LazySets.jl#2278 and NeuralVerification.jl issue sisl/NeuralVerification.jl#131). I've reproduced the issue below, which arises when trying to perform an affine map on a polytope.

Code to reproduce the error:

using LazySets
using Polyhedra
using CDDLib
using LinearAlgebra

# Setup an affine map of a polytope. Create a weight, bias, and polytope to map.
weight = [0.9115126809261311 0.4138440851467826 -0.33913105667038046 0.16700640073917672 -0.235120928568453; 0.6708292278443739 0.7576636017826068 0.8258791757476476 -0.17354379680520315 0.05393765869881095]
bias = [0.9457155975714278, 0.8338760871488544]


x_b = [0.0, 0.0, 48.84693391113945, -0.0, -0.0, -48.84693391113945, 1.8836929121889678, -185.48981164918555, -10.462945198060497, -1720.1125639313502, 30.8157991272438, 2.0328182777903794, -187.72706748216493, 31.333402600081193, 0.8311564016891444, -22.109210103545358, -1.5090925356292428, 24.84987253171124, 22.723250162485456, 46.839496529983926, -3.0989868675615497, 22.996310337995876, 7.619279109784628, -95.3486713467225, -7.854896717148563, 11.076982623957505, 13.357831143154556, 7.571546154878658, -103.47921230520559, 14.32831285002315, 8.135529620293468, 48.79574944863249, 19.26331941987261, 136.7074646969065, 737.0385026793365, 386.7092569137319, 35.510763078591076, 19.326340234088597, 19.984549508693096, 81.48499516064464, -13.09506164510387, -22.242599379716452, -16.602786452793474, -54.966447910936374, -66.1493435694213, -8.126647179260214, -72.17519884364094, -125.60015735472614, 0.0, 0.0, 0.0]
x_A = [-1.0 -0.0 -0.0 -0.0 -0.0; 0.0 0.0 -1.0 0.0 0.0; 0.0 8.076118521420486 0.0 35.19332258166109 13.837840646860146; 1.0 0.0 0.0 0.0 0.0; -0.0 -0.0 1.0 -0.0 -0.0; -0.0 -8.076118521420486 -0.0 -35.19332258166109 -13.837840646860146; -0.0 -3.183853894999074 -0.0 1.2556482650995342 -1.335269967575815; -0.0 -123.48562349701186 -0.0 12.461527940546762 -191.56298093458574; -0.0 -5.8754081576777555 -0.0 -1.0 -9.192156091705593; -0.0 -3954.019716077408 -0.0 516.3823227731308 1.0; -0.0 -2.020421677653688 -0.0 33.13501964692841 -1.5290182089446205; -0.0 -2.9367563418673024 -0.0 1.234074373666857 -1.3523486586045974; -0.0 -124.77068430216175 -0.0 12.582671668841833 -194.00279187884; -0.0 -1.7585066999570298 -0.0 33.51946010990651 -1.5485644695561085; -0.0 -7.218099737090482 -0.0 1.2632052067877908 1.0; -0.0 -15.488240849079062 -0.0 1.5412692709140638 -22.419938049751448; -0.0 -13.01835813695014 -0.0 1.0 4.926303512727481; -0.0 -7.412162155296751 -0.0 27.784232793846485 1.0; -0.0 13.01835813695014 -0.0 -1.0 -4.926303512727481; -0.0 15.488240849079062 -0.0 -1.5412692709140638 22.419938049751448; -0.0 7.412162155296751 -0.0 -27.784232793846485 -1.0; -0.0 13.401396607174302 -0.0 -1.0 -5.278131656113089; -0.0 7.243060544078956 -0.0 1.0 -6.770502738425847; -0.0 19.403024419575345 -0.0 1.0 -188.7132194712973; -0.0 -1.0 -0.0 -5.021202289034041 -3.6682709246498715; -0.0 34.39532800581566 -0.0 1.0 -38.624071876237714; -0.0 3.56454827656787 -0.0 12.19995345388215 -2.282505496082628; -0.0 6.8682285340371765 -0.0 1.0 -6.330770131793407; -0.0 18.257665816436887 -0.0 1.0 -200.17949584749525; -0.0 3.681583201082492 -0.0 13.127471771939016 -2.2825054960826288; -0.0 1.0 -0.0 5.021202289034041 3.6682709246498715; -0.0 8.076118521420485 -0.0 34.85346029447396 14.267156457625715; -0.0 5.8754081576777555 -0.0 1.0 9.192156091705593; -0.0 -18.257665816436887 -0.0 -1.0 200.17949584749525; -0.0 136.66235756616274 -0.0 1.0 985.1793220116999; -0.0 124.77068430216175 -0.0 -12.582671668841833 194.00279187884; -0.0 4.356246013730709 -0.0 1.0 36.423283339663975; -0.0 5.662649285509967 -0.0 1.0 14.188241938928781; -0.0 5.78278828756762 -0.0 1.0 15.078731703355606; -0.0 26.217307003486123 -0.0 -2.4420919880667333 41.45623389823421; -0.0 -3.681583201082492 -0.0 -13.127471771939016 2.2825054960826288; -0.0 -3.538269036057601 -0.0 -21.009712955831077 1.0; -0.0 1.7585066999570298 -0.0 -33.51946010990651 1.5485644695561085; -0.0 -6.767275556297155 -0.0 -60.347490188260586 1.0; -0.0 -5.913573386014781 -0.0 -73.97201065550148 -1.0; -0.0 -1.0 -0.0 -7.655047108966467 -1.0887090115595073; -0.0 -6.557924359755801 -0.0 -80.44710443760286 -1.0; -0.0 -6.004865949367552 -0.0 -164.54018450234872 1.0; -0.0 -1.0 -0.0 -0.0 -0.0; -0.0 -0.0 -0.0 -1.0 -0.0; -0.0 -0.0 -0.0 -0.0 -1.0]
P = LazySets.HPolytope(x_A, x_b)

# Setup the call to eliminate (matching the setup in LazySets._linear_map_hrep)
m, n = size(weight)
N = Float64
₋Id_m = Matrix(-one(N)*I, m, m)
Ax_leq_b = [Polyhedra.HalfSpace(vcat(zeros(N, m), Vector(c.a)), c.b) for c in constraints_list(P)]
y_eq_Mx = [Polyhedra.HyperPlane(vcat(₋Id_m[i, :], Vector(weight[i, :])), zero(N)) for i in 1:m]

# Create the Phrep and then call CDDLib.eliminate
Phrep = Polyhedra.hrep(y_eq_Mx, Ax_leq_b)
Phrep = polyhedron(Phrep, CDDLib.Library(:float)) # define concrete subtype
Peli_block = CDDLib.eliminate(Phrep, (m+1):(m+n), BlockElimination())

Leads to the following stacktrace:

signal (11): Segmentation fault: 11
in expression starting at /Users/castrong/Desktop/Research/NV_Fork/NeuralVerification.jl/examples/SimpleProblem.jl:24
ddf_BlockElimination at /Users/castrong/.julia/dev/CDDLib/deps/usr/lib/libcddgmp.0.dylib (unknown line)
dd_blockelimination at /Users/castrong/.julia/dev/CDDLib/src/CDDLib.jl:22 [inlined]
blockelimination at /Users/castrong/.julia/dev/CDDLib/src/operations.jl:272
unknown function (ip: 0x12588db99)
eliminate at /Users/castrong/.julia/dev/CDDLib/src/polyhedron.jl:187
unknown function (ip: 0x12588d7a9)
do_call at /Users/sabae/buildbot/worker/package_macos64/build/src/interpreter.c:323
eval_stmt_value at /Users/sabae/buildbot/worker/package_macos64/build/src/interpreter.c:362 [inlined]

Build failure on OSX

I'm trying to Pkg.build on OSX with julia v0.4.5, and I'm getting undefined symbol errors from GMP. Any ideas?

  | | |_| | | | (_| |  |  Version 0.4.5 (2016-03-18 00:58 UTC)
 _/ |\__'_|_|_|\__'_|  |  Official http://julialang.org/ release
|__/                   |  x86_64-apple-darwin13.4.0

julia> Pkg.build("CDDLib")
INFO: Building FreeType
INFO: Building GLFW
INFO: Building CDDLib
INFO: Attempting to Create directory /Users/huchette/.julia/v0.4/CDDLib/deps/downloads
INFO: Directory /Users/huchette/.julia/v0.4/CDDLib/deps/downloads already created
INFO: Downloading file https://github.com/blegat/cddlib/archive/d26c8f8a4c9443d886f95201e1356b74b9408ac5.zip
INFO: Done downloading file https://github.com/blegat/cddlib/archive/d26c8f8a4c9443d886f95201e1356b74b9408ac5.zip
INFO: Attempting to Create directory /Users/huchette/.julia/v0.4/CDDLib/deps/src
INFO: Directory /Users/huchette/.julia/v0.4/CDDLib/deps/src already created
INFO: Attempting to Create directory /Users/huchette/.julia/v0.4/CDDLib/deps
INFO: Directory /Users/huchette/.julia/v0.4/CDDLib/deps already created
INFO: Path /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5 already created
INFO: Attempting to Create directory /Users/huchette/.julia/v0.4/CDDLib/deps/builds/libcddgmp
INFO: Directory /Users/huchette/.julia/v0.4/CDDLib/deps/builds/libcddgmp already created
INFO: Changing Directory to /Users/huchette/.julia/v0.4/CDDLib/deps/builds/libcddgmp
INFO: Changing Directory to /Users/huchette/.julia/v0.4/CDDLib/deps/builds/libcddgmp
INFO: Changing Directory to /Users/huchette/.julia/v0.4/CDDLib/deps/builds/libcddgmp
Making install in lib-src
 /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/install-sh -c -d '/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib'
 /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/install-sh -c -d '/Users/huchette/.julia/v0.4/CDDLib/deps/usr/include'
mkdir: /Users/huchette/.julia/v0.4/CDDLib/deps/usr: File exists
 /bin/sh ../libtool   --mode=install /usr/bin/install -c   libcdd.la '/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib'
 /usr/bin/install -c -m 644 /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/lib-src/cddstd.h /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/lib-src/cdd.h /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/lib-src/cddmp.h /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/lib-src/cddtypes.h /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/lib-src/setoper.h '/Users/huchette/.julia/v0.4/CDDLib/deps/usr/include'
libtool: install: /usr/bin/install -c .libs/libcdd.0.dylib /Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib/libcdd.0.dylib
libtool: install: (cd /Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib && { ln -s -f libcdd.0.dylib libcdd.dylib || { rm -f libcdd.dylib && ln -s libcdd.0.dylib libcdd.dylib; }; })
libtool: install: /usr/bin/install -c .libs/libcdd.lai /Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib/libcdd.la
libtool: install: /usr/bin/install -c .libs/libcdd.a /Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib/libcdd.a
libtool: install: chmod 644 /Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib/libcdd.a
libtool: install: ranlib /Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib/libcdd.a
Making install in src
make[2]: Nothing to be done for `install-data-am'.
 /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/install-sh -c -d '/Users/huchette/.julia/v0.4/CDDLib/deps/usr/bin'
  /bin/sh ../libtool   --mode=install /usr/bin/install -c scdd lcdd redcheck fourier projection adjacency allfaces testcdd1 testshoot testcdd2 testlp1 testlp2 testlp3 '/Users/huchette/.julia/v0.4/CDDLib/deps/usr/bin'
libtool: install: /usr/bin/install -c .libs/scdd /Users/huchette/.julia/v0.4/CDDLib/deps/usr/bin/scdd
libtool: install: /usr/bin/install -c .libs/lcdd /Users/huchette/.julia/v0.4/CDDLib/deps/usr/bin/lcdd
libtool: install: /usr/bin/install -c .libs/redcheck /Users/huchette/.julia/v0.4/CDDLib/deps/usr/bin/redcheck
libtool: install: /usr/bin/install -c .libs/fourier /Users/huchette/.julia/v0.4/CDDLib/deps/usr/bin/fourier
libtool: install: /usr/bin/install -c .libs/projection /Users/huchette/.julia/v0.4/CDDLib/deps/usr/bin/projection
libtool: install: /usr/bin/install -c .libs/adjacency /Users/huchette/.julia/v0.4/CDDLib/deps/usr/bin/adjacency
libtool: install: /usr/bin/install -c .libs/allfaces /Users/huchette/.julia/v0.4/CDDLib/deps/usr/bin/allfaces
libtool: install: /usr/bin/install -c .libs/testcdd1 /Users/huchette/.julia/v0.4/CDDLib/deps/usr/bin/testcdd1
libtool: install: /usr/bin/install -c .libs/testshoot /Users/huchette/.julia/v0.4/CDDLib/deps/usr/bin/testshoot
libtool: install: /usr/bin/install -c .libs/testcdd2 /Users/huchette/.julia/v0.4/CDDLib/deps/usr/bin/testcdd2
libtool: install: /usr/bin/install -c .libs/testlp1 /Users/huchette/.julia/v0.4/CDDLib/deps/usr/bin/testlp1
libtool: install: /usr/bin/install -c .libs/testlp2 /Users/huchette/.julia/v0.4/CDDLib/deps/usr/bin/testlp2
libtool: install: /usr/bin/install -c .libs/testlp3 /Users/huchette/.julia/v0.4/CDDLib/deps/usr/bin/testlp3
Making install in lib-src-gmp
 /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/install-sh -c -d '/Users/huchette/.julia/v0.4/CDDLib/deps/usr/include'
 /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/install-sh -c -d '/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib'
 /bin/sh ../libtool   --mode=install /usr/bin/install -c   libcddgmp.la '/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib'
 /usr/bin/install -c -m 644 /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/lib-src-gmp/cddstd.h /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/lib-src-gmp/cdd.h /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/lib-src-gmp/cddmp.h /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/lib-src-gmp/cddtypes.h /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/lib-src-gmp/cddstd_f.h /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/lib-src-gmp/cdd_f.h /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/lib-src-gmp/cddmp_f.h /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/lib-src-gmp/cddtypes_f.h /Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/lib-src-gmp/setoper.h '/Users/huchette/.julia/v0.4/CDDLib/deps/usr/include'
libtool: install: /usr/bin/install -c .libs/libcddgmp.0.dylib /Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib/libcddgmp.0.dylib
libtool: install: (cd /Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib && { ln -s -f libcddgmp.0.dylib libcddgmp.dylib || { rm -f libcddgmp.dylib && ln -s libcddgmp.0.dylib libcddgmp.dylib; }; })
libtool: install: /usr/bin/install -c .libs/libcddgmp.lai /Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib/libcddgmp.la
libtool: install: /usr/bin/install -c .libs/libcddgmp.a /Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib/libcddgmp.a
libtool: install: chmod 644 /Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib/libcddgmp.a
libtool: install: ranlib /Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib/libcddgmp.a
Making install in src-gmp
/bin/sh ../libtool  --tag=CC   --mode=link gcc  -g -O2 -L/usr/local/lib -L/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib -Wl,-rpath -Wl,/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib -o projection_gmp projection.o ../lib-src-gmp/libcddgmp.la
/bin/sh ../libtool  --tag=CC   --mode=link gcc  -g -O2 -L/usr/local/lib -L/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib -Wl,-rpath -Wl,/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib -o fourier_gmp fourier.o ../lib-src-gmp/libcddgmp.la
/bin/sh ../libtool  --tag=CC   --mode=link gcc  -g -O2 -L/usr/local/lib -L/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib -Wl,-rpath -Wl,/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib -o adjacency_gmp adjacency.o ../lib-src-gmp/libcddgmp.la
/bin/sh ../libtool  --tag=CC   --mode=link gcc  -g -O2 -L/usr/local/lib -L/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib -Wl,-rpath -Wl,/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib -o testlp2_gmp testlp2.o ../lib-src-gmp/libcddgmp.la
/bin/sh ../libtool  --tag=CC   --mode=link gcc  -g -O2 -L/usr/local/lib -L/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib -Wl,-rpath -Wl,/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib -o testlp3_gmp testlp3.o ../lib-src-gmp/libcddgmp.la
libtool: link: gcc -g -O2 -Wl,-rpath -Wl,/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib -o .libs/projection_gmp projection.o  -L/usr/local/lib -L/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib ../lib-src-gmp/.libs/libcddgmp.dylib
Undefined symbols for architecture x86_64:
  "___gmpq_init", referenced from:
      _main in projection.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [projection_gmp] Error 1
make[1]: *** Waiting for unfinished jobs....
libtool: link: gcc -g -O2 -Wl,-rpath -Wl,/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib -o .libs/adjacency_gmp adjacency.o  -L/usr/local/lib -L/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib ../lib-src-gmp/.libs/libcddgmp.dylib
libtool: link: gcc -g -O2 -Wl,-rpath -Wl,/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib -o .libs/fourier_gmp fourier.o  -L/usr/local/lib -L/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib ../lib-src-gmp/.libs/libcddgmp.dylib
Undefined symbols for architecture x86_64:
  "___gmpq_clear", referenced from:
      _main in adjacency.o
  "___gmpq_init", referenced from:
      _main in adjacency.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [adjacency_gmp] Error 1
Undefined symbols for architecture x86_64:
  "___gmpq_clear", referenced from:
      _main in fourier.o
  "___gmpq_init", referenced from:
      _main in fourier.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [fourier_gmp] Error 1
libtool: link: gcc -g -O2 -Wl,-rpath -Wl,/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib -o .libs/testlp3_gmp testlp3.o  -L/usr/local/lib -L/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib ../lib-src-gmp/.libs/libcddgmp.dylib
libtool: link: gcc -g -O2 -Wl,-rpath -Wl,/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib -o .libs/testlp2_gmp testlp2.o  -L/usr/local/lib -L/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib ../lib-src-gmp/.libs/libcddgmp.dylib
Undefined symbols for architecture x86_64:
  "___gmpq_set_si", referenced from:
      _main in testlp2.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [testlp2_gmp] Error 1
make: *** [install-recursive] Error 1
===============================[ ERROR: CDDLib ]================================

LoadError: failed process: Process(setenv(`make -j8 install`,Union{ASCIIString,UTF8String}["LSCOLORS=exfxcxdxbxGxDxabagacad","PATH=/Users/huchette/.julia/v0.4/CDDLib/deps/usr/bin:/Applications/Julia-0.4.5.app/Contents/Resources/julia/bin:/Applications/Julia-0.4.5.app/Contents/Resources/julia/libexec/git-core:/Applications/Julia-0.4.5.app/Contents/Resources/julia/bin:/Applications/Julia-0.4.5.app/Contents/Resources/julia/libexec/git-core:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/TeX/texbin:/Users/huchette/baron-osx64:/usr/texbin/","EDITOR=nano","LD_LIBRARY_PATH=/Users/huchette/Applications/ILOG/CPLEX_Studio126/cplex/bin/x86-64_osx","TEXINPUTS=:/Users/huchette/Dropbox/latex/sty","TK_LIBRARY=/System/Library/Frameworks/Tk.framework/Versions/8.5/Resources/Scripts","GREP_COLOR=37;45","ITERM_PROFILE=Default","LESS_TERMCAP_us=\e[01;32m","LESS_TERMCAP_mb=\e[01;31m","VISUAL=nano","GIT_TEMPLATE_DIR=/Applications/Julia-0.4.5.app/Contents/Resources/julia/share/git-core","Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.dPsnp0yqso/Render","USER=huchette","GREP_COLORS=mt=37;45","LESS=-F -g -i -M -R -S -w -X -z-4","vcs_info_msg_0_=.","SHELL=/bin/zsh","TMPDIR=/var/folders/gb/yjt8smfx2v51bvshtc_hdxy80000gn/T/","LESS_TERMCAP_me=\e[0m","LESS_TERMCAP_so=\e[00;47;30m","LESS_TERMCAP_se=\e[0m","ITERM_SESSION_ID=w0t0p1:D20DBE3D-E1FA-44D9-AA6E-3AC57778D18C","TERM=xterm-256color","HOME=/Users/huchette","XPC_FLAGS=0x0","LESS_TERMCAP_md=\e[01;31m","XPC_SERVICE_NAME=0","GIT_EXEC_PATH=/Applications/Julia-0.4.5.app/Contents/Resources/julia/libexec/git-core","__CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0","BROWSER=open","LANG=en_US.UTF-8","LOGNAME=huchette","SHLVL=1","BARON_EXEC=/Users/huchette/baron-osx64/baron","SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.GhimodtFUS/Listeners","OLDPWD=/Users/huchette/.julia/v0.4/CollisionAvoidance","_=/Applications/Julia-0.4.5.app/Contents/Resources/julia/bin/julia","PAGER=less","LESS_TERMCAP_ue=\e[0m","SECURITYSESSIONID=186a7","TERM_PROGRAM_VERSION=2.9.20160426","COMMAND_MODE=unix2003","PWD=/Users/huchette/.julia/v0.4/METADATA","DISPLAY=/private/tmp/com.apple.launchd.i1z2XTnpdz/org.macosforge.xquartz:0","TERM_PROGRAM=iTerm.app","CPPFLAGS= -I/Users/huchette/.julia/v0.4/CDDLib/deps/usr/include -I/Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/lib-src -I/Users/huchette/.julia/v0.4/CDDLib/deps/src/cddlib-d26c8f8a4c9443d886f95201e1356b74b9408ac5/lib-src-gmp","FONTCONFIG_PATH=/Applications/Julia-0.4.5.app/Contents/Resources/julia/etc/fonts","LDFLAGS= -L/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib -Wl,-rpath -Wl,/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib","TERM_SESSION_ID=w0t0p1:D20DBE3D-E1FA-44D9-AA6E-3AC57778D18C","PKG_CONFIG_PATH=/Users/huchette/.julia/v0.4/CDDLib/deps/usr/lib/pkgconfig","vcs_info_msg_1_=METADATA/git/metadata-v2 ","LS_COLORS=di=34:ln=35:so=32:pi=33:ex=31:bd=36;01:cd=33;01:su=31;40;07:sg=36;40;07:tw=32;40;07:ow=33;40;07:","OPENBLAS_MAIN_FREE=1"]), ProcessExited(2)) [2]
while loading /Users/huchette/.julia/v0.4/CDDLib/deps/build.jl, in expression starting on line 60

================================================================================

===================================================[ BUILD ERRORS ]===================================================

WARNING: CDDLib had build errors.

 - packages with build errors remain installed in /Users/huchette/.julia/v0.4
 - build the package(s) and all dependencies with `Pkg.build("CDDLib")`
 - build a single package by running its `deps/build.jl` script

======================================================================================================================

Build failure on OS X: 'gmp.h' file not found

I have a problem similar to but different from #2 and #4.
The output is here.

  • configure says

    checking gmp.h usability... no
    checking gmp.h presence... no
    

    but gmp.h exists in $HOME/.julia/v0.5/Homebrew/deps/usr/Cellar/gmp/6.1.1/include.

  • $HOME/.julia/v0.5/CDDLib/deps/usr does not exists.

  • I don't have Homebrew (not Homebrew.jl) installed in this machine. Build succeeded in my other machine with Homebrew installed.

How can I tell cdd the location of gmp.h?

Build Error on Windows

I tried to build CDDLib with Julia 1.1.0 on Windows 10 and got the following error:

(v1.1) pkg> build CDDLib
  Building SpecialFunctions → `C:\Users\wueli\.julia\packages\SpecialFunctions\fvheQ\deps\build.log`
  Building Homebrew ────────→ `C:\Users\wueli\.julia\packages\Homebrew\s09IX\deps\build.log`
  Building CDDLib ──────────→ `C:\Users\wueli\.julia\packages\CDDLib\Okc0M\deps\build.log`
┌ Error: Error building `CDDLib`:
│ ERROR: LoadError: LibraryProduct(nothing, ["libcddgmp"], :libcddgmp, "Prefix(C:\\Users\\wueli\\.julia\\packages\\CDDLib\\Okc0M\\deps\\usr)") is not satisfied, cannot generate deps.jl!
│ Stacktrace:
│  [1] error(::String) at .\error.jl:33
│  [2] #write_deps_file#156(::Bool, ::Function, ::String, ::Array{LibraryProduct,1}) at C:\Users\wueli\.julia\packages\BinaryProvider\TcAwt\src\Products.jl:414
│  [3] (::getfield(BinaryProvider, Symbol("#kw##write_deps_file")))(::NamedTuple{(:verbose,),Tuple{Bool}}, ::typeof(write_deps_file), ::String, ::Array{LibraryProduct,1}) at .\none:0
│  [4] top-level scope at none:0
│  [5] include at .\boot.jl:326 [inlined]
│  [6] include_relative(::Module, ::String) at .\loading.jl:1038
│  [7] include(::Module, ::String) at .\sysimg.jl:29
│  [8] include(::String) at .\client.jl:403
│  [9] top-level scope at none:0
│ in expression starting at C:\Users\wueli\.julia\packages\CDDLib\Okc0M\deps\build.jl:48
└ @ Pkg.Operations C:\cygwin\home\Administrator\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.1\Pkg\src\Operations.jl:1075

i.e. I need some dependencies. So, I was wondering if the cdd library is supported on Windows in general?

Broken build on Windows and julia 1.4.1

Thanks for your great work!

I switched from Julia 1.3.1 to Julia 1.4.1 and wanted to build CDDLib on my Windows machine with Julia 1.4.1 (see version info below) and I got the following error. The build works on Julia 1.3.1.

(@v1.4) pkg> build CDDLib
ERROR: A dependency was named twice in target `test`

Not sure what to do with this error message, maybe you can help me out.

julia> versioninfo()
Julia Version 1.4.1
Commit 381693d3df* (2020-04-14 17:20 UTC)
Platform Info:
  OS: Windows (x86_64-w64-mingw32)
  CPU: Intel(R) Core(TM) i5-7300U CPU @ 2.60GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-8.0.1 (ORCJIT, skylake)

Adjacent vertices (edges)

Hello,

I see in the cddlib documentation that there is a function to get the list of adjacent vertices. I spent the afternoon to try to get it using Julia, I didn't manage. Can one get this list with CDDLib.jl?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.