静态库

✍ dations ◷ 2025-11-28 13:46:04 #计算机程序库

在计算机科学中,静态库(英语:Static library, Statically-linked library),或称静态库,是一个外部函数与变量的集合体。静态库的文件内容,通常包含一堆程序员自定的变量与函数,其内容不像动态链接库那么复杂,在编译期间由编译器与链接器将它集成至应用程序内,并制作成目标文件以及可以独立运作的可执行文件。而这个可执行文件与编译可执行文件的程序,都是一种程序的静态创建(static build)。以过去的观点来说,库只能算是静态(static)类型。

只需保证在开发者的计算机有正确的库文件,在以二进制发布时不需考虑在用户的计算机上库文件是否存在及版本问题,可避免DLL地狱等问题。

生成的可执行文件体积较大。当初正是为了避免此问题,才开发了动态库技术。

静态库可以用简单的C语言或是C++代码去创建它。这两个编程语言提供关键字指定函数与变量是否为外部(external)或是内部(internal)链接,此外,还提供其他的特性。

创建这类的库时,将函数或是变量导出(export)一定要用外部链接( )的语法特别指定它们。

静态库文件名为lib*.a,在使用了其中的函数之后,使用-l*参数要求连接器连入。

例如,在许多系统上,当使用了math.h中的函数后,需要使用-lm参数连接libm.a文件。

静态库文件名为*.lib,在使用了其中的函数之后,使用#pragma comment(lib,"*")预编译指令要求连接器连入。

相关

  • 脱氧核糖核酸外切酶去氧核糖核酸外切酶(英语:exodeoxyribonuclease,或称外切去氧核糖核酸酶)是一类可参与切割DNA分子的酶,属于EC3.1.11。是一种酯酶。脂酶(胆盐依赖性脂酶、胃脂肪酶/舌脂肪酶、胰脂
  • 学术会议学术会议是提供研究员发表及讨论其研究成果的会议,若有学术期刊和科学期刊的辅助,研讨会成为研究人员间信息交流相当重要的桥梁。学术会议通常会将提交的会议论文结集为出版。
  • 辰溆片辰溆片为湘语的重要支系之一,分布在中华人民共和国湖南省西部及沅水中游,主要通行在湘西土家族苗族自治州泸溪县和怀化市辰溪县及溆浦县。湘语辰溆片古全浊声母舒声字今逢塞音
  • 陈其学陈其学(1514年-1593年),字宗孟,号行菴,南京宁国府宣城人(今安徽宣州市)人,明朝政治人物。官至南京刑部尚书。卒谥恭靖。山东乡试第三名举人。嘉靖二十三年(1544年)中式甲辰科进士。授行
  • 对人恐惧症对人恐惧症(日语:対人恐怖症/たいじんきょうふしょう Taijin Kyōfushō),精神病的一种。因为在他人面前失败过,在人前害怕出现症状,并且在他人眼前感到极度紧张,被此折磨着。常见
  • 圣克鲁斯加利福尼亚大学圣克鲁兹加利福尼亚大学 (英文:University of California, Santa Cruz;缩写:UCSC),简称圣克鲁兹加大,又常被称为加利福尼亚大学圣克鲁兹分校,是十所加利福尼亚大学之一,位于美国加
  • 牡丹虾长额虾科(学名:Pandalidae),是抱卵亚目真虾下目长额虾总科的其中一个科,包括23个属、约200个物种,皆可食用,具高度经济价值。现时在餐桌上常见的牡丹虾就是本科多个物种的合称。本
  • 杜阿木忒弗在埃及神话中,杜阿木忒弗,或作朵母泰夫和多姆太夫(Duamutef,Tuamutef;Golden Dawn,Thmoomathph)是葬礼之神、霍尔的四子之一,在他们看管的四个罐子(canopic jars)中他看管装着胃的罐子
  • 奥地利-埃斯特的洛伦兹大公 (比利时亲王)奥地利-埃斯特大公,洛伦兹亲王(德语:Lorenz Habsburg-Lothringen;英语:Prince Lorenz of Belgium, Archduke of Austria-Este,全名:洛伦佐·奥托·卡尔·阿梅迪乌斯·玛利亚·庇护
  • 洞熊洞熊(学名)是一种于更新世生存在欧洲与亚洲的熊,于120万年和其他的熊类分支,在约二万年前的冰河时期灭绝。洞熊高达10英尺,重达1600磅以上,比现今的棕熊还要大上许多,但并不像今天