linux gcc延时怎么写,Clang / GCC是否真的支持延迟加载功能?
如果您 確實經(jīng)歷過
與上述標(biāo)題相關(guān)的事情,您是否愿意對此發(fā)表評論?我試圖使共享對象在Ubuntu上同時被Clang和GCC延遲加載(我實際上不介意使用哪個編譯器),但是它們看起來并沒有真正支持任何延遲加載功能(我期望延遲加載功能)在需要此功能時,將存根放在父對象中,該對象試圖按需加載另一個對象,但實際上并不需要)。以下命令顯示了我試圖使libbar.so被延遲加載到libfoo.so:
clang bar.c -fPIC -shared -o libbar.so
clang foo.c -Wl,-zlazy,lL'/path/to/where/lib/is',-lbar -o foo
如果libbar.so不存在,您將看到libfoo.so在進入條目之前引發(fā)異常。無論如何,我不介意上面的命令中是否有任何拼寫錯誤,但想知道 Clang
/ GCC是否確實支持延遲加載功能 。
但是,就個人而言,如果Clang /
GCC不支持任何延遲加載功能,我是否相信Linux程序開發(fā)人員是否需要調(diào)用dlopen()或dlsym()來使共享庫延遲加載。如果對象是用C編寫的就可以了,但是如果對象是用C
++編寫的,則情況必須非常復(fù)雜:(
我相信在編譯器或鏈接器的幫助下實現(xiàn)的解決方案是最好的,因為我已經(jīng)在Windows和Mac OS上成功完成了該解決方案。因此,我覺得公民即使夢想在Clang
/ GCC上也夢想擁有延遲加載功能,這將是一種自然的反應(yīng)。如果您對我的感受有任何評論,我也將不勝感激。
PS。我知道Solaris支持延遲加載功能,但是這對我來說不是可行的方法,因為我不會對此進行任何開發(fā)。
無論如何,非常感謝您。
總結(jié)
以上是生活随笔為你收集整理的linux gcc延时怎么写,Clang / GCC是否真的支持延迟加载功能?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 打印纸张尺寸换算_纸张尺寸与开(K)数换
- 下一篇: sql 一列中平均应发工资_劳动者的工资