1.å¦ä½å®è£
GCCç¼è¯å¨åå¼åå·¥å
·
2.centos6.5编译安装gcc4.8.2后的源码配置问题
3.Linux Centos7.8.2003系统离线GCC源码编译升级
4.CentOS离线安装gcc(循环依赖、冲突解决)
å¦ä½å®è£ GCCç¼è¯å¨åå¼åå·¥å ·
ããå¨CentOS 7åRHEL 7ç³»ç»ä¸å¦ä½å®è£ Gnu GCCç¼è¯å¨åç¸å ³çå·¥å ·æ¯å¦ï¼autoconfï¼automakeï¼flex,安装 c++ç¼è¯å¨çå·¥å ·ãæ们å¯ä»¥éè¿å¨centos æè rhel 7 ç³»ç»ä¸å®è£ ä¸é¢ç软件å æ¥æ建åºæ¬çå¼åç¯å¢ã
ãã
ããautoconf
ãã
ããautomake
ãã
ããbinutils
ãã
ããbison
ãã
ããflex
ãã
ããgcc
ãã
ããgcc-c++
ãã
ããgettext
ãã
ããlibtool
ãã
ããmake
ãã
ããpatch
ãã
ããpkgconfig
ãã
ããredhat-rpm-config
ãã
ããrpm-build
ãã
ããrpm-sign
ããæ¾ç¤ºå½åç³»ç»çyum group,使ç¨ä¸é¢çå½ä»¤ï¼
ããyum group list
ããå½ä»¤è¾åºï¼
ãã[root@itsprite /]# yum group list
ããLoaded plugins: fastestmirror, langpacks
ããThere is no installed groups file.
ããMaybe run: yum groups mark convert (see man yum)
ããLoading mirror speeds from cached hostfile
ãã
ãã* base: mirrors.btte.net
ãã
ãã* extras: mirrors.btte.net
ãã
ãã* updates: mirrors.btte.net
ããAvailable environment groups:
ãã
ããMinimal Install
ãã
ããInfrastructure Server
ãã
ããFile and Print Server
ãã
ããBasic Web Server
ãã
ããVirtualization Host
ãã
ããServer with GUI
ãã
ããGNOME Desktop
ãã
ããKDE Plasma Workspaces
ãã
ããDevelopment and Creative Workstation
ããAvailable Groups:
ãã
ããCompatibility Libraries
ãã
ããConsole Internet Tools
ãã
ããDevelopment Tools
ãã
ããGraphical Administration Tools
ãã
ããLegacy UNIX Compatibility
ãã
ããScientific Support
ãã
ããSecurity Tools
ãã
ããSmart Card Support
ãã
ããSystem Administration Tools
ãã
ããSystem Management
ããDone
ããå®è£ GCCåå¼åç¯å¢
ããè¾å ¥ä¸é¢çå½ä»¤ï¼
ããyum group install "Development Tools"
ããå®è£ å®ä¹åï¼ä½¿ç¨ä¸é¢çå½ä»¤æ¥éªè¯gccæ¯å¦å®è£ æåï¼
ããwhereis gcc
ããå½ä»¤è¾åºï¼
ãã[root@itsprite /]# whereis gcc
ããgcc:/usr/bin/gcc /usr/lib/gcc /usr/libexec/gcc /usr/share/man/man1/gcc.1.gz
ããè¾å ¥ä¸é¢çå½ä»¤æ¥æ¥çgccå·¥å ·ççæ¬ï¼
ãã[root@itsprite /]# gcc --version
ããgcc (GCC) 4.8.2 (Red Hat 4.8.2-)
ããCopyright (C) Free Software Foundation, Inc.
ããThis is free software; see the source for copying conditions. There is NO
ããwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
ããæµè¯GCCç¼è¯å¨
ããä¸é¢æ们使ç¨åå®è£ 好çGCCç¼è¯å¨æ¥ç¼è¯ä¸ä¸ªcè¯è¨ç¨åº.
ããå建ä¸é¢çtest.cç¨åºï¼
ãã#include
ããint main(void){
ãã
ããprintf("Hello World!\n");
ãã
ããreturn0;
ãã}
ããè¾å ¥å½ä»¤ç¼è¯test.c æ件ï¼
ããgcc test.c -o test
ããæ§è¡ç¼è¯åçæ件ï¼
ã
ãã./test
ããHello World!
centos6.5编译安装gcc4.8.2后的配置问题
怎样卸载我不知道,不过如果只是源码想使用gcc-4.8.2的话,只要做个链接就好了,安装通常调用gcc都是源码在 /usr/bin/gcc, 所以只要将这个gcc链接到gcc-4.8.2的版本就好。
可以这样: mv /usr/bin/gcc /usr/bin/gcc-4.4.7
ln -sf /usr/local/gcc-4.8.2/bin/gcc /usr/bin/gcc
(前面的安装alphacontrol 源码是新的gcc具体路径,视情况修改,源码定位到新的安装gcc就好)
Linux Centos7.8.系统离线GCC源码编译升级
要进行Linux Centos7.8.的GCC离线源码编译升级,首先需要准备一个干净的源码Centos7.8.虚拟机,并可以使用本地镜像源,安装具体步骤可在相关文章中找到。源码
在GCC的安装ftp站点下载所需版本,例如gcc-.1.0。源码新安装的安装机器可能缺少编译依赖,但镜像源内通常包含这些,源码无需在线下载。
编译依赖库一般包括gcc-c++、麦田手机源码定制autoconf、automake、libtools和m4,但具体可能因机器环境而异。简便的方法是使用yum group install Development Tools,这个组合包含了大部分开发所需的依赖。
离线编译时,先解压gcc源码,超级客源app源码然后进入目录,由于是离线,需要手动下载所有依赖,如gmp-6.1.0、isl、mpfr和mpc。确保按依赖顺序编译,例如先gmp-6.1.0,认养app源码然后mpc-1.0.3。
创建编译目录,设置编译参数后,开始编译过程。可能遇到找不到库的错误,此时需要将库添加到环境变量。编译时间根据机器性能不同,通常十几分钟内完成。go 微服务源码
编译成功后,升级GCC的过程是删除或备份原有GCC软链接,然后指向新编译的GCC目录。升级脚本可以简化这一过程,但如有问题,务必及时调整。
CentOS离线安装gcc(循环依赖、冲突解决)
直接开始安装CentOS离线版本的gcc,面对可能遇到的循环依赖和冲突问题。
首先,确认gcc是否缺失,如果没有,可以通过命令行检查。接着,针对CentOS7的aarch架构,从[pkgs.org](pkgs.org)下载gcc-4.8.5-.el7.aarch.rpm文件。将包上传至服务器,安装过程中可能会遇到依赖缺失,这时需要逐一下载并安装缺失的依赖。
安装过程中可能遇到循环依赖问题,解决方法是将所有需要安装的rpm文件一起执行rpm -ivh。如果遇到包冲突,可以选择卸载冲突包(但需谨慎操作),或者使用--replacefiles参数安装新版本,避免影响系统其他软件。
成功安装gcc后,通过gcc -v检查版本,确保安装完成。这个过程同样适用于net-tools、rsync等其他内网环境软件的安装。最后,通过这样的方式,内网环境也能高效运作。