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

如何在自定义目录安装GSL库并修改RX-DMFIT的Makefile调用

操作步骤及Makefile修改方案

一、安装GSL到自定义目录

假设你将GSL安装到自己有权限的路径(比如/global/scratch/your_username/gsl-install,请替换为实际路径),执行以下命令:

  1. 解压下载的GSL源码包,进入解压后的目录
  2. 配置安装路径:
    ./configure --prefix=/global/scratch/your_username/gsl-install
    
  3. 编译源码(-j参数启用多线程编译,加快速度):
    make -j$(nproc)
    
  4. 完成安装:
    make install
    

二、修改RX-DMFIT的Makefile

打开RX-DMFIT目录下的Makefile,做以下两处修改:

1. 添加GSL路径变量

在原有的prefix变量下方新增gsl_prefix,指向你的GSL安装目录:

# prefix should point to location of darksusy
prefix = /global/scratch/projects/general/RX-DMFIT/darksusy-6.3.1
# 新增:指定GSL的安装前缀
gsl_prefix = /global/scratch/your_username/gsl-install

2. 更新编译与链接选项

修改example1和example2的编译规则,添加GSL的头文件搜索路径、库文件搜索路径,以及运行时路径绑定:

example1: $(FILES) example1.cpp
    $(CXX) -o example1 $(FILES) example1.cpp  \
     -I$(prefix)/include -I$(gsl_prefix)/include \
     -L$(prefix)/lib -L$(gsl_prefix)/lib \
     -Wl,-rpath,$(gsl_prefix)/lib \
     $(LDLIBS)

example2: $(FILES) example2.cpp
    $(CXX) -o example2 $(FILES) example2.cpp  \
     -I$(prefix)/include -I$(gsl_prefix)/include \
     -L$(prefix)/lib -L$(gsl_prefix)/lib \
     -Wl,-rpath,$(gsl_prefix)/lib \
     $(LDLIBS)
  • -I$(gsl_prefix)/include:告诉编译器到GSL的include目录查找头文件
  • -L$(gsl_prefix)/lib:告诉链接器到GSL的lib目录查找库文件
  • -Wl,-rpath,$(gsl_prefix)/lib:让编译后的程序运行时自动加载自定义路径下的GSL库,无需每次运行手动设置LD_LIBRARY_PATH环境变量

三、编译RX-DMFIT

修改完成后,在RX-DMFIT目录执行以下命令编译:

make

即可生成example1和example2可执行文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 00:55:20