スタートアップのインタビュー1000本以上「スタートアップタイムズ」

HOME/ ニュース /gccの-rdynamic option 調査メモ
ニュース 2019.06.02

gccの-rdynamic option 調査メモ


はじめに
gccの-rdynamic optionの調査メモ。
gcc 9.1.0, glibc 2.29を対象に調査した。
基本内容に差はないと思うが、target archはx86_64-pc-linux-gnu。
TL;DR
-rdynamicオプションはリンク時のみ効果がある。
-rdynamicオプションを適用すると、共有ライブラリから実行ファイルのシンボル情報を動的に取得できるので、バックトレースの表示などに使われる。
-rdynamicオプションを適用することで、共有ライブラリとして利用可能な実行ファイルを作成できる。
-rdynamicオプションを適用するとシンボルバッティングや意図せず共有ライブラリに制御されてしまうリスクが増えるので、明確に目的がないなら通常は無効にしておく。
gcc,glibcのソースコードは面白い。
gccのspecファイルむずい。
公式ドキュメント
GCCには大量の起動オプションがあり、manだと少し見づらい。
そんなときは公式ドキュメントのOption Indexで確認すると楽。
https://gcc.gnu.org/onlinedocs/gcc-9.1.0/gcc/Option-Index.html#Option-Index_op_letter-R
-rdynamic
Pass the flag -export-dynamic to the ELF linker, on targets that support it. This instructs the linker to add all symbols, not only used ones, to the dynamic symbol table. This option is needed for some uses of dlopen or to allow obtaining backtraces from within a program.
曰く、-rdynamic optionは、Link Options。
すなわち、オブジェクトファイルから実行ファイルを生成するときにのみ作用し、リンクステップがない場合無視される。
そして、-rdynamicオプションがgccに渡された場合、リンカに-export-dynamicオプションを渡す。

この記事が気に入ったらいいね!しよう

最新記事をお届けします
この記事をシェアする

あなたにおすすめの記事

ICTを活用し、保育園・幼稚園の先生と保護者を繋ぐWebサービス「note」ーー保育ICT株式会社

コロナ禍のドクターを応援したい!  いつでも匿名で先輩ドクターに相談・意見交換できるチャットサービス「ドクター to ドクター」の利用料無料キャンペーンを6月末まで延長!

採用管理システム「SONAR ATS」、導入社数が800社を突破!

ワンストップビジネスセンター 延べ利用社数が1.5 万社を突破!コロナ禍のリモートワーク普及で起業家にさらに浸透

コロナ禍で働く大切なスタッフに もっと”心のケア“ を 制服などの衣類やおしぼりなど身近な布製品を回収し 抗ウイルス・抗菌加工することに特化した日本初のサービス 「HUG(ハグ)」2021年1月サービス開始

コロナ禍の今を救い・次を担う!「観光事業者向けGoogleマップ行動分析&運用(MEO)支援」株式会社リーゴ

M&A総合研究所、最先端のアルゴリズム開発を手掛けるPKSHA Technologyと業務提携を開始 〜AIによるM&Aマッチングシステムの開発促進にPKSHA Algorhim Moduleを導入〜

世界の同年代の学生とリアルタイムで意見交換!オンライン授業から世界平和を目指すーー株式会社With The World

採用管理システム「SONAR ATS」を提供するThinkings、シリーズAで9.5億円の資金調達を実施 ~採用の解像度を上げ、真のマッチングを実現する。「SONAR ATS」「SONAR Marketplace」の事業拡大を推進~

M&Aで気を付けておくべき点について解説した資料「【永久保存版】5つのポイントで掴むM&Aの完全成功マニュアル」を公開版】5つのポイントで掴むM&Aの完全成功マニュアル」を公開

さあ、
Startup Times から
発信しよう。

30分で取材

掲載無料

原稿確認OK