当前位置: 技术问答>linux和unix
gcc安装问题?急问!(菜鸟,高分赠送)
来源: 互联网 发布时间:2015-06-20
本文导语: 有朋友告诉我,Linux是默认安装gcc的,因为内核编译的需要。 我们用的都是Redhat7.3。 不解,因为我在命令行下输入gcc -help,显示没有这个命令。 请教各位,真是默认安装嘛?如果不是,“内核编译的需要”怎么解释...
有朋友告诉我,Linux是默认安装gcc的,因为内核编译的需要。
我们用的都是Redhat7.3。
不解,因为我在命令行下输入gcc -help,显示没有这个命令。
请教各位,真是默认安装嘛?如果不是,“内核编译的需要”怎么解释?
于是我找到2个rpm包 RedHat-9 for i386 gcc-3.2.2-5.i386.rpm
RedHat-9 Sources gcc-3.2.2-5.src.rpm
这两个什么区别,我该安装哪一个?
非常感谢各位。
我们用的都是Redhat7.3。
不解,因为我在命令行下输入gcc -help,显示没有这个命令。
请教各位,真是默认安装嘛?如果不是,“内核编译的需要”怎么解释?
于是我找到2个rpm包 RedHat-9 for i386 gcc-3.2.2-5.i386.rpm
RedHat-9 Sources gcc-3.2.2-5.src.rpm
这两个什么区别,我该安装哪一个?
非常感谢各位。
|
安装 RedHat-9 for i386 gcc-3.2.2-5.i386.rpm
|
gcc --version看看输出就知道有没有安装了
|
应该是gcc --help,或者用whereis gcc找一找,看看是不是确定没有安装。
|
GCC 的安装指南推荐用一个新建的目录来编译它,而不是在源码目录中:
mkdir ../gcc-build
cd ../gcc-build
为编译 GCC 做准备:
../gcc-3.3.2/configure --prefix=/usr --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --enable-languages=c,c++
编译软件包:
make
运行测试套件,但遇到错误不停止(可选项):
make -k check
安装软件包:
make install
有的软件包希望 C PreProcessor(预处理器)安装在 /lib 目录下,为了满足它们的要求,创建符号链接:
ln -s ../usr/bin/cpp /lib
许多软件包使用 cc 作为 C 编译器的名字,为了满足它们的要求,创建一个 cc 符号链接:
ln -s gcc /usr/bin/cc
mkdir ../gcc-build
cd ../gcc-build
为编译 GCC 做准备:
../gcc-3.3.2/configure --prefix=/usr --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --enable-languages=c,c++
编译软件包:
make
运行测试套件,但遇到错误不停止(可选项):
make -k check
安装软件包:
make install
有的软件包希望 C PreProcessor(预处理器)安装在 /lib 目录下,为了满足它们的要求,创建符号链接:
ln -s ../usr/bin/cpp /lib
许多软件包使用 cc 作为 C 编译器的名字,为了满足它们的要求,创建一个 cc 符号链接:
ln -s gcc /usr/bin/cc
|
# make
line 1253: Syntax error.
下面是makefile相关代码(我加了行号的)
1250: # This rule is used to build the modules which are built with the
1251: # build machine's native compiler.
1252: .PHONY: $(ALL_BUILD_MODULES)
1253: $(ALL_BUILD_MODULES):
dir=`echo $@ | sed -e 's/all-build-//'`; if [ -f ./$${dir}/Makefile ] ; then r=`pwd`; export r; s=`cd $(srcdir); pwd`; export s; (cd $(BUILD_SUBDIR)/$${dir} && $(MAKE) all); else true; fi