2

Linux での開発は初めてで、環境のセットアップに苦労しています。次のライブラリに依存する比較的小さなプログラムがあります。

-lboost_date_time -lboost_regex -lmysqlclient -lmysqlcppconn -lexpat

Ubuntu 12.04 LTSでEclipseを使用しています。正常にコンパイルするには、パッケージ マネージャーと eclipse 内で何をする必要がありますか? を使用するように言われましたsudo apt-get libboost*が、それは一連の競合を出力し、悲しい結論に達します。

E: Unable to correct problems, you have held broken packages.

を正しくインストールlibmysqlcppconn-devしたと思います。libexpat1-dev私がEclipseで行った唯一のことは、リンカーライブラリ設定に -l のものを追加したことです。

結論として、OS と IDE はどちらも私にとって初めてのことです。詳細なヘルプをいただければ幸いです。

以下のターミナルからダンプします。

libboost-dev is already the newest version.
libboost-iostreams1.46.1 is already the newest version.
libboost-iostreams1.46.1 set to manually installed.
libboost-serialization1.46.1 is already the newest version.
libboost-serialization1.46.1 set to manually installed.
libboost1.46-dev is already the newest version.
libboost1.46-dev set to manually installed.
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libboost-date-time1.48-dev : Conflicts: libboost-date-time1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost-filesystem1.48-dev : Conflicts: libboost-filesystem1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost-graph-parallel1.48-dev : Conflicts: libboost-graph-parallel1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost-graph1.48-dev : Conflicts: libboost-graph1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost-iostreams1.48-dev : Conflicts: libboost-iostreams1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost-math1.48-dev : Conflicts: libboost-math1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost-mpi-python1.48-dev : Conflicts: libboost-mpi-python1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost-mpi-python1.48.0 : Conflicts: libboost-mpi-python1.46.1 but 1.46.1-7ubuntu3 is to be installed
 libboost-mpi1.48-dev : Conflicts: libboost-mpi1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost-program-options1.48-dev : Conflicts: libboost-program-options1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost-python1.46-dev : Depends: python-dev but it is not going to be installed
 libboost-python1.48-dev : Depends: python-dev but it is not going to be installed
                           Conflicts: libboost-python1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost-regex1.48-dev : Conflicts: libboost-regex1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost-serialization1.48-dev : Conflicts: libboost-serialization1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost-signals1.48-dev : Conflicts: libboost-signals1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost-system1.48-dev : Conflicts: libboost-system1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost-test1.48-dev : Conflicts: libboost-test1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost-thread1.48-dev : Conflicts: libboost-thread1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost-wave1.48-dev : Conflicts: libboost-wave1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost1.48-dbg : Conflicts: libboost1.46-dbg but 1.46.1-7ubuntu3 is to be installed
 libboost1.48-dev : Conflicts: libboost1.46-dev but 1.46.1-7ubuntu3 is to be installed
 libboost1.48-doc : Conflicts: libboost1.46-doc but 1.46.1-7ubuntu3 is to be installed
E: Unable to correct problems, you have held broken packages.
4

1 に答える 1

3

libboost-devリポジトリにデプロイされた最新のブースト開発パッケージ セットを指す仮想パッケージです。現時点では、ubuntu のバージョンは 1.48.02 が最新のようです (パッケージの説明を参照)。たとえば、12.04 のリリース時に利用可能だったように見える 1.46 など、リポジトリで利用可能な他のバージョンがある可能性があります。

起動時:

apt-get install liboost*

libboostパッケージ マネージャーは、最新バージョンだけでなく、名前が で始まるすべてのパッケージをインストールしようとします。本当に必要なのは、開発パッケージのセットを 1 つだけインストールすることです (およびアプリに必要なすべてのランタイム パッケージをインストールしますが、これは の依存関係トラッカーによって処理されますapt)。

次のコマンド:

apt-get update
apt-get install libboost-dev

また

aptitude install libboost-dev

システムをブースト開発パッケージの利用可能な最新バージョンにアップグレードする必要があります。

于 2013-04-08T10:37:53.033 に答える