Quantcast

using system libraries for Cbc, Ipopt in JuMP

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

using system libraries for Cbc, Ipopt in JuMP

Kostas Oikonomou
I'm just starting with JuMP, and I have Julia 0.5.0 on FreeBSD 11.  Since BSD is
somewhat less popular than Linux, building Cbc, Ipopt, etc, needs some patches.
This patching is done automatically if one uses FreeBSD's "ports" for Cbc,
Ipopt, etc.  The .so libraries are then installed system-wide in /usr/local/lib,
and other files go in /usr/local/include, etc.

So the question is: how does one go about using such system packages/libraries
with Pkg.add("Cbc"), for example?  I understand that the build.jl file has to be
modified, but how?

Thanks for any help.

            Kostas

--
You received this message because you are subscribed to the Google Groups "julia-opt" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
Visit this group at https://groups.google.com/group/julia-opt.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: using system libraries for Cbc, Ipopt in JuMP

Miles Lubin
If the libraries are in the system library path (e.g., LD_LIBRARY_PATH on Linux) then they should be found automatically, and you shouldn't need to modify the build script.
To check which libraries are actually being used, look at .julia/v0.5/Cbc/deps/deps.jl. You can also modify this file if you'd like, but it will be overwritten on the next Pkg.build.

On Friday, November 11, 2016 at 9:36:29 AM UTC-5, Kostas Oikonomou wrote:
I'm just starting with JuMP, and I have Julia 0.5.0 on FreeBSD 11.  Since BSD is
somewhat less popular than Linux, building Cbc, Ipopt, etc, needs some patches.
This patching is done automatically if one uses FreeBSD's "ports" for Cbc,
Ipopt, etc.  The .so libraries are then installed system-wide in /usr/local/lib,
and other files go in /usr/local/include, etc.

So the question is: how does one go about using such system packages/libraries
with Pkg.add("Cbc"), for example?  I understand that the build.jl file has to be
modified, but how?

Thanks for any help.

            Kostas

--
You received this message because you are subscribed to the Google Groups "julia-opt" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
Visit this group at https://groups.google.com/group/julia-opt.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: using system libraries for Cbc, Ipopt in JuMP

Kostas Oikonomou

On Sunday, November 13, 2016 at 3:12:14 PM UTC-5, Miles Lubin wrote:
If the libraries are in the system library path (e.g., LD_LIBRARY_PATH on Linux) then they should be found automatically, and you shouldn't need to modify the build script.

Yes, the system libraries are automatically on LD_LIBRARY_PATH. 
 
To check which libraries are actually being used, look at .julia/v0.5/Cbc/deps/deps.jl.

When I download  Cbc.jl-master.zip from github, I don't see Cbc/deps/deps.jl.  Only deps/build.jl.

You can also modify this file if you'd like, but it will be overwritten on the next Pkg.build.

I don't want to modify it, if I don't have to.  But my understanding is that the only way to install Cbc is to
say Pkg.add("Cbc"), which will then run build.jl, and this will download source for all dependencies,
including source for Cbc itself, and then start compiling everything.  If I have Cbc and all its dependencies
already installed in /usr/local/{lib,bin,include} etc., how will this prevent build.jl from doing the above?

On Friday, November 11, 2016 at 9:36:29 AM UTC-5, Kostas Oikonomou wrote

--
You received this message because you are subscribed to the Google Groups "julia-opt" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
Visit this group at https://groups.google.com/group/julia-opt.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: using system libraries for Cbc, Ipopt in JuMP

Miles Lubin

The build.jl script will only attempt to download and compile on its own if it does not find Cbc in the system libraries.


On Nov 13, 2016 18:08, "Kostas Oikonomou" <[hidden email]> wrote:

On Sunday, November 13, 2016 at 3:12:14 PM UTC-5, Miles Lubin wrote:
If the libraries are in the system library path (e.g., LD_LIBRARY_PATH on Linux) then they should be found automatically, and you shouldn't need to modify the build script.

Yes, the system libraries are automatically on LD_LIBRARY_PATH. 
 
To check which libraries are actually being used, look at .julia/v0.5/Cbc/deps/deps.jl.

When I download  Cbc.jl-master.zip from github, I don't see Cbc/deps/deps.jl.  Only deps/build.jl.

You can also modify this file if you'd like, but it will be overwritten on the next Pkg.build.

I don't want to modify it, if I don't have to.  But my understanding is that the only way to install Cbc is to
say Pkg.add("Cbc"), which will then run build.jl, and this will download source for all dependencies,
including source for Cbc itself, and then start compiling everything.  If I have Cbc and all its dependencies
already installed in /usr/local/{lib,bin,include} etc., how will this prevent build.jl from doing the above?

On Friday, November 11, 2016 at 9:36:29 AM UTC-5, Kostas Oikonomou wrote

--
You received this message because you are subscribed to the Google Groups "julia-opt" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
Visit this group at https://groups.google.com/group/julia-opt.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "julia-opt" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
Visit this group at https://groups.google.com/group/julia-opt.
For more options, visit https://groups.google.com/d/optout.
Loading...