makefileを使ってソフトウェアを構築しました。 makefileには、含める項目を提供するさまざまなプログラム(gsoap、postgresqlなど)への(相対的な)パスも含まれています。 Windows では、ダウンロードした後、目的の場所に解凍してインストールします。しかし、Ubuntuでは、apt-getを使ってソフトウェアをインストールすることをお勧めします。
私が読んだことによれば、apt-getはプログラムを1つのディレクトリにインストールせずに分離します。そうすれば、メイクファイルの内容を見つけることができるディレクトリを簡単に指定することはできません。そうですか? Linuxではどのように処理されますか?
答え1
私はあなたがUbuntuでC / C ++ソフトウェアをビルド/コンパイルすることについて話していると思います。あなたの質問からは明確ではありません。
パッケージ管理システム(ほとんどの主要なディストリビューションを含む)を備えた最新のLinuxディストリビューションでは、可能な限りパッケージ管理システムを使用してソフトウェアをインストールする必要があります。
Linuxディストリビューションでは、ライブラリ自体とライブラリをビルド/コンパイルするために必要ないわゆる「開発」ファイルが通常別々にパッケージ化されています。これは通常libname
(ライブラリの場合)libname-dev
またはlibname-devel
(「開発」ファイルの場合)形式を取ります。 C / C ++の場合、開発ファイルはヘッダーファイルです。
これらのヘッダーファイルは通常、パッケージごとに標準の場所にインストールされ、コンパイラはビルド時にそのファイルを見つけることができます。これらの場所は通常内部です/usr/include
。通常、コンパイラがこれらの場所を指すように特別な作業を行う必要はありません。コンパイラはすでにその場所を知っています。
答え2
ビルドしたいソフトウェアがまともなビルドシステムを使用している場合は、そのソフトウェアが依存しているアイテムをどこで見つけることができるかを教えてください。 - つまり、自動で見つからない場合は自動的に検索する必要があります。 --dev
ソフトウェアを構築するために必要なものを入手するには、パッケージの/ versionが必要な場合があります。-devel