Я пытаюсь собрать программный пакет Trilinos, и я думаю, что это не удалось, потому что он не мог найти каталог компилятора C правильно. Кто-нибудь может сказать, какое правильное местоположение gccнаходится на моем компьютере Ubuntu 16.04? Мне на самом деле нужны каталоги C, C ++ и fortran.
Я использую скрипт сборки:
cmake \ -DCMAKE_C_COMPILER=<path to C compiler> \ -DCMAKE_CXX_COMPILER=<path to C++ compiler> \ -DCMAKE_Fortran_COMPILER=<path to Fortran compiler> \ -DTrilinos_ENABLE_ALL_PACKAGES=ON \ -DCMAKE_INSTALL_PATH=<path to install Trilinos into> \ <path to Trilinos source> make -j<n> install Я использовал каталоги:
<path to C compiler> = /usr/bin <path to C++ compiler> = /usr/bin <path to Fortran compiler> = /usr/bin Я предполагаю, что C есть gcc-5, C ++ есть, g++-5а fortran есть gfortran-5?
Каталог должен быть /usr/lib/gcc/x86_64-linux-gnuиз Linux C Compiler ?
Сборка cmake выдает сообщение об ошибке (конечная часть вывода сборки):
-- The C compiler identification is unknown -- Check for working C compiler: /usr/bin -- Check for working C compiler: /usr/bin -- broken CMake Error at /usr/share/cmake-3.5/Modules/CMakeTestCCompiler.cmake:61 (message): The C compiler "/usr/bin" is not able to compile a simple test program.
Если вы используете bash (что вы, вероятно, делаете),
typeчасто лучше, чемwhich.which- это внешняя команда, которая не имеет никаких сведений о вашей среде оболочки, поэтому не может отвечать, например, на встроенные функции или функции оболочки, ноtype- встроенная оболочка, что может.typeтакже более явный, когда данная команда не найдена;whichничего не печатает, ноtypeотвечает "not found".