QNX下使用fortran计算库

###1.基本思路
利用f2c 将fortran源码转换为C,再利用QCC编译。

###2.f2c
<1>f2c编译后文件需要链接libf2c.a
因此需要在QNX下完成f2c编译
大致步骤

setenv INSTALL /usr/local
curl "http://netlib.sandia.gov/cgi-bin/netlib/netlibfiles.tar?filename=netlib/f2c" -o "f2c.tar"
tar -xvf f2c.tar
gunzip -rf f2c/*
cd f2c
mkdir libf2c
mv libf2c.zip libf2c
cd libf2c
unzip libf2c.zip
cp makefile.u Makefile
make
cp f2c.h $INSTALL/include
cp libf2c.a $INSTALL/lib

其中以上中,需把makefile中的CC 和LD改成QNX编译器与链接器路径。
重点是拿到QNX 版本的 libf2c.a 与 f2c.h

<2>翻译fortran
在包含fortran源码路径下:

$ f2c -P -A -a -c -r8 *.f
$ f2c -PAacr8 *.f

以上两种路径等价,此处的f2c直接使用ununtu版本的即可。其中生成的.P文件即为头文件。可以改为.h。

<3>编译计算库
此时按照通常QNX静态库的编译方法,把<2>中生成的源码加入库中,并链接 libf2c.a 与 f2c.h。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章