12.07.2015 Views

RealView - ARM Information Center

RealView - ARM Information Center

RealView - ARM Information Center

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

BPABI 和 System V 共 享 库 和 可 执 行 文 件6.3.5 使 用 动 态 链 接 器共 享 对 象 或 可 执 行 文 件 包 含 动 态 链 接 器 正 确 加 载 和 运 行 文 件 所 需 的 所 有 信 息 :• 每 个 共 享 对 象 都 包 含 一 个 用 于 标 识 该 对 象 的 SONAME。 可 以 在 命 令 行 中 使 用--soname name 选 项 指 定 此 名 称 。• 链 接 器 使 用 在 命 令 行 中 指 定 的 共 享 对 象 来 确 定 与 其 他 共 享 对 象 之 间 的 相 关性 。 这 些 共 享 对 象 相 关 性 是 在 DT_NEEDED 标 签 中 编 码 的 。 在 当 前 版 本 中 , 链接 器 对 这 些 标 签 进 行 排 序 以 使 其 与 命 令 行 中 的 库 顺 序 相 匹 配 。• 动 态 链 接 器 使 用 预 定 搜 索 路 径 来 搜 索 相 关 性 。 可 以 使 用 --runpath pathlist命 令 行 选 项 将 pathlist 中 的 路 径 添 加 到 搜 索 路 径 中 。 搜 索 路 径 是 使 用DT_RUNPATH 标 签 编 码 的 。• 缺 省 情 况 下 , 在 使 用 --sysv --shared 构 建 共 享 库 时 , 链 接 器 并 不 包 含 <strong>ARM</strong>C 库 初 始 化 函 数 __cpp_initialize__aeabi_。 而 是 由 链 接 器 设 置 DT_INIT_ARRAY标 签 ( 如 果 适 用 ), 以 使 动 态 链 接 器 能 够 初 始 化 该 库 。如 果 更 希 望 使 用 __cpp_initialize__aeabi_ 函 数 来 初 始 化 共 享 库 , 则 必 须 在命 令 行 中 添 加 --ref_cpp_init 并 设 置 --init=__cpp_initialize_aeabi_。• 如 果 指 定 --fini symbol 命 令 行 选 项 , 链 接 器 将 使 用 指 定 的 符 号 名 称 来 定 义终 止 代 码 。 当 动 态 链 接 器 卸 载 可 执 行 文 件 或 共 享 对 象 时 , 将 执 行 此 代 码 。并 未 假 定 由 名 为 _fini 的 符 号 标 记 此 代 码 。• 如 果 指 定 --fini symbol 命 令 行 选 项 , 链 接 器 将 使 用 指 定 的 符 号 名 称 来 定 义终 止 代 码 。 当 动 态 链 接 器 卸 载 可 执 行 文 件 或 共 享 对 象 时 , 将 执 行 此 代 码 。并 未 假 定 由 名 为 _fini 的 符 号 标 记 此 代 码 。可 以 使 用 --dynamiclinker name 命 令 行 选 项 来 指 定 用 于 在 运 行 时 加 载 和 重 定 位 文件 的 动 态 链 接 器 。 如 果 在 Linux 平 台 上 工 作 , 链 接 器 假 定 缺 省 动 态 链 接 器 为/lib/ld-linux.so.2。6-10 版 权 所 有 © 2007 <strong>ARM</strong> 公 司 。 保 留 所 有 权 利 。 <strong>ARM</strong> DUI 0349AC

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!