静态库

✍ dations ◷ 2025-11-30 18:23:42 #计算机程序库

在计算机科学中,静态库(英语: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,"*")预编译指令要求连接器连入。

相关

  • 凯特勒凯特勒(Lambert Adolphe Jacques Quetelet,1796年-1874年),19世纪比利时的通才,他既是统计学家、又是数学家和天文学家。他从统计学角度出发看人,认为人的成长是会依从一套既定的法
  • 马累马累(迪维希语:މާލެ‎‎;/ˈmɑːleɪ/, 当地发音.mw-parser-output .IPA{font-family:"Charis SIL","Doulos SIL","Linux Libertine","Segoe UI","Lucida Sans Unicode","
  • 客观坍缩理论在量子力学里,客观坍缩理论(objective collapse theory)倚靠修改含时薛定谔方程来建构一种促使波函数坍缩的机制。薛定谔方程具有决定性、可逆性与线性,而波函数坍缩是一种随机
  • 557年
  • 科希丘什科起义拉茨瓦维茨 – 华沙 – 维尔纽斯 – 大波兰 – 施切克茨尼 – 海乌姆 – 围攻华沙  – 克鲁普切茨 – 特勒斯波尔 – 马切约维茨 – 普拉加柯斯丘什科
  • 张诚让-弗朗索瓦·热尔比永(Jean-François Gerbillon,1654年7月4日-1707年3月27日),汉名张诚,字实斋,法国耶稣会传教士。1654年生于法国凡尔登。1670年加入耶稣会。1684年,被法国国王路
  • 南斯拉夫南斯拉夫人民解放军和游击队(塞尔维亚-克罗地亚语:Narodnooslobodilačka vojska i partizanski odredi Jugoslavije (NOV i POJ), Народноослободилачка
  • 拉森火山国家公园拉森火山国家公园(英语:Lassen Volcanic National Park)是位于美国加州北部的国家公园。整个国家公园中最主要的景观就是拉森火山(也译作拉森峰),是世界上最大的穹顶火山,也是喀
  • 大韩民国首都机械化步兵师首都机械化步兵师(韩语:수도기계화보병사단),别名猛虎部队(맹호부대),是大韩民国陆军六个机械化步兵师中的一支。该师隶属于大韩民国第三野战军第7机动军(朝鲜语:제7기동군단),负责在首
  • 拱点拱点(apsis,复数为apsides)是指一个物体的运动轨道的极端点;在天文学中,这个词是指在椭圆轨道上运行的天体最接近或最远离它的引力中心(通常也就是系统的质量中心)的点。最靠近引力