在调用dlmopen(LM_ID_NEWLM)时,是不可以递归地填充缺少的共享对象的。
dlmopen函数是用于在Linux系统中动态加载共享对象的函数。它的参数LM_ID_NEWLM表示创建一个新的命名空间,并在该命名空间中加载共享对象。当调用dlmopen函数时,如果需要加载的共享对象依赖其他共享对象,但这些依赖的共享对象在当前命名空间中不存在,那么dlmopen函数将会失败,并返回一个错误码。
dlmopen函数的设计初衷是为了提供一种隔离的机制,使得不同的命名空间可以加载不同版本的共享对象,从而避免版本冲突和符号冲突的问题。因此,dlmopen函数不会自动递归地填充缺少的共享对象,而是要求开发者显式地指定需要加载的共享对象。
如果需要递归地填充缺少的共享对象,可以使用其他方式,例如使用动态链接器的环境变量LD_PRELOAD来预加载共享对象,或者使用其他工具和方法来管理共享对象的依赖关系。
腾讯云相关产品和产品介绍链接地址:
- 云服务器(Elastic Cloud Server,ECS):https://cloud.tencent.com/product/cvm
- 云原生容器服务(Tencent Kubernetes Engine,TKE):https://cloud.tencent.com/product/tke
- 人工智能平台(AI Platform):https://cloud.tencent.com/product/ai
- 物联网(Internet of Things,IoT):https://cloud.tencent.com/product/iotexplorer
- 移动开发平台(Mobile Development Platform,MDP):https://cloud.tencent.com/product/mdp
- 云数据库(TencentDB):https://cloud.tencent.com/product/cdb
- 腾讯云区块链服务(Tencent Blockchain as a Service,TBaaS):https://cloud.tencent.com/product/tbaas
- 腾讯云元宇宙(Tencent Cloud Metaverse):https://cloud.tencent.com/solution/metaverse