linker-scripts

    6

    1答えて

    仮想メモリの最後に特別なセクションを持つプログラムを作成したいと思います。だから私は、リンカスクリプトをやってみたかった、このような何か: /* ... */ .section_x 0xffff0000 : { _start_section_x = .; . = . + 0xffff; _end_section_x = .; } 問題は、GCC/LD/glib

    2

    1答えて

    リンクされたファイルにいくつかの特別なセクションを作成しました。別々のページパーミッションを持つように分割されたセグメントにしたいと思います。 リンカースクリプトでは、PHDRSコマンドでリンクファイルのセグメントを指定できます。しかし、documentによれば、PHDRSはコマンドで指定された以外のデフォルト定義セグメントを作成しません。そして、ld --verbose出力にPHDRSコマンドが

    0

    1答えて

    リンカスクリプトまたはマップファイルを使用してシンボルの名前を変更することはできますか? 私はC++とFortranの組み合わせで書かれたコードを、複数のFortranコンパイラ(Linux上で動作するように)に適応させようとしています。これは現在、大文字と小文字を区別するためのオプションを有効にしてSolaris Studioコンパイラ用に作成されています。私はFortranシンボル名のマングリ

    0

    1答えて

    EXCLUDE_FILEを使用して、特定のオブジェクトファイルの特定のセクションを、生成したいマスターオブジェクトファイルに配置することを明示的に省略しました。私は、セクション全体ではなく特定のシンボルを省略する方法があるかどうか疑問に思っていました。 例: は、私は.textセクションと.dataのセクションで1.o、2.Oと3.Oで構成ライブラリa.libを持っていると言います。 1.oの.t

    0

    1答えて

    をリンクLD私はimx6qのため(のCortex-A9)のコードをリンクするリンカスクリプトを持っている間は: OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm", "elf32-littlearm") OUTPUT_ARCH(arm) ENTRY(Reset_Handler) /* SEARCH_DIR(.) */ GROUP(libgcc.a

    0

    1答えて

    私はベアメタルカーネルを作成していますが、NOLOADセクションの場合はldの出力を理解するのが難しいです。私は、MMUが有効になっている場合にのみ存在するシンボルを宣言しているので、VMAとLMAは同じではありません。私はこのようなセクションの宣言に使用 :私のセクションのコンテンツの今 _foobar_start = .; .foobar : AT(ADDR(.foobar) - VA_PA

    -1

    1答えて

    TM4C ARMマイクロコントローラ(_sbrkにはendシンボルが必要)で標準ライブラリ関数を使用するために小さなヒープを追加する必要があります。これは私のリンカスクリプトでは (マイコンのデモに付属): ld: section .init loaded at [000126b4,000126bf] overlaps section .data loaded at [000126b4,00012

    1

    1答えて

    リンカスクリプトを使用してアドレス空間にシンボルをレイアウトする場合、ldは に、 の構文を持つ静的ライブラリからの特定のシンボルを参照できます。 archive.a:object_file.o(.section.symbol_name) はgoldではなくldを使用して、そのような指示を無視しているようです。 リンク処理は成功します。ただし、特定の場所に特定の シンボルを配置してgoldとし

    -1

    1答えて

    .lcfに条件を記述できますか? 特定のセクションの合計が特定のしきい値を超えているかどうかを確認したいと思います。もしそうならリンカーにエラー/警告を表示させたい 私はこの.lcfが新しく、これが可能かどうかわかりません。 アドバイスはありますか? リンカー:WindRiver社リンカー5.9.4

    2

    1答えて

    コードを2つの異なるMEMORY領域に分割するためにリンカスクリプト(LD)を使用しようとしています。 - すべてのコードはMEM1領域に移動する必要があります。 file2.oのみがMEM2領域に移動する必要があります。 MEMORY { MEM1 : ORIGIN = 0x00000000, LENGTH = 100K MEM2 : ORIGIN = 0x00