私はこれを thread とこの one に従って、Sudoパーミッションなしで自分のKDEを構築しています。ワークステーションにGitとCMakeがインストールされていなかったため。 / home/<user>の下にインストールし、/ home/<user>/binを追加しましたおよび/ home/<user>/libをPATHとLD_LIBRARY_PATHの両方に。 KDEビルドはCMakeのみをサポートしているため、構成はサポートしていません。そのため、次のようにCMakeでプレフィックスを設定する必要があります:cmake ~/kde-devel/src/kdelibs -DCMAKE_INSTALL_PREFIX=/home/<user>
。この時点で、以下のエラーが発生しました:
> ~/bin/cmake ~/kde-devel/src/kdelibs -DCMAKE_INSTALL_PREFIX=/home/<user>
-- The CXX compiler identification is unknown
-- Check for working CXX compiler: /home/gnu/bin/c++
-- Check for working CXX compiler: /home/gnu/bin/c++ -- broken
CMake Error at /home/<user>/share/cmake-2.8/Modules/CMakeTestCXXCompiler.cmake:45 (MESSAGE):
The C++ compiler "/home/gnu/bin/c++" is not able to compile a simple test
program.
It fails with the following output:
Change Dir: /home/<user>/kde-devel/build/kdelibs/CMakeFiles/CMakeTmp
Run Build Command:/usr/bin/gmake "cmTryCompileExec/fast"
...
2つのC++コンパイラがあることを確認しました。
> where c++
/home/gnu/bin/c++
/usr/bin/c++
CMakeのデフォルトC++コンパイラを/usr/bin/c++
に設定する必要がありますか?そしてどうやって?または、この問題を修正する方法はありますか?
/home/gnu/bin/c++
は、物事を適切にリンクするために追加のフラグを必要とするようで、CMakeはそれについて知りません。
/usr/bin/c++
をコンパイラとして使用するには、-DCMAKE_CXX_COMPILER=/usr/bin/c++
でcmake
を実行します。
また、CMAKE_PREFIX_PATH
変数は、プロジェクトのファイルをインストールする宛先ディレクトリを設定します。 CMakeのインストールプレフィックスとは関係がなく、CMake自体はすでにこれを知っています。
実行apt-get install build-essential
システム。
このパッケージは、ビルドに不可欠であると考えられる他のパッケージに依存し、それらをインストールします。パッケージをビルドする必要がある場合、依存関係の断片的な解決を回避するのに役立ちます。
詳細については、 このページ を参照してください。
新しいラップトップのセットアップでこの問題が発生しました。私にとっての問題は、ツールチェーン(CodeSourcery)が32ビットであり、32ビットライブラリをインストールしていなかったことです。
Sudo apt-get install ia32-libs