問題タブ [static-libraries]
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++ - ライブラリ X を静的にリンクするように指定するにはどうすればよいですか?
複数のライブラリにリンクされているソフトウェアがあります。それらはすべて、動的 (.so) および静的 (.a) バージョンで存在します。デフォルトでは、g++ を使用するとライブラリの動的バージョンが選択されますが、それで問題ありません。
ただし、そのうちの 1 つは必ず静的にリンクする必要があります。-staticを使用することを考えましたが、それらすべてに静的バージョンを使用します。これは私が望むものではありません。
ライブラリ X を静的にリンクする必要があることを指定するにはどうすればよいですか?
c++ - GCC でコンパイルされた静的ライブラリには何が含まれていますか?
私のアプリケーションは libsamplerate.a にリンクしています。これは、最終的なバイナリを簡単に配布できるようにするためです。
.a ファイル内のコードが、配布する必要がある他のライブラリに依存している可能性があるのではないかと心配しています。
しかし、そうでない場合は、たとえば. libc。
libsamplerate.a の中身は正確には何ですか? libsamperateのバイトコードだけ?以上?
windows - Windows ライブラリ (*.lib) の内容を表示する方法
バイナリ ファイル - Windows スタティック ライブラリ (*.lib) があります。
そのライブラリから関数の名前とそのインターフェイスを見つける簡単な方法はありますか?
emfar
およびelfdump
ユーティリティ (Linux システムの場合) に似たものはありますか?
iphone - iPhone 用静的ライブラリの作成
iPhone アプリに使用したいオープン ソース ライブラリがあります。ライブラリは C で書かれており、Makefile でコンパイルされます。静的ライブラリを使用したいと思います。
プロジェクトの依存関係に .a ファイルを追加すると、シミュレーターではうまく動作しますが、iPhone SDK をターゲットにするとリンクしません (確かに、.a ファイルは Intel プラットフォーム用にコンパイルされているためです)。
iPhone SDK の静的ライブラリをコンパイルするには、どの GCC コンパイラ フラグを使用すればよいですか? 「-arch」オプションを使用すると iPhone アーキテクチャが提供されると思いましたが、うまくいきませんでした。
どんな助けでも大歓迎です。
c++ - pthreadを使用したAIXでの静的リンク
私はこれを数日間読んで調査してきましたが、外部からの支援が必要だと判断しました。
(そしてこのサイトはいい場所のようだったので、ここに質問を投稿してどうなるか見てみようと思いました)
私たちの小さな会社は、AIXでアプリケーションを数年間構築しておらず、私にはこのタスクが割り当てられています(私が挑戦するのが好きなのは良いことです)。
私が抱えている問題は簡単に説明でき、他の人もそれを経験していることがわかりますが、答えは見つからないようです。
アプリを「非静的」にリンクすると、ビルドコマンドで「-static」を使用しない場合、アプリは開発マシンでは正常に実行されますが、テストに使用する他のAIXマシンでは実行されません。
[2台のマシンに関するクイックノート;
dev:
テスト:
]
「-static」とリンクすると、例外がスローされたときに、開発マシンで実行時にアプリが「中断」します。
そして(それだけでは不十分であるかのように)、アプリはまだテストマシンで実行されません:
ここで、「-pthead」を使用してリンクしていることに注意してください。pthreadを使用する場合、静的にリンクすることはできませんという記事をいくつか読んだことがあります。
脳が痛い。
これについてのご意見をいただければ幸いです。
visual-studio - 異なるバージョンの Visual Studio 2002 以降でビルドされた C コードの静的ライブラリの混在
Visual Studio 2002 C (v7.0) Compiler と Intel Fortran 9.0.018 Compiler を使用してコンパイルおよびリンクされた C および Fortran ルーチンのスタティック リンク可能ライブラリがあります。
ライブラリ内の C コードは、Microsoft C-RunTime (MSCRT) 2002 スタティック ライブラリ (シングルスレッド) を呼び出してリンクしています。2002 CRT ライブラリの実際のバージョン番号は v7.0 だと思います
このスタティック ライブラリを「vs2002if9.lib」と呼びます。
Visual Studio の新しいバージョン (2003、2005、または 2008) を使用して、呼び出しプログラムが C ランタイム呼び出しに関してどのように動作するかを心配することなく、「vs2002if9.lib」に安全に静的にリンクできますか?
または、CRT 静的ライブラリのバージョンを混在させることで問題が発生していますか?
「vs2002if9.lib」をサードパーティのソフトウェア開発者に提供するとどうなりますか? 私は彼らにどのような要件を課していますか?
c++ - g++: 静的ライブラリと動的ライブラリをリンクする順序は?
「my_app」というメインの実行可能ファイルがあり、他のいくつかのライブラリを使用しているとします。3 つのライブラリは静的にリンクされ、他の 3 つのライブラリは動的にリンクされています。「my_app」に対してどの順序でリンクする必要がありますか?
しかし、これらはどの順序でリンクする必要がありますか?
libSB に依存する libSA (静的 A のように) と libSB に依存する libSC を取得したとします。
および 3 つの動的ライブラリ: libDA -> libDB -> libDC
(libDA
は基本、libDC
は最高)
これらはどの順序でリンクする必要がありますか?基本的なものは最初ですか、それとも最後ですか?
正しい順序のように思えますが、そうですか?動的ライブラリと静的ライブラリの間に依存関係がある場合、またはその逆の場合はどうなりますか?
visual-c++ - 静的ライブラリのVC++リソース
静的ライブラリにリソースを構築し、ライブラリとリンクするだけでそれらを再利用することは可能ですか?
私は主に、ライブラリ内の関数を呼び出して、リソースにアクセスする場合について考えています。
c - ELF ファイルのバージョン
コマンドのクローンに取り組んでいelfdump
ます。
私のプログラムは、すべての実行可能ファイルで実行すると正常に動作elfdump -ecps *file*
します。しかし、libc.so などのライブラリ ファイルでプログラムを実行すると、.symtab セクションのすべてのシンボルに対して間違ったバージョン番号が出力されます (具体的には、すべてゼロです)。ドキュメントを何度も見てきましたが、なぜこれが起こっているのかわかりません。
誰かがいくつかのヒントを提供してもらえますか? または、ライブラリであるかどうかを検出する方法を教えてください。