用于开发GUI应用程序的Windows上的Rust安装

时间:2016-08-04 19:26:05

标签: windows user-interface rust

TL:DR;

我是否可以使用Rust在Win 10(64)上编写GUI程序而无需安装完整的MinGW工具链(也不是MS等效工具链)?

<子> 补充问题:

<子> - 如果没有,我应该继续安装MinGW吗?

<子> - Windows 10周年更新中的任何GNUish都会改变这些吗?

更长的版本

I saw Rust是15分钟前最受欢迎的编程语言......

read

  

GNU构建的基本使用不需要额外的软件安装。

     

Rust对GNU ABI的支持更为成熟,建议用于典型用途。

所以我将Windows (GNU ABI †) (.msi) 64-bit下载到运行Windows 10的PC上。

TUI

我阅读了一些基本的介绍并使用rustc来编译Hello World!然后跑好了。然后我阅读了cargo并重新组织了buit并使用它运行相同的代码。

GUI

然后我搜索了Rust GUI并找到了Kiss_UI

  

Rust的简单用户界面

所以我做了cargo new Hello_GUI --bin并添加了

[dependencies.kiss-ui]
git = "https://github.com/cybergeek94/kiss-ui"

到Cargo.toml

我将该网站上的一个简单示例剪切并粘贴到main.rs

然后我跑了cargo run --verbose。它确实

   Updating git repository `https://github.com/cybergeek94/kiss-ui`
    Updating registry `https://github.com/rust-lang/crates.io-index`
 Downloading iup-sys v0.0.3
 Downloading libc v0.2.14
 Downloading libc v0.1.12
   Compiling libc v0.1.12

...

warning: crate `Hello_GUI` should have a snake case name such as `hello_gui`, #[warn(non_snake_case)] on by default
error: linking with `gcc` failed: exit code: 1
note: "gcc" "-Wl,--enable-long-section-names" ...
note: ld: cannot find -liup
error: aborting due to previous error

所以我学会了两件事

  • 我需要使用蛇案。

  • GUI编程不是&#34;基本用法&#34;。

我对这两点中的任何一点都没有抱怨,但可以使用一两条关于第二点的线索:

假设我想以简单的方式编写一个类似于Hello World的GUI,那么我现在的主要选择是什么?

1 个答案:

答案 0 :(得分:4)

According to its documentation,kiss-UI取决于the IUP library

来自gcccan't find -liup)的错误表明您未安装IUP。您可以安装它并使其工作;这取决于IUP bindings used by kiss-UI是否可以应对Windows。

可以在awesome-rust找到其他一些GUI库。有像Qt和Gtk这样的库的绑定。如果您了解Windows API,还可以查看winapi crate

如果你想避免弄乱链接和东西,你可以尝试使用像conrod这样的纯锈库,这应该只是工作&#39;在窗户上。

回答更广泛的问题:

请参阅下载页面上的footnote。生锈的MSVC版本取决于安装的MSVC。 GNU / MinGW构建是独立的。