一尘不染

CMake抱怨“ CXX编译器标识未知”

linux

我下面这个线程,这一个建立自己的KDE没有须藤权限。由于没有在工作站上安装Git和CMake。我只是将它们都安装在
/ home / <用户>下,并将 / home / <用户> / bin/ home / <用户> /
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++吗?如何?还是有什么办法可以解决此问题?


阅读 531

收藏
2020-06-07

共1个答案

一尘不染

/home/gnu/bin/c++似乎需要附加标志才能正确链接事物,而CMake对此一无所知。

/usr/bin/c++用作编译器,请cmake使用-DCMAKE_CXX_COMPILER=/usr/bin/c++

另外,CMAKE_PREFIX_PATH变量设置目标目录,该目录应安装项目的文件。它与CMake安装前缀无关,并且CMake本身已经知道这一点。

2020-06-07