fltk-rs踩坑记录,解决could not find native static library cfltk, perhaps an -L flag is missing 问题
Posted IP大侠
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了fltk-rs踩坑记录,解决could not find native static library cfltk, perhaps an -L flag is missing 问题相关的知识,希望对你有一定的参考价值。
fltk-rs踩坑记录
最近想用rust写一个简单的gui程序,所以查了一下rust的gui库,好像rust在gui方面发展还不好,但是我要实现的很简单,所以最终选择了fltk-rs来开发。
现在只是为了跑通helloworld,所以只碰到这一个问题,以后在碰到别的会再补充。
项目地址:
https://github.com/fltk-rs/fltk-rs
按说明安装
按照作者的说明,依赖添加为
[dependencies]
fltk = "^1.3"
然后把helloworld的代码写好后,执行cargo run。
但是编译的时候出现问题,总是报错
Compiling fltk-sys v1.0.17
Compiling fltk v1.0.18
error: could not find native static library cfltk, perhaps an -L flag is missing?
error: aborting due to previous error
error: could not compile fltk-sys
找寻解决方案
于是我在作者的github的issue里面找到了一个类似的,https://github.com/fltk-rs/fltk-rs/issues/723, 但是得到的答案是把依赖改为
[dependencies]
fltk = version = "1", features = ["fltk-bundled"]
还有一个也比较类似:
https://github.com/fltk-rs/fltk-rs/discussions/1116
最终在这里找到了答案:
https://fltk-rs.github.io/fltk-book/Setup.html#detailed-setup
原来运行fltk-rs需要在电脑上安装有cmake和git,我电脑上没有安装cmake
,所以有这个报错信息。
所以我的目的就是安装cmake
检测是否安装了cmake
在命令行中输入 cmake --version 如果返回了版本信息,就说明安装成功了,否则就是未安装成功
mac安装地址:
https://blog.csdn.net/xujiuba/article/details/107234040
windows安装教程:
https://blog.csdn.net/u011231598/article/details/80338941
按照教程安装完成之后,要重新打开一个shell(在安装cmake之前的shell界面没法使用到cmake命令),然后输入cmake --version
,能看到版本信息即为安装成功
最后再编译
保证 git --version
和 cmake --version
能够获取到版本信息,则可以再次编译项目了
这次应该就可以成功编译了。
其他问题
- 如果是windows的话,build之后的exe文件运行的时候,后面总有一个黑色的命令行界面,如何去除?
在main.rs 的最前面加上#![windows_subsystem = "windows"]
,然后再编译即可
以上是关于fltk-rs踩坑记录,解决could not find native static library cfltk, perhaps an -L flag is missing 问题的主要内容,如果未能解决你的问题,请参考以下文章
flutter踩坑01:下载包失败:Could not resolve all artifacts for configuration....
hadoop运行踩坑:Error: Could not find or load main class org.apache.hadoop.mapreduce.v2.app.
博客项目踩坑-Could not write JSON: Infinite recursion (StackOverflowError)
博客项目踩坑-Could not write JSON: Infinite recursion (StackOverflowError)
博客项目踩坑-Could not write JSON: Infinite recursion (StackOverflowError)
[踩坑]elasticsearch-7.12.1 启动报错could not find java in bundled JDK at /opt/elasticsearch-7.12.1/jdk/bin