|
|
Veröffentlicht am 09.07.2015 10:38:49
|
|
|

In einem früheren Blogbeitrag haben wir dnx erfolgreich auf Ubuntu kompiliert und damit %26nbsp erfolgreich ausgeführt; ASP.NET 5-Beispiel-Programm. In diesem Blogbeitrag tauschen wir Ubuntu gegen CentOS.
Derzeit erfordert DNX, dass Mono kompiliert wird, daher musst du zuerst Mono installieren, und es ist am besten, es mit dem neuesten Mono-Quellcode zu kompilieren und zu installieren.
Die Schritte, die wir tatsächlich erfolgreich kompilieren konnten, sind wie folgt (vorausgesetzt, Mono ist auf 26nbsp installiert; /data/mono_build Verzeichnis):
mkdir /data/mono_build PATH=/data/mono_build/bin:$PATH Git-Klon https://github.com/mono/mono.git CD-Mono ./autogen.sh --Präfix=/data/mono_build Mach Get-Monolite-Latest machen Installieren Sie Hinweis: %26nbsp wird zu Beginn nicht verwendet; Mach den Monolite-Neuasten, und er scheitert beim Erstellen, weil er MCs nicht finden kann.
Wenn Sie dieses selbstkompilierte Mono immer verwenden möchten, müssen Sie folgende Konfiguration zu ~/.bash_profile hinzufügen:
export PATH=/data/mono_build/bin:$PATH Als Nächstes installieren Sie dnvm mit folgendem Befehl:
Curl -sSL https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.sh | DNX_BRANCH=dev sh %26amp; 26 %; Quelle: ~/.dnx/dnvm/dnvm.sh Dann kannst du dnx kompilieren:
# ./build.sh Installation von 'KoreBuild 0.2.1-beta6-10166'. Erfolgreich installiert 'KoreBuild 0.2.1-beta6-10166'. Installiere 'Sake 0.2'. Erfolgreich 'Sake 0.2' installiert. Bestimmung der neuesten Version Die neueste Version ist 1.0.0-beta6-12085 Herunterladen von dnx-mono.1.0.0-beta6-12085 von https://www.myget.org/F/aspnetvnext/api/v2
Download: https://www.myget.org/F/aspnetvnext/api/v2/package/dnx-mono/1.0.0-beta6-12085 ######################################################################## 100.0% Installation auf /root/.dnx/runtimes/dnx-mono.1.0.0-beta6-12085 Hinzufügen von /root/.dnx/runtimes/dnx-mono.1.0.0-beta6-12085/bin zur Verarbeitung von PATH Alias 'default' auf 'dnx-mono.1.0.0-beta6-12085' gesetzt
...
Ich versuche, ein Paket aus 'dnx-mono.nuspec' zu bauen. Erfolgreich erstelltes Paket '/data/git/dnx/artifacts/build/dnx-mono.1.0.0-t150618141518.nupkg'.
info: Target package Nachdem die Kompilierung erfolgreich ist, kannst du %26nbsp verwenden; Die dnx in artifacts/build/dnx-coreclr-linux-x64/bin läuft mit dem ASP.NET 5 Beispielprogramm.
Schau dir zuerst das ASP.NET 5 Beispielprogramm von GitHub an:
https://github.com/aspnet/Home.git Vorbereitung vor dem Laufen:
1) Dnvm aktivieren
Quelle/root/.dnx/dnvm/dnvm.sh 2) OpenSSL installieren
yum install -y openssl-devel Andernfalls tritt folgender Fehler auf:
System.TypeInitializationException: The type initializer for 'libcrypto' threw an exception. ---%26gt; System.Security.Cryptography.CryptographicException: Ein Fehler trat während eines kryptographischen Vorgangs auf. bei Interop.libcrypto.. cctor() 3) Kompilieren und installieren %26nbsp; libuv (um Kestrel zu spielen)
Git-Klon https://github.com/libuv/libuv.git Sch autogen.sh ./configure machen Installieren Sie ldconfig Andernfalls tritt folgender Fehler auf:
System.InvalidOperationException: Unable to load libuv. Make sure libuv is installed and available as libuv.so.1 Dann führe die drei ASP.NET 5 Beispielprogramme separat in Home/Samples/neueste/Release aus (führe vor dem Start die Dnu-Wiederherstellung aus).
1) ConsoleApp
[root@server1 ConsoleApp]# /data/git/dnx/artifacts/build/dnx-coreclr-linux-x64/bin/dnx . Lauf Hallo Welt 2) HelloWeb
[root@server1 HelloWeb]# /data/git/dnx/artifacts/build/dnx-coreclr-linux-x64/bin/dnx . Turmfalke Gestartet 3) HelloMvc
[root@server1 HelloMvc]# /data/git/dnx/artifacts/build/dnx-coreclr-linux-x64/bin/dnx . Turmfalke Gestartet Ich habe auch erfolgreich plattformübergreifendes .NET auf CentOS erlebt.
|
Vorhergehend:Linux Tail gibt die letzten paar Zeilen der Datei ausNächster:Linux verändert den Benutzer und die Gruppe, zu der die Datei gehört
|