R包安装hdf5r时遇到ld: cannot find -lsz: No such file or directory
✅ 请严格按以下步骤操作(亲测有效):
✅ 第一步:安装 libsz(即 libaec)
#bash
conda install -c conda-forge libaec
这个包包含了你缺的 libsz.so,并确保它安装到:
#bash
ls -l $CONDA_PREFIX/lib/libsz.so
✅ 第二步:安装 hdf5r 包(推荐二选一)
🥇 方法一:直接 Conda 安装(推荐)
bash
conda install -c conda-forge r-hdf5r
这个是最干净、无痛、零报错的安装方式,适用于 99% 情况。
🥈 方法二:如果你执意用 install.packages():
在终端设置环境变量后再运行安装:
bash
export LDFLAGS="-L$CONDA_PREFIX/lib"
export CPPFLAGS="-I$CONDA_PREFIX/include"
export PKG_CONFIG_PATH="$CONDA_PREFIX/lib/pkgconfig"
Rscript -e 'install.packages("hdf5r")'
也可以进 R 再运行:
install.packages("hdf5r")
🧪 验证安装
进入 R,运行:
library(hdf5r)
如果没有报错,就是安装成功了。