You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows下安装CoinCbc库并运行good_lp Rust示例教程

Windows下运行Rust good_lp crate的简易教程

一、基础环境准备

  • 安装Rust工具链:确保已通过rustup完成安装,若未安装,直接执行rustup安装程序并选择默认配置。
  • 安装MSVC构建工具:打开Visual Studio Installer,勾选「使用C++的桌面开发」工作负载,安装包含的MSVC编译器、Windows SDK等组件。

二、配置CoinCbc依赖

推荐使用vcpkg管理依赖,步骤如下:

  • 克隆vcpkg仓库到本地目录,执行.\vcpkg\bootstrap-vcpkg.bat完成初始化。
  • 安装CoinCbc库:执行.\vcpkg install coincbc:x64-windows(32位系统替换为coincbc:x86-windows)。
  • 配置环境变量:将vcpkg安装目录下的installed/x64-windows/bin(对应架构路径)添加到系统PATH,确保动态库可被找到。

若手动安装预编译库:

  • 下载对应系统架构的CoinCbc预编译包,解压后将以下路径分别添加到对应环境变量:
    • 库文件目录 → LIB环境变量
    • 头文件目录 → INCLUDE环境变量
    • 动态库目录 → PATH环境变量

三、创建并配置Rust项目

  • 新建项目:执行cargo new good_lp_demo && cd good_lp_demo。
  • 修改Cargo.toml添加依赖:
    [dependencies]
    good_lp = { version = "0.20", features = ["cbc"] }
    
    若需静态链接(避免动态库依赖问题),可改为features = ["cbc-static"]。
  • 替换src/main.rs内容为示例代码:
    use std::error::Error;
    use good_lp::{constraint, default_solver, Solution, SolverModel, variables};
    
    fn main() -> Result<(), Box<dyn Error>> {
        variables! {
            vars:
                   a <= 1;
              2 <= b <= 4;
        } // variables can also be added dynamically
        let solution = vars.maximise(10 * (a - b / 5) - b)
            .using(default_solver) // multiple solvers available
            .with(constraint!(a + 2 <= b))
            .with(constraint!(1 + a >= 4 - b))
            .solve()?;
        println!("a={}   b={}", solution.value(a), solution.value(b));
        println!("a + b = {}", solution.eval(a + b));
        Ok(())
    }
    

四、运行项目

在项目目录下执行cargo run,正常情况下会输出求解结果:

a=1   b=3
a + b = 4

注意事项

  • 架构一致性:确保Rust工具链的架构(x86/x64)与CoinCbc库的架构完全匹配,否则会出现链接失败。
  • 环境变量生效:修改环境变量后,需重启终端或IDE,确保新配置被读取。
  • 静态链接优先:若遇到动态库找不到的问题,优先使用cbc-static特性进行静态链接,无需额外配置动态库路径。

内容的提问来源于stack exchange,提问作者Rust94

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 06:47:11