問題タブ [autotools]
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.
autotools - Autoconf-config.hはどこに行きますか?
私は自分のニーズに合うように(autoconf、automake、libtoolを使用して)独自の単体テストライブラリを作成しています(非常に大量の機能は必要ありません。テストランナーとアサーションだけが必要です)。使えるようになりました。
もちろん、config.hを使用して、どのヘッダーを含めるかを判断します。問題は、config.hが他のプロジェクトのconfig.hと簡単に衝突する傾向があるため、どこに行くべきかわからないことと、アーキテクチャに依存していることです。
このヘッダーをインストールするための私の方法は何ですか?(他のすべてのヘッダーで必要です)
linux - Linuxカーネル構成を含める適切な方法は何ですか?
関連するハックを行った後、部分的にLinuxカーネルモジュールである古いバージョンのソフトウェアをEL5に移植しています。これは、コンパイルに使用される恐ろしいGNU autotoolsの混乱です(いいえ、kbuildを介してカーネルモジュールをコンパイルしません) :( ) 「config.h を含むことは非推奨です」という多くの警告が表示され続けます - Google の検索結果から、代わりに -I フラグを使用する必要があると言われましたが、どのフラグをどこに配置すればよいかを見つけることができないようです。
このソフトウェアはプロプライエタリであり、公開されていないためリンクできません。
私が移植しているバージョンは、2.6.16 までサポートしていました (2.6.18-164 el5 が必要です)。カーネル空間のコードは、数十個のファイルで 10 万行程度です (コンパイルはいくつかの Makefile にまたがっています)。
これを修正する適切な方法は何ですか?
gnu - GNU Autotools:ルートソースディレクトリの上にある「makedist」tarballにソースファイルをどのように含めますか?
Gnu Autotools(つまり、automake、autoconf、libtool)を使用してサブフォルダー(「サブパッケージ」と呼ばれる)内のソースコードを管理するSubversionプロジェクトがあります。サブパッケージは、サブパッケージのルートソースディレクトリの上にあり、他のサブパッケージに共通のソースファイルを参照します。残念ながら、「make dist」を実行してディストリビューションtarballを作成すると、共通のソースファイルがディストリビューションに含まれなくなります。
autoconf / automakeを使用して、ソースを配布する前にこれらの共通ソースファイルをサブパッケージのサブディレクトリに移動し、再配置されたソースファイルを正しく指すようにmakefileを調整する方法はありますか?明らかに、コンパイル前にmakefileにこれらのソースファイルを移動させることは可能ですが、Subversionリポジトリ内で作業する場合、これらの移動されたファイルはリビジョン制御されており、元のファイルの代わりに移動されたファイルを誤って編集する可能性があるため、問題が発生します。
autotools - config.hを公開する必要がありますか?Pythonとの競合
PythonへのSWIGバインディングを持つCライブラリに取り組んでいます。autotoolsの設定で、gettimeofday関数をチェックします。pyconfig.h
HAVE_GETTIMEOFDAYも定義しているファイルと競合するため、プロジェクトのPython部分をコンパイルできないことがわかりました。
config.h
これは非常に一般的な問題のようです。Pythonが自分のものと競合しているのを見て驚いた。私のプロジェクトでは、config.h
プライベートを維持しています---つまり、がインストールされていませんmake install
。私の印象では、これは正しいと思います。この意見が共有されているブログ投稿を少なくとも1つ見つけました。
Pythonが私のと競合するのはバグconfig.h
ですか?
編集:追加して解決しました
私にconfigure.ac
。質問はまだ残っていconfig.h
ますか、プロジェクトで公開する必要がありますか、それとも非公開にして、ビルド中に実装ファイルでのみ利用できるようにする必要がありますか?
gcc - GNU autotools make 出力の制御
GNU autoconf/automake を使用しています。configure.ac または Makefile.am から標準出力に出力する make を制御する方法はありますか? たとえば、mv および cp コマンドが画面に出力されるのを抑制し、コマンド ライン全体ではなく gcc によってコンパイルされているファイルの名前のみを出力し、何らかの方法で gcc の警告を強調表示します。
autotools - アローカルのポイントは何ですか?
autotools を使用してソース ファイルを構成するというコンテキストで、 aclocalスクリプトとaclocal.m4ファイルのポイントは何ですか? 私が読んだところによると、aclocal は後で automake によって使用されるマクロのマクロ ファイルをスキャンします。このプロセスの詳細はわかりませんが、スキャン機能が automake に組み込まれている可能性があるようです。
c++ - libtool共有ライブラリ(.loファイル)をインストールして使用するにはどうすればよいですか?
したがって、libtoolを実行し、ライブラリソースからファイルを取得した後libfoo.lo
、ターゲットシステムにインストールしてリンクできるように、ファイルを通常のLinux共有ライブラリfoo.o
に変換するにはどうすればよいですか?libfoo.lo
libfoo.so.1.0.0
c - arch linuxでautotoolsを使用してcでさまざまなヘッダーファイルをコンパイルする
arch Linux で autotools を使用して、たった 1 つのコマンドで多数のヘッダー ファイルをコンパイルする方法を知りたいです。
gcc - autoconf configure script / makefile にライブラリへのリンクを追加する方法
私はautotoolsの初心者で、特定のライブラリを構成済みのターゲットの1つに簡単にリンクする方法を理解するのに苦労しています。
通常の方法でビルドしたいソースパッケージがあります: ./configure && make && make install
残念ながら、cpp の 1 つに別のライブラリへの参照がありません。手でコンパイル(コマンドラインを調整)するとうまくいきます。しかし、コンパイル スクリプトに「パッチ」を適用したいと思います。リンク参照を編集する標準的な場所はどこですか?
それが私のエラーメッセージです。
c - 2つのプログラム用のautotools
プログラム内のheader.hを使用してheader.cを呼び出すプログラムmain.cがあります。GCCでコンパイルする方法は知っていますが、autotoolsを使用したいと思います。main.cをコンパイルするためにMakefile.amに何を書くべきか知りたいですか?
たとえば、以下に示すように、main.cとheader.cの2つのcファイルがある場合
main.c:-
そして私のheader.cファイルには
だから私のheader.hファイルには
この場合、makefile.amとconfigure.acに何を書き込む必要がありますか