Кажется, я не могу скомпилировать Node.js на CentOS 6.6 (64 бит) GCC v4.9.2
$ ./configure
Node.js configure error: No acceptable C compiler found!
Please make sure you have a C compiler installed on your system and/or
consider adjusting the CC environment variable if you installed
it in a non-standard prefix.
Подробнее:
$ which gcc
/usr/bin/gcc
$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/gcc/libexec/gcc/x86_64-unknown-linux-gnu/4.9.2/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: ../gcc-current/configure --enable-languages=c,c++,fortran --enable-multilib --prefix=/usr/local/gcc
Thread model: posix
gcc version 4.9.2 (GCC)
$ which python
/usr/bin/python
$ python --version
Python 2.6.6
Я пробовал установить CC ..
$ CC="/usr/local/gcc/bin/gcc"
$ set | grep CC
CC=/usr/local/gcc/bin/gcc
но это приводит к той же ошибке.
Любые идеи?
Что случилось с компилятором, который придумала система?
Я установил более новую версию компилятора (v4.9.2) в /usr/local/gcc
, и удалил исходный компилятор (v4.4.7) и попытался заменить его таким образом:
yum remove -y gcc gcc-c++ cpp
sudo mv /usr/bin/g++ /usr/bin/g++_old
sudo mv /usr/bin/c++ /usr/bin/c++_old
sudo ln -s -f /usr/local/gcc/bin/gcc /usr/bin/gcc
sudo ln -s -f /usr/local/gcc/bin/g++ /usr/bin/g++
sudo ln -s -f /usr/local/gcc/bin/c++ /usr/bin/c++
sudo ln -s -f /usr/local/gcc/bin/cpp /usr/bin/cpp
sudo ln -s -f /usr/local/gcc/bin/gfortran /usr/bin/gfortran
sudo ln -s -f /usr/local/gcc/bin/gcov /usr/bin/gcov
sudo cp /usr/local/gcc/lib64/libstdc++.so.6.0.20 /usr/lib64/.
sudo mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.bak
sudo ln -s -f /usr/lib64/libstdc++.so.6.0.20 /usr/lib64/libstdc++.so.6
Я делаю это, потому что я установка HHVM в этой системе которому нужен последний компилятор.
Эта настройка компилятора может работать для hhvm, но для чего-то еще она бесполезна. Довольно сложно иметь две версии gcc в одной системе. Вы можете сделать что-то вроде использования коллекции программного обеспечения, но мне лично они не нравятся, поскольку они не очень просты в использовании.
Ты должен быть с использованием CentOS 7в любом случае, так как это не потребует от вас замены компилятора, и многие вещи будут актуальными. В целом, создание системы на базе C7 в любом случае решит все ваши проблемы и будет более надежным в будущем.