GNU科学函数库[参考手册][v0.1 Build 090201 Beta][GNU Scientific Library]

来源:互联网 发布:李春贤调离新疆知乎 编辑:程序博客网 时间:2024/04/29 10:35

--------------------------仅供学习使用 未经允许 严禁转载!-----------------------------

 

第二章:使用函数库

2 函数库的使用

本章介绍如何使用 GSL 编译程序,并介绍它的约定惯例(习惯用法)。

 

2.1 一个简单的程序

下面的小程序展示了使用函数库计算当 x=5 时 bessel 函数 J0(x) 的值,

 

输出如下所示,它的精度为双精度,
J0(5) = -1.775967713143382920e-01
编译此程序需要的步骤在以下各节中描述。

 

2.2编译与链接
函数库头文件安装在它们自己的"GSL"文件夹中。你需要写的任何预处理include声明应包括用"gsl/"的目录前缀。

 

如果目录没有按照编译器的标准搜索路径进行安装,你还需要提供预处理命令它的位置作为命令行标志。"gsl"目录的默认位置为"/usr/local/include/gsl"。使用GNU C 编译器 gcc的关于源文件"example.c"的一个典型的编译命令为,

结果在目标文件"example.o"中。gcc自动默认搜索的include路径为"/usr/local/include",所以选项-I实际上被忽略当GSL被安装在它的默认位置。

---------------------------------------------------------------------------------------------------------------

                                                                   省略一些

---------------------------------------------------------------------------------------------------------------

 

2.3共享函数库
运行程序链接共享版本的函数库,操作系统必须能够在运行时间内查找相应的".so"文件。如果不能找到函数库,下面的错误将发生:

为避免这个错误,定义shell变量LD_LIBRARY_PATH去包括函数库所安装的目录。
    例如,在Bournd shell(/bin/sh或/bin/bash),函数库搜索路径可用以下命令设置:

在 C-shell(/bin/csh或/bin/tcsh)中相似的命令为,

在以上例子中标准的C-shell提示符为百分号"%",并且不是命令的一部分故不用打出。
    为了节省每次输入这些命令,它们应放在单独的或全系统登陆文件夹中。
    为编译一个静态链接版本的程序,在gcc中使用-static选项,

原创粉丝点击