問題タブ [ld]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - バイナリで使用されていないものを含めたりリンクしたりすると、どのような悪影響がありますか?
作成しているバイナリがあり、実際には使用されないファイルの束をインクルードし、それらのインクルードファイルによって記述されたライブラリへの後続のリンクを実行するとしますか?(繰り返しますが、これらのライブラリは使用されません)
コンパイル時間の増加を超えて、これの悪影響は何ですか?
c - ld は c ファイルを見つけることができません
.o ファイル (start.o および main.o) にコンパイルされたアセンブリ ファイルと ac ファイルがあり、それらを ld にリンクしようとしています。私はこのコマンドを使用しています:
link.ld はリンカー スクリプトですが、実行すると次のエラーが発生します。
アセンブリ ファイルでは、次の関数を使用して c ファイルを呼び出します。
誰が何が悪いのか分かりますか?
command-line - GCCリンカーコマンドを取得する方法は?
GCCがldを呼び出すために使用するコマンドラインを取得するにはどうすればよいですか?
GCCがオーバーライドしようとしているリンカーオプションを明らかに追加するAVRターゲットに問題があるので、GCCがldに使用する正確なオプションを確認したいと思います。
c - 共有ライブラリのファイル サイズ
共有ライブラリを作成すると、./sl ファイルのサイズが 60KB を超えます。合計サイズが 20KB を超える .o ファイルが 2 つあります。
ユーティリティ ldd および elfdump をチェックして、参照されているライブラリを特定しました。使用された元のファイルとは別に、/usr/ccs/lib/pa20_64/lddstub およびソース ファイル情報: movelr1 PA-RISC 2.0 アセンブラーの参照が表示されます。
共有 lib ファイルのサイズが大きくなる理由として考えられるものは何ですか?
[(初心者向け) : OS : HP Unix 11i V2 PA RISC-64 で作業中]
c++ - LD を使用して中間ファイルをリンクする
ao、bo、および co がある場合、ld でそれらを do にリンクし、それをメイン オブジェクト ファイルにリンクするにはどうすればよいですか? 私が実現したいのは、入力ファイル内のすべてのシンボルが 1 つの大きな出力ファイルに結合されることだけです。
c++ - QtCreator ビルドは collect2 を返します: ld は終了ステータス 1 を返しました
QtCreator でいくつかの異なるプロジェクトをビルドしているときに、次のビルド エラーが発生しました。
いくつかのことを変更しただけで (ビルドの重要な変更はありません)、既に表示されている場合は表示されなくなり、表示されていない場合は表示されます。
学校プロジェクトの現在のプログラムで、rock03.cpp をコンパイルしようとしています。これはビルド内の唯一のファイルであり、main() メソッドがあります。正常に実行したばかりで、いくつかの s の順序を変更するために戻ったところif()
、関連する警告が 2 つしか表示されません。
と
問題のエラーとともに。
なぜこれが起こるのか誰にも分かりますか?合理的な確実性でエラーを再現することはできないようです.QtCreatorは、ビルドする前に何も文句を言いません.
ありがとう
linux - インストールされているライブラリが見つかりません
私はOpenSuse11.1x64ボックスに座っており、sigc++を使用するモジュールがあります。このようにリンクする場合:
私は得る
しかし、図書館はそこにあります。
ファイルシステム内:
ld.so.confに私は持っています:
そして、ldconfigを呼び出すとき:
なんで?
macos - Mac OS X 10.6 に gnu ld をインストールするには?
macbook pro (mac os x 10.6)で優れたContiki OSをコンパイルするのに苦労しています。Contiki は実際には、GCC、AR、LD などの GNU 固有の機能とオプションを多数使用しています。それで、macports 経由でこれらのユーティリティをインストールしましたが、"port install binutils" では GNU ld がインストールされないようですね。
問題は、Mac で GNU ld を取得するにはどうすればよいかということです。ハードウェイ(つまりザ・wget, configure, make, make install
ウェイ)に代わる簡単な方法はありますか?
c - ld: リンカ エラー
ld: foo.o: 再配置 R_X86_64_PC32 に対する未定義のシンボル `bar' は、共有オブジェクトを作成するときに使用できません。-fPIC で再コンパイル
-fPIC で再コンパイルしましたが、それでもこのエラーが発生します。
shared - 共有ライブラリ内の関数が未実装の関数をリンクする方法は?
実装されていない関数が存在する共有ライブラリを作成することは可能ですか?
私は共有ライブラリ testDele.so を作成し、testDele.so 内のいくつかの関数を残して、他の人が実装できるようにしたいと考えています。たとえば、次のようになります。
- ライブラリ プロバイダーはファイルを作成します。
====== testDele.c ==============
========== testDele.h ==============
- USER-B がファイルを実装する
====== testDeleImp.c ===============
====== testDeleMain.c =============
次に、私(共有ライブラリプロバイダー)が共有ライブラリをコンパイルするとき
以下のエラーが発生しました
================================================
このエラーは、実装されていない関数 priFunc が原因であることがわかっています。しかし、未定義のシンボルのリンクを防ぐ gcc のパラメーターはありますか?