# Linprog and Clp under JuMP or MathOptInterface - Why is it so hard?

**URL:** <https://discourse.julialang.org/t/linprog-and-clp-under-jump-or-mathoptinterface-why-is-it-so-hard/39323>\
**Category:** Optimization (Mathematical)\
**Created:** [May 12, 2020, 3:39am UTC](https://discourse.julialang.org/t/linprog-and-clp-under-jump-or-mathoptinterface-why-is-it-so-hard/39323 "2020-05-12T03:39:59Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![blegat](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/blegat/32/217090_2.png) [@blegat](https://discourse.julialang.org/u/blegat)\
**Post date:** [May 12, 2020, 7:28am UTC](https://discourse.julialang.org/t/linprog-and-clp-under-jump-or-mathoptinterface-why-is-it-so-hard/39323/2 "2020-05-12T07:28:51Z")

</div>

The support for MathProgBase was just dropped in v0.8 that was released 16 hours ago. I guess you were using Clp.jl v0.7.2 on your mac.  
The recommendation is to use JuMP now instead of `linprog`. From the input of `linprog`, you can do

```julia
using JuMP, Clp
model = Model(Clp.Optimizer)
@variable(model, lb[i] <= x[i=1:length(lb)] <= ub[i])
@objective(model, Max, f'x)
# Depending on the `sense` vector, you may need to split it into `<=` and `>=` constraints too
@constraint(model, A * x .== b)
optimize!(model)

```

---

_[View the full topic](https://discourse.julialang.org/t/linprog-and-clp-under-jump-or-mathoptinterface-why-is-it-so-hard/39323)._
