Install .NET Core SDK
Before you start, please remove any previous versions of .NET Core from your system.
In order to install .NET Core 1.1 on CentOS or Oracle Linux, first you need to get the prerequisites and then you download the .NET Core SDK binaries, extract them onto your system and put dotnet
onto your PATH.
For other releases you can check the Linux downloads section.
- sudo yum install libunwind libicu
- curl -sSL -o dotnet.tar.gz https://go.microsoft.com/fwlink/?LinkID=835019
- sudo mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -C /opt/dotnet
- sudo ln -s /opt/dotnet/dotnet /usr/local/bin
安装libunwind、libicu
下载dotnet.tar.gz ,输入命令后等一会就下载完了,解压到 /opt/dotnet 目录,创建符号链接。测试安装是否成功报错了,dotnet: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by dotnet)
/usr/lib64/libstdc++.so.6 是gcc的类库通过命令 strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX 查看已经安装的版本
[root@localhost hwapp]# strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH
[root@localhost hwapp]# GCC -v
-bash: GCC: command not found
[root@localhost hwapp]# g++ --version
g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-17)
Copyright (C) 2010 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.
当前是4.4.7,确实没有GLIBCXX_3.4.18。
升级GCC
安装wget,输入命令 [root@localhost ~]# yum install wget。
参照 CentOS 6.6 升级GCC G++ (当前最新版本为v6.1.0) (完整) 升级,教程非常好,第五步编译时用时4个多小时。
再次测试dotnet
[root@localhost hwapp]# dotnet new
Failed to load /opt/dotnet/host/fxr/1.1.0/libhostfxr.so, error: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /opt/dotnet/host/fxr/1.1.0/libhostfxr.so)
The library libhostfxr.so was found, but loading it from /opt/dotnet/host/fxr/1.1.0/libhostfxr.so failed
- Installing .NET Core prerequisites might help resolve this problem.
http://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409
查看当前版本2.12。
[root@localhost hwapp]# strings /usr/lib64/libc.so.6 | grep GLIBC
strings: '/usr/lib64/libc.so.6': No such file
[root@localhost hwapp]# ll /lib64/libc.so.6
lrwxrwxrwx. 1 root root 12 Aug 25 18:57 /lib64/libc.so.6 -> libc-2.12.so
要不要升级先看看后果再说:Linux升级C基本运行库CLIBC
在你准备升级GLIBC库之前,你要好好思考一下,
你真的要升级GLIBC么?
你知道你自己在做什么么?
glibc是gnu发布的libc库,即c运行库。glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc。glibc除了封装linux操作系统所提供的系统服务外,它本身也提供了许多其它一些必要功能服务的实现...
总的来说,不说运行在linux上的一些应用,或者你之前部署过的产品,就是很多linux的基本命令,比如cp, rm, ls, mv, ssh, scp之类,命令都得依赖于它
网上很多人有惨痛教训,升级失败后系统绝大部分命令无法运行,系统退出后无法重新进入。。。。。。
对于CentOS这样的系统,为了追求稳定性(这个值得商榷)往往各种库版本都很低,比如6.5甚至7.0自带的还是glibc2.12, 而ubuntu 14.04带glibc2.19
果断放弃,还是去升级操作系统吧,这次安装以失败结束。
操作系统升级到CentOS7.1后按照官方教程顺利完成!
参考文章
1. centos安装wget
2.CentOS 6.6 升级GCC G++ (当前最新版本为v6.1.0) (完整)
3.Install for CentOS 7.1 (64 bit) & Oracle Linux 7.1 (64 bit)