shrept.lst文件和genclntsh.sh的功能是什么? oracle 11g

问题描述:

我正在寻找在oracle 11g中找到“shrept.lst”文件的功能。它位于$ Home_directory/network/admin中。我确实试图在网上搜索它,但没有找到任何确切的答案。在标题中它说#genclntsh.sh的#函数入口点。当我试图在这个博客以及oracle社区中搜索它时,我并没有清楚地了解这个文件的用途。我会真正appriciate任何人都可以指导我。 感谢shrept.lst文件和genclntsh.sh的功能是什么? oracle 11g

genclntsh脚本,$ORACLE_HOME/bin下,regenerates the client shared librarylibclntsh.so(在UNIX中)。您通常不需要担心这一点 - 它会在安装时自动运行,并且通常在修补或升级任务期间运行。

根据该脚本,“每个产品必须提供$ PRODUCT/admin/shrept.lst”。它是内部机制的一部分,用于通过脚本的listf()函数确定链接器明确定义哪些符号。从network/admin/shrept.lst文件中,ld命令将包含-u snaumihi_inithostinfo -u snaumbg_gmt ...

ld手册页描述了-u标志做什么:在输出文件中未定义符号的输入

力的象征。例如,这可能会触发从标准库中链接附加模块。 -u可以用不同的选项参数重复输入其他未定义的符号。该选项等效于 “EXTERN”链接描述文件命令。

因此该文件是供内部Oracle使用的。如果不存在,则链接过程将失败(例如,请参阅Oracle支持文档ID 1587532.1)。不要触摸它,修改它或删除它。只要忽略它。