案例来自于Rust Programming by Example
,由于按照书籍的操作会存在一些错误,所以用此博客来记录更多的细节。
实验环境
- MacOS M2:
13.5.2
- Rust:
1.70.0
初始化开发环境
- 创建工程
cargo new tetris
- 添加依赖于
Cargo.toml
[package]
name = "tetris"
version = "0.0.1"
[dependencies]
sdl2 = "0.34.5"
- 安装SDL2
brew install sdl2
- 配置环境变量
export RUSTFLAGS="-L /opt/homebrew/lib"
此处RUSTFLAGS
环境变量的内容需要根据自己的SDL2库的安装路径来配置,由于我的库安装路径是/opt/homebrew/lib
下。
执行cargo build
编译程序会依赖SDL的动态库;同时我也尝试了其他两种方法并没有成功
其它方法一:
设置环境变量DYLD_LIBRARY_PATH
export DYLD_LIBRARY_PATH=/opt/homebrew/lib