你的-L/usr/freeware/lib32 -lbz2表示要連接"/usr/freeware/lib32/libbz2.a"這個庫文件。 有時缺省

Makefile怎麼改? 以文找文
wishdeen 在天空部落發表於10:29:18 |  unix
 
makefile其實就是將C程序或者Fortran程序的編譯規則定義一下,因此許多參數就是他們的編譯選項。要參考這些參數的作用,可以用幫組命令即 可。比如:"man f90",就能查看Fortran編譯器的參數設置信息。我簡單介紹一下你makefile中的幾個參數: -L表示庫連接的路徑,比如 -L/common/netcdf/lib ,而小寫的L,即-l 後面表示庫文件的名稱,但是它又是一種省略形式的名稱,比如: -lnetcdf ,它表示要連接的庫文件名稱為「libnetcdf.a」,即前面加"lib"前綴,後面加".a"後綴。這兩個參數(-L和-l)經常組合使用,前者表 示庫文件存放的路徑,後者表示要連接的庫文件名稱。 所以,你的-L/usr/freeware/lib32 -lbz2表示要連接"/usr/freeware/lib32/libbz2.a"這個庫文件。 有時缺省掉"-L",它則會在當前路徑下找庫文件。 -I則表示include代碼存放的路徑,也就是源程序代碼中如果有#,則編譯的時候,要找include的代碼,-I則給出它的搜索路徑。在F90中,它也用來指定模塊(module)文件所在的路徑。

EX: 
ifort -o abc.exe abc.f /xxx/xxx/xxx/lib/libnetcdf.a
ifort -o abc.exe abc.f -L/xxx/xxx/xxx/lib -lnetcdf

---
http://bbs.lasg.ac.cn/bbs/viewthread.php?tid=30439&extra=&page=1
http://lagoon-lhf.blogspot.tw/2010/07/library-ifortnetcdf.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值