問題タブ [autoconf]

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.

0 投票する
3 に答える
3856 参照

macos - Autoconf を使用して Mac で 32 ビットと 64 ビットの Intel CPU を検出する

Linux および Mac、32 ビットおよび 64 ビットで実行する必要があるプロジェクトの Autoconf スクリプトを開発しています。Linux では、64 ビットの検出は簡単です。 forx86_64の代わりにget を取得します。Mac でそれを行う方法がわかりません。32 ビット マシンと 64 ビット マシンの両方で. Autoconfビルトインを使用して違いを検出する方法はありますか?i386build_cpui386build_cpu

おまけの質問: 64 ビット CPU では、バイナリが 32 ビットか 64 ビットかをプログラムで検出する方法として、次の方法よりも優れた方法はありますか?

0 投票する
1 に答える
356 参照

gnu - configure から子 makefile の 1 つに --program-prefix=PREFIX を渡すにはどうすればよいですか?

Autoconf は私を困惑させました。

次のように Makefile.in の COMPILE を変更しようとしました

しかし、私の FINALDIR の使用は未定義です。それを行う適切な方法は何ですか?私の弁護では、autoconf ビジネス全体は、明白なものを隠しているプリプロセッサのネズミの巣です。

よろしくお願いします...申し訳ありませんが、私はそのようなツールです!

0 投票する
2 に答える
2221 参照

autoconf - Automake と同名のファイル

FreeBSD ホストでコンパイルするように適応させている C++ autoconf マネージド プロジェクトがあります。元のシステムは Linux だったので、AM_CONDITIONAL を 1 つ作成して、ビルドしているホストを識別し、コードをシステム固有のファイルに分けました。

configure.ac

Makefile.am

automake を実行すると、次のようなメッセージで失敗します。

Makefile.in ビルド プロセスでもこの条件を尊重するように automake を構成する方法についてのアイデアはありますか?

ファイルの名前が異なる場合、これは機能しますが、それは C++ コードであり、ファイル名をクラス名と同じに保とうとしています。

前もって感謝します!

0 投票する
4 に答える
1482 参照

linux - GNU/Linux システムでは、どこからアプリケーション データをロードすればよいですか?

この例では、autoconf で c を使用していますが、問題は他の場所にも当てはまります。

実行時に必要なグレイド xml ファイルがあり、その場所をアプリケーションに伝える必要があります。autoconf を使用して、「指定されたプレフィックス ディレクトリ」/app-name/glade を指すコード内の変数を定義しています。しかし、それはアプリケーションがインストールされて初めて機能し始めます。その時点より前にプログラムを実行したい場合はどうすればよいですか? アプリケーション データをチェックする必要があるパスを決定する標準的な方法はありますか?

ありがとう


回答ありがとうございます。明確にするために、アプリ データがどこにインストールされているかを知る必要はありません (たとえば、/usr、usr/local などで検索することによって)。configure スクリプトがそれを行います。問題は、アプリがまだインストールされているかどうかを判断することでした。最初にインストール場所をチェックインし、そうでない場合は「./src/foo.glade」にチェックインすると思います。

0 投票する
4 に答える
549 参照

c++ - Autotools を使用するためのビルド システムのリファクタリング

過去数日間、私は、過去数か月にわたってつなぎ合わせた Makefile の代わりに、autotoolsを使用してプロジェクトをビルドすることについて読んでいます。残念ながら、私のプロジェクト構造が現在どのようになっているのかについて十分な洞察を与えてくれる例は見つかりませんでした。

プロジェクトのアプリケーション コードに含まれる 3 つのライブラリがあります。単一の構成スクリプトを使用して、アプリケーションとライブラリを作成 (およびインストール) する最良の方法を探しています。

0 投票する
1 に答える
1486 参照

makefile - 適用前の依存関係の Autoconf コンパイル

私は過去数日間 autotools を使ってツールを使ってきましたが、最終的に大きな進歩を遂げました. 私が抱えている問題の 1 つは、メインのアプリケーション コードの前にコンパイルする必要がある 2 つのライブラリがあることです。これを行う方法がよくわかりません。私のディレクトリ構造は以下にあり、私のconfigure.acからのスニペットも同様です。

src/Makefileの前にcsv/Makefilegtkworkbook/Makefileの両方をコンパイルする必要があります。これを指定する方法はありますか?現在、アプリケーションのコンパイル プロセス中に存在しないライブラリ (csv) に関するエラーが発生しています。

0 投票する
3 に答える
4673 参照

c++ - configureスクリプトに依存関係をチェックさせる方法

プロジェクトをビルドするために、autoconfを使用してconfigureスクリプトを生成しました。

必要なライブラリがインストールされていない限り、正常に動作します。一部のファイルが不足している場合はエラーが返されますが、実際にはconfigureスクリプトで確認する必要がありますか?

だから私の質問は:依存関係を探してユーザーにそれが欠けているライブラリを伝えるためにautoconfで生成されたスクリプトを変更する方法は?

0 投票する
2 に答える
8035 参照

makefile - Autotools ライブラリとオブジェクト ファイルの出力制御

私の目標は、すべてのオブジェクト ファイルを Makefile のルートではなく .objs ディレクトリに構築し、バイナリ (およびライブラリ) をプロジェクトのbin/ディレクトリにコピーすることです。しかし、これを行う方法を説明するリソースを見つけることができませんでした。どうすればこれを行うことができますか?

これが私の configure.ac とsrc/Makefile.amです - 参照されている 2 つの共有ライブラリ用の同様の Makefile.am ファイルがあります。それらはコンパイルされ、それらをbin/ディレクトリにコピーした後、正常に動作します。私はこのプロセスを自動化しようとしています。

configure.ac

src/Makefile.am

したがって、私の質問は、各 Makefile のコンパイル結果の出力ディレクトリを指定する方法です (それらをbin/にコピーし、オブジェクト ファイルをMakefile のルートではなく各プロジェクトの.objに配置することを希望します)。 .

これまでご協力いただきありがとうございました.このウェブサイトは素晴らしいリソースであり、すでに提供されているリンクから多くのことを学びました.