共享常量数据段
Shared const data segment
我们必须在进程之间共享大量编译时已知数据。是否可以放入共享库的 .rodata 部分?这样做的实际步骤是什么?
Is it possible to put into .rodata section of a shared library?
是的。
What are the practical steps to do so?
如果您声明数据 const
,编译器应该已经为您完成。
如果 还没有发生,请使用 MCVE 提出一个单独的问题。
或者您的意思是:“我有一个数据文件,我想将 逐字 包含到我的 foo.so 中,而不先将该数据转换为 C -样式数组并编译它?
在这种情况下,请执行以下操作:
// foo.S
.globl foo_data
.section .rodata
foo_data:
.incbin "foo.data"
将 foo.S
和 link 编译到您的共享库中。
我们必须在进程之间共享大量编译时已知数据。是否可以放入共享库的 .rodata 部分?这样做的实际步骤是什么?
Is it possible to put into .rodata section of a shared library?
是的。
What are the practical steps to do so?
如果您声明数据 const
,编译器应该已经为您完成。
如果 还没有发生,请使用 MCVE 提出一个单独的问题。
或者您的意思是:“我有一个数据文件,我想将 逐字 包含到我的 foo.so 中,而不先将该数据转换为 C -样式数组并编译它?
在这种情况下,请执行以下操作:
// foo.S
.globl foo_data
.section .rodata
foo_data:
.incbin "foo.data"
将 foo.S
和 link 编译到您的共享库中。