菜鸟教程小白 发表于 2022-12-13 00:24:51

ios - 为动态链接提供后备符号


                                            <p><p>当动态链接一个库时,有一种方法可以指定一个备用符号,以防加载时缺少一个。 </p>

<p>例如编译一个 MEX 文件而不是 <code>mxCreateNumericArray</code> 我想调用 <code>mxCreateUninitNumericArray</code> (具有相同的签名)。但后者不会出现在较旧的 MATLAB 版本中。 <code>mxArrayToString</code> 和 <code>mxArrayToUTF8String</code> 相同。 </p>

<p>对于 MSVC,我已经能够使用/DELAYLOAD 并 Hook 到 <code>dliFailGetProc</code> 上的 <code>__pfnDliFailureHook2</code> 以提供简单的映射。但是我可以在基于 Unix 的系统上做什么呢? </p>

<p>如何以类似的方式 Hook 到<code>libld</code>?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>我无法连接到动态链接器,但提供弱符号帮助我解决了这个问题:</p>

<pre><code>extern &#34;C&#34;
char * __attribute__ ((weak)) mxArrayToUTF8String( mxArray const * array )
{
return mxArrayToString( array ) ;
}
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 为动态链接提供后备符号,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/43044727/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/43044727/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 为动态链接提供后备符号