在Debian 7上安装.Net Core (2016-12-18 10:26:38)

.Net Core是微软专门为跨平台运行.Net设计的一套方案,API和.Net Framework可能有一定的差别,我打算在Linux上试试。

我的服务器是Debian7的,按照官方的步骤安装发现libunwind8无法安装,在网上搜索一番找到解决方案。

主要的原因是gcc版本太低,于是问题变成了Debian上如何升级gcc。

步骤如下:

在/etc/apt/sources.list文件中加入下行

deb http://ftp.uk.debian.org/debian/ jessie main non-free contrib

保存后在控制台输入

$ sudo aptitude update

$ sudo aptitude install gcc-4.8/Jessie

更新完成后按照微软官方步骤就能装好了:

sudo apt-get install curl libunwind8 gettext

curl -sSL -o dotnet.tar.gz https://go.microsoft.com/fwlink/?LinkID=835021

sudo mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -C /opt/dotnet

sudo ln -s /opt/dotnet/dotnet /usr/local/bin

安装完成后实验一下。

第一步是创建一个空的.net项目:

mkdir hwapp

cd hwapp

dotnet new

dotnet new命令是创建一个新项目,项目的名称就是文件夹hwapp的名称。

再接下来是编译运行:

dotnet restore

dotnet run

dotnet restore是分析文件夹下的project.json文件,看看有没有依赖的库,或者配置变化。如果有依赖的库而本地没有的话,会调NuGet下载。(微软没再坚持使用笨重庞大的xml了,赞一下)

dotnet run是编译项目并运行。和visual studio一样,会在项目目录下生成bin/目录和程序。

默认的情况下,生成的是一个dll文件,没有exe。如果想生成exe,需要修改project.json文件。

首先要删除"dependencies"这一段中的"type": "platform"定义。(有点奇怪)

然后加入目标平台的定义:

"runtimes":{

 "debian.8-x64":{}

 }

添加在"frameworks"的下面,例如:

"frameworks": {

 "netcoreapp1.1": {

 "dependencies": {

 "Microsoft.NETCore.App": {

 "version": "1.1.0"

 }

 },

 "imports": "dnxcore50"

 }

 },

"runtimes":{

"debian.8-x64":{}

}

我选的目标系统是debian8,还有更多的系统定义可以看这个网页

然后重新执行

dotnet restore

dotnet build

注意,如果只是想编译而不运行,用build命令。这样在Debug/netcoreapp1.1/文件夹里面,就会生成windows开发者熟悉的exe文件了,可以直接运行一下:

# ./hwapp

Hello World!

你可能感兴趣的:(在Debian 7上安装.Net Core (2016-12-18 10:26:38))