タグ付けされた質問 「compiling」

コンパイルは、ソースコードを特定のコンピュータアーキテクチャ用のバイトコードに変換するプロセスです。

7
ディレクトリを常にキャッシュに入れます
私はc ++プロジェクト全体をコンパイルするのにかかる時間を改善するために、さまざまな方法を試してきました。現在、約5分かかります。distcc、ccacheなどを試してみました。最近、プロジェクト全体をRAMドライブにコピーし、そこからコンパイルすると、コンパイル時間が元の30%(わずか1.5分)に短縮されることを発見しました。 明らかに、RAMドライブからの作業は実用的ではありません。だから、誰かがOSに特定のディレクトリを常にキャッシュしておくように強制する方法を知っていますか?私はまだ通常のようにディレクトリをディスクに同期して戻したいのですが、常にメモリ内のデータのコピーも必要です。これは可能ですか? 編集: 可能な解決策としてrsync、ディスクドライブをRAMドライブと同期するために10秒ごとに実行されるデーモンを起動することを考えました。次に、RAMドライブからコンパイルを実行します。rsync速く燃えるれるが、これは実際に動作しますか?確かにOSの方がうまくいく可能性があります。...

5
プログラムを追跡する
単純なプログラムをインストールするときmake && make install、アンインストールターゲットを使用することもしばしばあります。 プログラムをアップグレードしたい場合、古いプログラムの上でシームレスに書き換えられると仮定するのは標準プロトコルですか? これらのプログラムを追跡するにはどうすればよいですか。ほとんどの人は「発火して忘れる」だけで、アンインストールターゲットが指定されていない場合、手動ですべてを削除する必要がありますか?

2
Arch Linuxに-devパッケージがないのはなぜですか?
GentooやSlackwareなどのソースベースのディストリビューションには*-devプログラムのバージョンは必要ないことを理解しています。これらには、ソースコードと、すべてをローカルでコンパイルするためのヘッダーファイルが含まれています。 しかし*-dev、Arch Linuxではパッケージベースですが、パッケージを見たことはありません。*-dev他のディストリビューションの多くのパッケージに出くわしました。

3
Linuxを別のプラットフォーム要件に移植する[終了]
Linuxが利用可能であり、X86、ARM、PowerPCなどの多くの異なるプラットフォームに移植されていることを知っています。 しかし、移植に関しては、正確に何が必要ですか? 私の理解では、LinuxはCで書かれたソフトウェアであるということです。したがって、Linuxを元々X86からARMなどに移植する場合、特定のターゲットアーキテクチャ用のコンパイラでコードを再コンパイルするだけではありませんか? さまざまな周辺機器用のデバイスドライバーは別として、Linuxを新しいアーキテクチャに移植する際に他に必要なことは何ですか。コンパイラは私たちのためにすべてを処理しませんか?

3
.inファイルとは何ですか?
プロジェクトのソースに「* .in」ファイルが表示されることがあります。たとえば、「Makefile.in」の束。「.in」の意味は何ですか?私は、これはとは何かがあることを前提としていautoconfたりmake、または、それらのようなものを、私はよく分かりません。 「.inファイル拡張子」、「autoconf .inファイル拡張子」、「autoconf .in」、「autoconf dot in」、およびその他の亜種を、運よく検索しようとしました。

2
GCCの代わりにIntelのコンパイラで完全なLinuxシステムをコンパイルすることは可能ですか?
互換性の問題があるのでしょうか? Intelベースのシステムでは、IntelコンパイラがGCCよりも優れた仕事をする可能性があるという印象があります。おそらく、これを試みたディストリビューションがすでにあるのでしょうか? Gentooを使用すると、これは非常に簡単だと思います。
26 compiling  x86 

2
ウェイランドとは
軽量のXサーバーを探していましたが、見つけられませんでした。その後、ウェイランドについて知りました。Xとの共存を目指していると言いますが、スタンドアロンで実行できます。 コンパイルしようとすると、Mesaが必要です。MesaにはXが必要です。 Wayland とは正確には何ですか?
25 xorg  x11  compiling  wayland 

3
configureコマンドを実行できません:「そのようなファイルまたはディレクトリはありません」
ソースからDebianパッケージをインストールしようとしています(git経由)。パッケージをダウンロードし、パッケージのディレクトリに変更して./configureコマンドを実行しましたが、返されましたbash: ./configure: No such file or directory。何が問題になりますか?configure.acファイルは、プログラムフォルダにあります。 ./configure make sudo make install


5
automakeとautoconfはコードをコンパイルする標準的な方法ですか?
私は時々ソースからアプリをコンパイルし、私はどちらかを使用しています: ./configure make sudo make install しかし、最近、./autogen.shconfigureおよびmakeスクリプトを生成して実行します。 C / C ++ / C#(mono)コンパイルを効率化する他の方法は何ですか?Makeは少し古いようです。新しいツールはありますか?選択肢があれば、どちらを使用すればよいですか?

14
ソースからのコンパイルをサポートするディストリビューション
ずっと前に、私はFreeBSDをそのポートシステムで使用していました。その後、ソースからコンパイルしてアプリケーションをインストールするために、Gentooをportageに使用しました。システムを直接ターゲットにするためにこれを行いました。 そのような構成をサポートする他のディストリビューションはありますか?Slackwareに似たようなものがあることを覚えているようです。

9
vimからコードをコンパイルする
新規vimおよびvim新規ターミナルを実行してコンパイラーを呼び出すことなく、内部からコードをコンパイルできるようにしたい。 これを行うにはどうすればよいですか?この要件はこれに限定されないことに注意してください。私が作業している現在のスクリプトをgcc呼び出す必要がある場合があるpythonので、アイデアを得ることができます...
18 vim  compiling  ide 


2
Linuxカーネルモジュールにローカルヘッダーファイルを含める方法
mymod次のようなソースファイルを含むモジュールがあるとします。 src / mod / mymod.c src / inc / mymod.h 私は次のようにmymod.hをインクルードしようとします #include <mymod.h> メイクファイルには含まれてEXTRA_CFLAGS= -I$(shell pwd)/../inc/いますが、カーネルが作成されると、次のようなエラーが表示されます。 mymod.hが見つかりません その理由は、カーネルモジュールが作成されると、このコマンドがmakefileから実行されるためだと思われます:(makeV1 を使用): make -C <path/to/linux/src> M=<path/to/mymod> modules 他の作品では私$(shell pwd)はに拡張されました<path/to/linux>。これは私が望むものではありません。どのようにして指定することができます-Iを指すようにパラメータをsrc/inc私のmymodソースツリー?
17 linux  kernel  compiling  make 

5
複数のコアでコンパイルするときにmakeがハングする原因は何ですか?
昨日、ソースからROOTパッケージをコンパイルしようとしていました。6コアのモンスターマシンでコンパイルしていたので、先に進み、を使用して複数のコアを使用してビルドすることにしましたmake -j 6。コンパイルは最初はスムーズで非常に高速でしたが、ある時点でmake1つのコアで100%CPUを使用してハングしました。 私はいくつかのグーグル検索を行い、ROOT掲示板でこの投稿を見つけました。このコンピューターを自分で作ったので、ヒートシンクを適切に適用しておらず、CPUが過熱しているかどうかが心配でした。残念ながら、ここには冷蔵庫がありません。 lm-sensorsパッケージをインストールし、make -j 6再度実行しましたが、今回はCPU温度を監視しました。温度は高くなりましたが(60 Cに近い)、高温または臨界温度を超えることはありませんでした。 実行しようとしましたmake -j 4がmake、コンパイル中に別の場所で再びハングしました。 最終的には、実行中にコンパイルmakeしましたが、うまくいきました。私の質問は:なぜそれがぶら下がっていたのですか?2つの異なるスポットで停止したという事実により、何らかの競合状態が原因であると推測されmakeますが、-jオプションを提供しているため、すべてを適切な順序で取得するのに十分賢いはずです。
17 linux  compiling  make 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.