pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
在 DEC OSF/1 下,你可以取任意简单的目标文件,用带正确选项的 ld 命令处理它来产生一个共享目标文件。相应的命令看起来像这样:
# simple DEC OSF/1 example
% cc -c foo.c
% ld -shared -expect_unresolved '*' -o foo.so foo.o
得到的共享目标文件随后就可以装载进Postgres。在向 create function 命令指定目标文件名时,必须给出共享目标文件的名字(以 .so 结尾),而不是简单的目标文件。
实际上,只要是一个共享目标文件,Postgres并不关心你把它命名成什么。如果你更喜欢用扩展名 .o 来命名共享目标文件,这对Postgres也没问题,只要确保把正确的文件名给了 create function 命令。换句话说,你只需保持一致。不过,从实用的角度看,我们不鼓励这种做法,因为你无疑会搞混哪些文件已经被做成了共享目标文件、哪些没有。例如,如果目标文件和共享目标文件都以 .o 结尾,就很难编写 Makefile 来自动完成链接编辑!
如果你指定的文件不是共享目标文件,后端将会挂起!
译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。