静态库

✍ dations ◷ 2025-11-30 06:11:36 #计算机程序库

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

相关

  • 西兰花西兰花(学名:Brassica oleracea var. italica,英语:Broccoli),又称青花菜、绿花菜、绿花椰菜、百加利(一些海外的中国餐馆所用音译),是一种蔬菜。西兰花源于意大利,和花椰菜、结球甘蓝
  • 米利茨国家公园米利茨国家公园是德国的国家公园,位于该国东北部,由梅克伦堡-前波美拉尼亚负责管辖,始建于1990年10月1日,面积322平方公里,是54种哺乳类动物、214种鸟类和16种爬虫类动物的栖息地
  • 大台北古地图大台北古地图,原名《淡水与其附近村社暨鸡笼岛略图》(荷兰语:《Kaartje van Tamsuy en omleggende dorpen, zoo mede het eilandje Kelang》)为1654年由荷兰人所绘制的大台北地
  • 以利沙以利沙生于公元前九世纪中叶,是以色列国的先知。是先知以利亚的学生。以利亚在升天之前,奉神之命选召以利沙继续他的工作。历经北国以色列的约兰,耶户,约哈斯和约阿施四王,作先知
  • 牛樟芝见本文牛樟芝(Antrodia cinnamomea),俗名牛樟芝,又名牛樟菇、樟菇、窟内菰、神明菇,是一种药用真菌,为拟层孔菌科 (Fomitopsidaceae)薄孔菌属 (Antrodia)的一种真菌,仅原生于台湾。牛樟
  • 王之垣王之垣(1527年-1604年),字尔式,号见峰,山东新城县(今桓台县新城镇)人。明代大臣。山东乡试第七名。嘉靖四十一年(1562年)壬戌科进士。授荆州府推官。历任刑科给事中、顺天府府尹、户部
  • 沈兼士沈兼士(1887年7月31日-1947年8月2日),名臤,字兼士,以字行,原籍浙江吴兴(今湖州),生于陕西省汉阴县城。中国语言文字学家、文献档案学家。1905年,沈兼士和兄长沈尹默自费赴日本留学,入东
  • 解放神学解放神学是20世纪70年代以后,主要在拉丁美洲天主教界中成形的一个神学主张。其主张信仰天主的人(即是“天主的选民们”)应该要关注人间制度的公平正义问题,例如贫穷的世袭化、经
  • 林肯国家森林林肯国家森林(英语:Lincoln National Forest)是美国国家森林局管辖的国家森林,位于新墨西哥州南部,最早于1902年总统令的缘故建立,前身为林肯森林保护区。森林面积1,103,897英亩(4,
  • 铜绿假单胞菌甘露糖敏感血凝菌毛株铜绿假单胞菌(绿脓杆菌)甘露糖敏感血凝菌毛株(PA-MSHA,铜绿假单胞菌-MSHA菌株,铜绿假单胞菌注射液,商品名:万特普安),经中国国家食品药品监督管理局批准上市,由北京万特尔生物制药有限公