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

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

3
apt-get build-depがソースパッケージを見つけることができません
私はすでにこのガイドに従って、Ubuntu 12.04でマウスの中ボタンの貼り付けを無効にしました。 魔法のように機能します。 今、私はLinux Mint 17で同じことを達成しようとしています。 sudo apt-get build-dep libgtk2.0-0 次の出力が得られます。 Reading package lists... Done Building dependency tree Reading state information... Done Picking 'gtk+2.0' as source package instead of 'libgtk2.0-0' E: Unable to find a source package for gtk+2.0 私にとっては、apt-getは何らかの形で「解決」'libgtk2.0-0'しているように見えます'gtk+2.0'が、そのような名前のパッケージは見つかりません。 編集:プログラムをコンパイルできるようになりました(私の答えをご覧ください)が、Picking 'gtk+2.0' as source package instead of 'libgtk2.0-0'どういう意味なのかまだわかりません 。これについての洞察はありがたいです、ありがとう!
16 apt  compiling 

1
カーネルをコンパイルしようとすると、認証エラーが発生します
現在、Kali LinuxデスクトップにGrsecurityを使用して4.5.7カーネルをインストールするために、このガイドに従うことを試みています。私は4.5.7カーネルにGrsecurityのテストパッチを使用しようとしており、ストレートなDebianの代わりにKali Linuxを実行しているという事実を除いて、その命令のリストを逐語的にフォローしています。しかし、カーネルをコンパイルしようとするたびに、「CC certs / system_keyring.o」という行に続いてこのエラーが発生します。 CC certs/system_keyring.o make[2]: *** No rule to make target 'debian/certs/benh@debian.org.cert.pem', needed by 'certs/x509_certificate_list'. Stop. Makefile:951: recipe for target 'certs' failed make[1]: *** [certs] Error 2 make[1]: Leaving directory '/home/jc/Downloads/linux-4.5.7' debian/ruleset/targets/common.mk:295: recipe for target 'debian/stamp/build/kernel' failed make: *** [debian/stamp/build/kernel] Error 2 私が見つけたように、パッチや修正を適用しなくてもすべてのカーネルでこのエラーが発生するため、カーネルをコンパイルするために使用しているツール(明らかに何らかのシステムキーチェーン)と関係があります。誰かが私のOSを修正してカーネルをコンパイルする方法を教えてもらえますか? PSこれは次の出力ですcat /proc/version。 Linux …


4
Ralink RT2870のドライバーのコンパイルエラー
Kali Linuxにrosewill RNX-N600UBEワイヤレスカード(Ralink RT2870チップセット)のドライバーをインストールしようとしています。Webサイトからドライバーをダウンロードし、解凍/解凍しましたが、「make」コマンドを実行しようとすると、このエラーが発生します。 /home/fox/System/2011_0427_RT3572_Linux_STA_v2.5.0.0.DPO/os/linux/../../os/linux/rt_linux.c:1156:20: error: incompatible types when assigning to type ‘int’ from type ‘kuid_t’ /home/fox/System/2011_0427_RT3572_Linux_STA_v2.5.0.0.DPO/os/linux/../../os/linux/rt_linux.c:1157:20: error: incompatible types when assigning to type ‘int’ from type ‘kgid_t’ make[4]: *** [/home/fox/System/2011_0427_RT3572_Linux_STA_v2.5.0.0.DPO/os/linux/../../os/linux/rt_linux.o] Error 1 make[3]: *** [_module_/home/fox/System/2011_0427_RT3572_Linux_STA_v2.5.0.0.DPO/os/linux] Error 2 make[2]: *** [sub-make] Error 2 make[1]: *** [all] Error 2

1
RPM .specでSELinuxコンテキストを設定する適切な方法は何ですか?
私はRHEL4と5をターゲットとするRPMを構築しようとしていますが、今は複数のGoogleエントリchconから%post「それはあなたのやり方ではありません」と言われていますが、正しい方法は非常に限られています。またfixfiles -R mypackage check、ファイルが正しい場合、ファイルが間違っていると言うことに気付きました(予想どおり、RPM DBは私が望むものを認識しません)。 それがないので、私は、具体的RHEL4を言わないで持ってsemanage、それを行うには、適切な方法の一つであると思われます。(新しいポリシーを追加してrestoreconから、ディレクトリで実行します%post。) また、httpd_cache_t標準ではないディレクトリ上で、独自のコンテキストは必要ありません。 「cpio世話をしましょう」も見たことがありますが、非ルートRPMビルドユーザーがchconビルドディレクトリで実行できないという新しい問題があります。私はごまかしsudoてspecファイルにありましたが、それはとにかく重要ではないようでした。
14 compiling  rpm  selinux 

6
最小限のLinuxデスクトップを構築するためのツールを探しています
私のLinux デスクトップを構成することは、通常、機能を追加したり調整したりする代わりに膨張を取り除くことを意味するという事実にますます不満を感じています。私は非常に最小限のものから始めてから、追加機能を提供することについて学んだパッケージを追加したいという結論に達しました。 だから私は非常に最小限のデスクトップディストリビューションか、そのようなディストリビューションを構築するためのより良いツールを探しています。または、言い換えると、パッケージマネージャーを実行前のビルドツールに置き換えたいのです。 パッケージマネージャーは問題ありませんが、巨大なパッケージリポジトリではなく、高度な事前設定に焦点を当てたディストリビューションを探しています さまざまな最小限のデスクトップディストリビューションを見てきましたが、それらはすべて異なる問題を解決するようです。たとえば、古いハードウェアで実行するように設計されているか、cd / stick / ramfsから実行するように設計されています。しかし、私は古いハードウェアを持っているので、さまざまな部品がどのような目的を果たしているのかを知りたいので、最小限の配布は望みません。メインメモリから実行することもそこでは助けになりません。最小限でシンプルなものが欲しいです。 どうやらミニマリズムのために設計されたディストリビューションはないように思えるので、Linux From Scratchをビルドするのは明らかな選択肢だと思います。ただし、ビルドプロセスを高度にカスタマイズしたいのですが、満足のいくシステムができるまで何度も実行する必要があるため、ビルドプロセスも自動化する必要があります。 ビルドプロセスを自動化できるlfs用のツールが存在しますが、それは本当に不可欠な部分ではありません。基本的には、ドキュメントからシステムを構築するために必要な手順を抽出し、自動的に実行します。私はもう少し堅牢で高度なものを探していますが、xmlを編集する気もありません。 少し検索した後、組み込みディストリビューションをビルドすることを目的としているが、X11のインストールも可能にするBuildrootを見つけました。ツールチェーンを作成してからrootfsを作成する前に、Linuxと同じようにビルドを構成できます。これは、組み込みシステム用のクロスコンパイルを意図していることを除いて、私が念頭に置いていたものとまったく同じです。make menuconfig 私が現在考えているのは、buildrootを使用することですが、最初にすべての埋め込まれた特定の部分をリッピングして、それらをlfsのそれぞれの部分に置き換えます。たくさんの仕事。 また、ビルドルートにはいくつかの問題があります(私の制限テストからわかるように)追加のパッケージを有効にすると、ホールがゼロから再構築されますが、些細な変更ではそれを避けたいと思います。 その時間を投資する前に、デスクトップディストリビューションをビルドするためのbuildrootの代替/フォークであるbuildrootのようなプレインストールビルドツールを使用して、デスクトップディストリビューションの検索を続けます。 編集:これまでの回答は、私が現在使用しているGentooなどのディストリビューションを示しています。しかし、Gentoo、Arch、Debianなどのディストリビューションは最小限のものではないため、これらのディストリビューションに代わるものを探しています。また、インストール後にこれらのディストリビューションをカスタマイズする必要があります。インストール前にカスタマイズできるものが欲しい。 上記のディストリビューションはすべて素晴らしいディストリビューションですが、私が探しているものではありません。私が探しているのは「デスクトップ用のビルドルート」です。buildrootが何であるかわからない場合、おそらく私を満足させる答えを提供することはできません。 また、この質問は主観的だとは思いません。私は自分のニーズに近いものを見つけることができないので、私が必要としているものの少なくとも一部を提供する可能性のあるプロジェクトに私を向けるようお願いします。

3
カーネルをコンパイルするときにinitrdのサイズを減らす方法は?
独自のカーネルをコンパイルするとき、基本的に次のことを行います。 www.kernel.orgからソースをダウンロードして解凍します。 以前.configのバージョンをソースにコピーしてmake menuconfig、新しいオプションを監視し、カーネルの新しいポリシーに従って構成を変更します。 次に、コンパイルします。 make -j 4 最後に、インストールしますsu -c 'make modules_install && make install'。 いくつかのテストの後、私は(から古いカーネルを削除/bootして/lib/modules)、新しいものと完全に実行します(この最後のステップは、私の人生に数回保存した!それはだプロヒント!)。 問題は、/boot/initrd.img-4.x.x自分のディストリビューションのものと比べて常に大きなAを取得することです。ここに、現在の/boot/ディレクトリの内容を例として示します: # ls -alFh total 243M drwxr-xr-x 5 root root 4.0K Mar 16 21:26 ./ drwxr-xr-x 25 root root 4.0K Feb 25 09:28 ../ -rw-r--r-- 1 root root 2.9M Mar 9 07:39 System.map-4.4.0-1-amd64 -rw-r--r-- …

2
stderrのみをリダイレクトするにはどうすればよいですか?
これを行うのに少し問題があります。コンパイルされた.javaファイルを実行し、stderrのみをerrorというファイルにリダイレクトする必要があります。したがって、.javaファイルの名前はjavaProgram.javaです。 これは私が試したものです: java javaProgram 2> error しかし私が cat error 特定の.javaファイルにエラーがないことを知っていても、そこには何かがあるようです。私は何か間違っていますか?このエラーファイルに表示したいのはエラーだけで、それ以外はありません。


7
apueからコードをコンパイルする
たった今、私は本を読み始めました:UNIX®環境での高度なプログラミング。最初のコード例を実行してみました。Scientific Linux 6.4を実行しています。 ソースコードをダウンロードし、READMEにあるようmakeに、非圧縮ファイルで実行しました。 最初のプログラムを作成しました(モックlsコマンド) #include "./include/apue.h" #include <dirent.h> int main(int argc, char *argv[]) { DIR *dp; struct dirent *dirp; if(argc!=2) err_quit("usage: test directory_name"); if((dp=opendir(argv[1]))==NULL) err_sys("Can't open %s", argv[1]); while((dirp=readdir(dp))!=NULL) printf("%s\n", dirp->d_name); closedir(dp); return 0; } それを非圧縮ファイルに入れます。本が助言したように、私は走りました:gcc myls.c。しかし、私はこのエラーを受け取ります: # gcc myls.c /tmp/ccWTWS2I.o: In function `main': test.c:(.text+0x20): undefined reference to `err_quit' …
12 compiling 

1
最初のramdiskがこんなに大きいのはなぜですか?
カーネルバージョンに付属するUbuntu 11.10を実行しています3.0.0-14。3.1.0ブランチからカーネルをダウンロードして構築しました。新しいカーネルをインストールした後、/boot/initrd.img-3.1.0ファイルが巨大であることがわかりました。私/boot/initrd.img-3.0.0-14-genericは約13MBですが、それは114MB です。私は明らかにむやみになっているむくみを取り除きたいです。 新しいカーネルを構築する際、元のカーネルの構成を保持する/boot/config-3.0.0-14-genericため.configに、ビルドディレクトリにをコピーしました。実行しmake oldconfig、すべての新しいオプションのデフォルトを選択して、カーネルを構築しました。 各initrd cpioアーカイブ内のファイルサイズを見ると、3.1.0 ramdiskでは、3.0.0-14よりもすべての.koモジュールのサイズが大きいことがわかります。構成ファイルで不要なデバッグフラグがチェックされていると想定しましたが、3.0.0-14構成ファイルでまだ有効になっていないものはありません。 私/boot/config-3.0.0-14-genericはここにいます:http : //pastebin.com/UjH7nEqd そして、私/boot/config-3.0.1はここにいます:http : //pastebin.com/HyT0M2k1 誰もが不必要な膨張がどこから来ているのか説明できますか?

2
バイナリパッケージとは何ですか?それらを構築する方法?
バイナリパッケージの詳細を取得して、Linuxで実行したいと考えています。Debianベース(Ubuntu / Linux mint)Linux osを実行しています。 ソースからバイナリパッケージをビルドする方法は?また、アプリケーション(Firefoxなど)やゲ​​ーム(Boswarsなど)のバイナリパッケージを直接ダウンロードできますか? 「xyz.linux.run」形式の直接パッケージを実行します。これらのパッケージとは何ですか?それらは依存関係から独立していますか?または、ビルド済みのバイナリパッケージですか? Linuxで直接「xyz.linux.run」を実行して、Linuxオペレーティングシステムで実行できるそれらのビルド方法。 バイナリパッケージとdebパッケージの違いは何ですか?

1
モジュールをロードできません:シンボルmodule_layoutのバージョンについて同意しません
このチュートリアルに従って、最初のドライバーを作成します。 Makefileは次のとおりです。 # Makefile – makefile of our first driver # if KERNELRELEASE is defined, we've been invoked from the # kernel build system and can use its language. ifneq (${KERNELRELEASE},) obj-m := ofd.o # Otherwise we were called directly from the command line. # Invoke the kernel build system. …


3
コンパイルを続行するにはどうすればよいですか?
makeソースツリー全体を再コンパイルしなくても、いつでもプロセスを中断できることはわかっています。私が知っているようにmake、ターゲットがまだコンパイルされていない場合、または最後のコンパイル後にソースコードが変更されている場合にのみ、ターゲットをコンパイルします。 しかし、私が中断した場合make、1つ以上の(並行性レベルに応じて)ハーフレディバイナリが確実に存在します。次に実行するときに、それらはmakeどうなりますか?または、部分的にコンパイルされたバイナリを回避するためにCtrl+ を押すと、現在のターゲットが終了しCますか?

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