ソースからアプリケーションをインストールする


12

Linuxのすべてのアプリケーションの一般的なインストールについて疑問に思っていました。それはどういう意味ですか?Windowsを使用していたときに、アプリケーションをインストールする場合は、.exeファイルをダブルクリックしてから、next、next、nextをダブルクリックすることを知っていました。

Linuxでは、アプリケーションをインストールする一般的な(汎用ではない)方法があるかもしれないことを理解しています。多分ソースからインストールしますか?さて、Windowsのようなアプリケーションをインストールするために使用できるステップバイステップの方法はありますか?

私はグーグルに質問し続けたくないので、どのように尋ねていますか?だから、私はこのガイドのソースfreecadから最近インストールすることに成功しました、 そしてそれは一般的な方法として非常に良いスタートだと思いますよね?

しかし、問題は適切なソースを見つける場所と、アプリケーションに非常にユニークなインストール方法がある場合です!


.tar.gzからインストールする方法の重複
タキオン

いいえ、私の質問は明確だったと思います!ちょうどより深い情報
ガブリエル

素晴らしい素晴らしい素晴らしいhowtogeek.com/105413/…–
モハマドレザレスワニ14年

回答:


14

インストール手順はプログラムによって異なりますが、autotools(automakeおよびautoconfを含む)やcmakeなどの確立されたツールがあります。

プログラムはさまざまなプログラミング言語で提供されるため、すべてのパッケージに適した汎用コマンドを提供するのは困難です。たとえば、Pythonにはsetup.pyスクリプトがよくありますが、Cプログラムではよくautotoolsまたは少なくともMakefileを使用します。

私はいつも、INSTALL、README、または同様のファイルを見つけることから始めます。ソースからプログラムをコンパイルする必要がある場合、おそらくbuild-essentialコンパイラーやその他の汎用開発パッケージに依存するパッケージが必要になります。

コンパイルしようとしているプログラムによっては、他の依存関係をインストールする必要がある場合があります。READMEを確認するか、./configureスクリプト(抽出されたソースのルートにある実行可能ファイル)の出力を確認してください。たとえば、「x11開発ヘッダー」が必要であると表示されている場合は、リポジトリで「x11-dev」または「libx11-dev」をlibx11-dev探してみてください(この場合、探しているものです)。

autoconf / automakeでビルドされたソースディストリビューションは、以下を使用して抽出および設定できます。

tar xf foo-1.0.tar.gz
cd foo-1.0
./configure
make
sudo make install

利用./configure --help可能なオプションに使用します。デフォルトでは、多くの場合、ファイル/usr/localは完全にインストールされます。ファイルを.debファイルにパッケージ化する場合を除き/usr、パッケージ管理システム(dpkg)と競合する可能性があるため、このプレフィックスを変更しないでください。

makemake install、指定された場所にファイルをインストールするすべてのコンパイルを開始することになっています(sudoなどの特権的な場所への書き込みに必要です/usr/local)。後でアンインストールするには、ソースディレクトリから実行しsudo make uninstallます(パッケージがautoconf / automakeで適切にビルドされていることを条件とします。これは、ユーザーではなく開発者の責任です。

コンピューターのソフトウェアセンターからパッケージをコンパイルするだけの場合は、次の手順を実行します(packageそれに応じてバージョンを置き換えます)。

sudo apt-get build-dep package
apt-get source package
cd package-1.0
dpkg-buildpackage -b -uc -us

コマンドの詳細については、それぞれのマニュアルページを参照してください。(例:man dpkg-buildpackageターミナルで実行)。これらのコマンドを実行すると、親ディレクトリに.debファイルが作成されます。可能な場合は、Ubuntuリポジトリのパッケージを使用することをお勧めします。上記の手順は教育上の理由で示されていますが、一般的には、パッケージをビルドする前にいくつかのファイルを変更する必要があります。


実際、非常に役立ちます。したがって、唯一の一般的な方法は、パッケージをダウンロードして(tar ??)、その内容を表示するために抽出することです!インストールファイルは、私がそれらすべてのコマンドを処理していたものですか?または、すべてのアプリケーションファイルディレクトリは、センターからのインストールまたはソースからのインストールのいずれかで特定ですか? optまたは/ usr?ありがとう
ガブリエル

更新された投稿を参照してください。ディレクトリの抽出と変更は、すべてのケースの99%です。.tarの後には、.gz、.bz2、.xzなどのさまざまな拡張子が表示される場合があります。これらは圧縮形式を参照します。.zipはファイルのアクセス許可を保存できないため、あまり一般的ではありませんが、少なくとも7-zipで見られます。注:私の指示は、「ソースからコンパイルする」ためのより一般的なものです。パスと構成は、Ubuntu Software Centerのものとは異なります。
-Lekensteyn

だから、どのディレクトリで作業しているのかは関係ありません./configure、make、make install。たとえばidをダウンロードしてホームディレクトリに抽出すると、これらのコマンドを実行する必要があり、make installコマンドは自動的にインストールファイルを配置します特定のディレクトリは正しいですか?
ガブリエル

ではないので、Windowsのような特定のディレクトリ「Program Files」は正しいですか?
ガブリエル

tarballを抽出した後、抽出したディレクトリにディレクトリを変更します。正確な場所は重要ではありません。ホームディレクトリまたは〜/ Downloadsで実行できます。パスに空白が含まれていないことを確認してください。たとえば、~/Downloaded Sourcesどこ~/Downloaded-sourcesが問題ないかは悪い考えです。最後の質問については、askubuntu.com
q /

7

FreeCADはUbuntu Software Centerで入手できるため、ソースコードからビルドおよびインストールする必要はありませんでした。

Ubuntu Software Centerは、常に最初に見るべき場所です。インストールはボタンをクリックするだけです。

画面の左側のバーにUbuntu Software Centerのアイコンがあります。

本当にソースからプログラムをビルドしてインストールしたい場合は、READMEファイルまたはプログラムに付属するその他の指示を探してください。

多くのソフトウェアパッケージはビルドシステムとしてGNU autotoolsを使用し、次のコマンドでビルドおよびインストールできます。

./configure
make
sudo make install

プログラムをビルドする前に、必要なライブラリおよびその他の依存関係を確認する必要があります(プログラムのドキュメントにも記載されている必要があります)。上packages.ubuntu.comあなたは必要なライブラリが含まれているUbuntuのパッケージを見つけることができます。

プログラムにと呼ばれるライブラリが必要だとすると、blahおそらくパッケージをインストールする必要がありますlibblah-dev(上記のUbuntuパッケージページで正確な名前を検索してください)。

sudo apt-get install libblah-dev

ハハ、このアイコンは知っています!でも、アプリケーションのソフトウェアセンターに「canonicalは重要な更新を提供しない」という説明があり、freecadバージョンは0.8で、freecad v0.13.Iをインストールしたことに気付いた場合Linuxシステムの深い知識が欲しいのですが、ソフトウェアセンターがどこにあるのかを答えるのではなく、とにかくありがとう!:
ガブリエル

今、あなたは正しく話しています!そして、本当にありがとうございました、それは私がちょうど欲しい深い知識です!
ガブリエル

それでは、ソースからアプリケーションをインストールする場合、このアプリケーションの人々はソースコードを提供する必要がありますか?たとえば、商用アプリケーションをインストールする場合、ソースからはインストールできませんか?それでも、オープンソースプロジェクトは正しいですか?アプリケーションは、商業用以外のすべての人にソースを公開しています。
ガブリエル

「ソースからアプリケーションをインストールする場合、このアプリケーションの人々はソースコードを提供する必要がありますか?」-はい、もちろん、「ソースから」の意味です!そして、それがオープンソースではない商用プログラムである場合、ソースコードは入手できません。
ジェスパー

だから、ほとんどのWindowsアプリはLinuxにインストールできないのですか?
ガブリエル

2

基本的なアプローチは2つしかありません。

  1. Software Centerまたは関連ツール(Synaptic apt-getなど)を使用します。通常、これが最適なオプションです。この方法の外に出ると、問題や更新の困難などの問題が発生する可能性があるため、自分が何をしているのかを知っている場合にのみ、他のことを行うべきです。
  2. ドキュメントを読み、それを使用してインストールします。プロジェクトのWebサイト、tarball、またはファイルを取得した場所から見つけることができます。または、ドキュメントがない場合もあります。その場合、Googleまたは推測する必要があります。ソフトウェアをインストールする方法は非常に多くあります。混乱する場合は、1に戻ります。

    パッケージが標準を使用している場合、使用して、ビルドしたものの.debを取得./configure; make; sudo make installできますcheckinstall。そうすれば、パッケージ管理を犠牲にする必要はありません。


ソフトウェアセンターと.debファイルに問題があるため、この質問をしました。たとえば、draftsight、cadプログラムを32ビット専用にインストールしたいので、依存関係を無視してアーキテクチャコマンドを試してみましたが、何も来ませんでしたon.So .debファイルの抽出は可能ですか?makeとsudo makeなどを使用した手動インストール?ありがとう
-gabriel

アーキテクチャに利用可能な.debがない場合は、プログラムを別の方法でインストールする必要があります。他の人がどのようにそれを行ったかをグーグルで検索するか、適切なアーチを持つ.devを検索するか、ソースからビルドします。重要なものについては、今後の編集を参照してください。
スコットセブランス

これらのコマンドを実行する前にcheckinstallを実行しますか?また、.debが表示されますか? .debその後、checkinstallを実行して、たとえば64ビットで実行するか、この質問が間違っていて愚かですか?
ガブリエル

checkinstall既存の.debパッケージでは使用できません。.debが既にある場合、技術的にはそれを抽出して手動でインストールできますが、それは最善の方法ではありません。checkinstallソースからビルドするときに使用します。書式設定のヘルプについては、投稿時に常に表示されるヘルプリンクを参照してください。
スコットセヴェランス

だから、私が持っている64ビットとは異なるアーキテクチャを持つ.debファイルを抽出して手動でインストールするべきではありませんか?「ソースからビルドするときです」というとき .debファイルはどこからビルドされますか?ソースからビルドするのと同じソースコードを使用しますか?
ガブリエル

0

ソースからのインストールをサポートするのは非常に困難です。

可能な限り、ソフトウェアセンターからインストールします。これは、ウィンドウnext-> next-> finish mentalityに相当します。

Windowsのソースからもインストールできます。これはLinuxに固有のものではなく、Linuxをターゲットとするより多くのソース利用可能なアプリケーションです。


1
さて、私は3年前のLinux体験に飛び込みたいと思っていますが、最終的にはどのようにどのように尋ねるかを尋ねないことです、あなたは私を感じていますか?私のLinuxの知識をますます深くしてください。ソースなどを教えてください。
ガブリエル


?アプリケーションは、ソフトウェアセンターからインストールするには、どのように私のUbuntuにはdebファイルを持っていないときも、私はaskubuntu.comまたは「?Ubuntuの11.10でこれをインストールするには、どのように」google.gr「」「」に依頼する準備ができてAGAINています
ガブリエル

はい。アプリケーション固有の方が優れています。特定のユーザー向けに、再現性のあるターゲットを絞った回答を作成します。したがって、それらは便利です。
RobotHumans

まあ、それは本当に非常に役立ちます。あなたは私を感じて、私がちょうど欲しいものをくれました。しかし、Linuxについて多くのことを読んだ後、私はあなたに尋ねたいですこのようなことは決して不可能です?
ガブリエル

0

Ubuntuはさまざまなインストール方法を提供します

  1. 集中包装システム経由

    これはubuntuで好まれている方法です(しかし個人的には好きではありません)ソフトウェアセンター、シナプス、および適性はそのための例です

  2. スタンドアロンdebパッケージ:-この方法は、Windowsの場合のように簡単です。ファイルをダブルクリックして、インストールボタンを押すだけです。例:Gdebiパッケージマネージャー

  3. バイナリソフトウェア:これらは、Windows .exeインストールに非常によく似ています。インストーラにさまざまなGUIを提供します。これらは通常、.binファイルです。

    ビットロックまたは同様のツールを使用して、このようなパッケージを作成できます

  4. 自動パッケージと同様のツール:-これらは、さまざまなLinuxディストリビューションをサポートするために作成されたサードパーティのパッケージマネージャーです

  5. ソースコード:これはソフトウェアインストールの最初の方法です。この方法では、ソースコードはバイナリ実行可能ファイルに変換されます。これらのソフトウェアのインストール手順は、通常ソースコードに添付され、これらはオープンソースソフトウェアにのみ有効です

警告:-これらは私の観察のみです、私はLinuxの初心者ですので、何かが間違っている場合は自由に編集/ダウン投票しました


おかげで、私の経験から、私は通常ソフトウェアセンターでアプリの説明を参照し、標準が更新を提供する場合はセンターからインストールします。役に立つ
ガブリエル

オプション1は、更新を自動的に取得できるため、3および4よりもはるかに優れています。必要なパッケージまたはバージョンがリポジトリにない場合は、オプション2で問題ありません(オプション1)。パッケージ管理のすばらしい利点をすべて活用しておらず、今後の競合を招く可能性があるため、可能な限り番号3と4は避けてください。Autopackageは独自のパッケージ管理を行いますが、それでも別のシステムであり、競合や古いものが発生する可能性があります。そして、あなたがプログラマーでない限り、ソース用にビルドしないようにしてください。パッケージ管理は素晴らしいことです!
スコットセヴェランス

私のインターネット接続が遅いという理由だけでこれらの方法を好む:p
Tachyons
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.