2016-12-29 32 views
0

Amazon LinuxイメージにNugetをインストールしようとしています。私の目標は、.netcoreのサポートがあるAWS .NET SDKでいくつかの調査を行うことです。AmazonでNugetをインストールするにはLinux

私は3つの試み(それぞれの試みで新鮮なインスタンスで)主なインストール方法を試しました。

1 - .netcoreをインストールし、ソースからNugetをコンパイルします。私は、次にからNugetコードをクローニングし

# sudo yum install libunwind libicu -y 
# 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 
**# echo 'pathmunge /opt/dotnet' > /etc/profile.d/dotnetcore.sh** 
**# chmod +x /etc/profile.d/dotnetcore.sh** 
**# . /etc/profile** 

Iはパスへの更新は、これらの手順を使用して永続化されているどのように修飾されたものの方向 here(私の変更は太字である)以下.netcore正常にインストールここで https://github.com/NuGet/NuGet.Clientを実行し、正常に完了したbuild.shを実行しましたが、Nuget実行可能ファイルでアーティファクトサブディレクトリを作成しませんでした。この方法は、パッケージマネージャではなくNuGet CLIをインストールすることを目的としていましたが、どちらもインストールされていませんでした。 https://docs.nuget.org/ndocs/guides/install-nuget(NuGet CLIは、Windows、Mac OS X、およびLinux上で動作し、すべてのNuGet機能をサポートするコマンドラインユーティリティであり、すべてのNuGet機能をサポートします)。

2 - Installモノと私は成功した手順に従って実行することによって、モノをインストールし、「YUM nugetをインストールする」

を実行します。モノ後

# sudo yum -y install cmake bison gettext glib2 freetype fontconfig libpng 
     libpng-devel libX11 libX11-devel glib2-devel libexif glibc-devel 
     urw-fonts java  
     unzip gcc gcc-c++ automake autoconf libtool make bzip2 wget 
# cd /usr/local/src 
# sudo wget http://download.mono-project.com/sources/mono/mono-4.8.0.382.tar.bz2 
# sudo tar jxf mono-4.8.0.382.tar.bz2 
# cd mono-4.8.0 
# sudo ./configure --prefix=/opt/mono 
# sudo make 
# sudo make install 

をインストールしてテストした私は、次のコマンドを使用して、いくつかのレポを追加しました:

# rpm --import "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF" 
# yum-config-manager --add-repo http://download.mono-project.com/repo/centos/ 
# yum-config-manager --add-repo http://download.mono-project.com/repo/centos-nightly/ 

私はyumのはnuget installコマンドを実行したときに、結果の依存エラーを受信:

Loaded plugins: priorities, update-motd, upgrade-helper 
amzn-main/latest                              
amzn-updates/latest                             
Resolving Dependencies 
--> Running transaction check 
---> Package nuget.noarch 0:2.12+mono-0.xamarin.1 will be installed 
--> Processing Dependency: mono(Microsoft.Build.Engine) = 4.0.0.0 for package: nuget-2.12+mono-0.xamarin.1.noarch 
--> Processing Dependency: mono(System.ServiceModel) = 4.0.0.0 for package: nuget-2.12+mono-0.xamarin.1.noarch 
--> Processing Dependency: mono(Microsoft.Build.Framework) = 4.0.0.0 for package: nuget-2.12+mono-0.xamarin.1.noarch 
--> Processing Dependency: mono(System.Xml.Linq) = 4.0.0.0 for package: nuget-2.12+mono-0.xamarin.1.noarch 
--> Processing Dependency: mono(System.Runtime.Serialization) = 4.0.0.0 for package: nuget-2.12+mono-0.xamarin.1.noarch 
--> Processing Dependency: mono(WindowsBase) = 4.0.0.0 for package: nuget-2.12+mono-0.xamarin.1.noarch 
--> Processing Dependency: mono(Microsoft.CSharp) = 4.0.0.0 for package: nuget-2.12+mono-0.xamarin.1.noarch 
--> Processing Dependency: mono(System.ComponentModel.DataAnnotations) = 4.0.0.0 for package: nuget-2.12+mono-0.xamarin.1.noarch 
--> Processing Dependency: mono(Microsoft.Build) = 4.0.0.0 for package: nuget-2.12+mono-0.xamarin.1.noarch 
--> Processing Dependency: mono(System.Security) = 4.0.0.0 for package: nuget-2.12+mono-0.xamarin.1.noarch 
--> Processing Dependency: mono(System.ComponentModel.Composition) = 4.0.0.0 for package: nuget-2.12+mono-0.xamarin.1.noarch 
--> Processing Dependency: mono(mscorlib) = 4.0.0.0 for package: nuget-2.12+mono-0.xamarin.1.noarch 
--> Processing Dependency: mono(System) = 4.0.0.0 for package: nuget-2.12+mono-0.xamarin.1.noarch 
--> Processing Dependency: mono(System.Core) = 4.0.0.0 for package: nuget-2.12+mono-0.xamarin.1.noarch 
--> Processing Dependency: mono(System.Xml) = 4.0.0.0 for package: nuget-2.12+mono-0.xamarin.1.noarch 
--> Processing Dependency: mono(System.Data.Services.Client) = 4.0.0.0 for package: nuget-2.12+mono-0.xamarin.1.noarch 
--> Running transaction check 
---> Package mono-core.x86_64 0:4.9.0.1028-0.nightly.1 will be installed 
--> Processing Dependency: mono(System.ServiceProcess) = 4.0.0.0 for package: mono-core-4.9.0.1028-0.nightly.1.x86_64 
--> Processing Dependency: libgdiplus0 for package: mono-core-4.9.0.1028-0.nightly.1.x86_64 
---> Package mono-data.x86_64 0:4.9.0.1028-0.nightly.1 will be installed 
---> Package mono-devel.x86_64 0:4.9.0.1028-0.nightly.1 will be installed 
--> Processing Dependency: mono-data-oracle = 4.9.0.1028 for package: mono-devel-4.9.0.1028-0.nightly.1.x86_64 
--> Processing Dependency: mono-winforms = 4.9.0.1028 for package: mono-devel-4.9.0.1028-0.nightly.1.x86_64 
--> Processing Dependency: libgdiplus-devel for package: mono-devel-4.9.0.1028-0.nightly.1.x86_64 
--> Processing Dependency: libmonosgen-2.0.so.1()(64bit) for package: mono-devel-4.9.0.1028-0.nightly.1.x86_64 
---> Package mono-wcf.x86_64 0:4.9.0.1028-0.nightly.1 will be installed 
--> Processing Dependency: mono(System.Web.Extensions) = 4.0.0.0 for package: mono-wcf-4.9.0.1028-0.nightly.1.x86_64 
---> Package mono-web.x86_64 0:4.9.0.1028-0.nightly.1 will be installed 
--> Processing Dependency: mono(Mono.Data.Sqlite) = 4.0.0.0 for package: mono-web-4.9.0.1028-0.nightly.1.x86_64 
---> Package mono-winfxcore.x86_64 0:4.9.0.1028-0.nightly.1 will be installed 
--> Running transaction check 
---> Package libgdiplus-devel.x86_64 0:3.12-1 will be installed 
---> Package libgdiplus0.x86_64 0:3.12-1 will be installed 
--> Processing Dependency: libpng15.so.15(PNG15_0)(64bit) for package: libgdiplus0-3.12-1.x86_64 
--> Processing Dependency: libtiff.so.5(LIBTIFF_4.0)(64bit) for package: libgdiplus0-3.12-1.x86_64 
--> Processing Dependency: libtiff.so.5()(64bit) for package: libgdiplus0-3.12-1.x86_64 
--> Processing Dependency: libcairo.so.2()(64bit) for package: libgdiplus0-3.12-1.x86_64 
--> Processing Dependency: libpng15.so.15()(64bit) for package: libgdiplus0-3.12-1.x86_64 
---> Package libmonosgen-2_0-1.x86_64 0:4.9.0.1028-0.nightly.1 will be installed 
---> Package mono-data-oracle.x86_64 0:4.9.0.1028-0.nightly.1 will be installed 
---> Package mono-data-sqlite.x86_64 0:4.9.0.1028-0.nightly.1 will be installed 
---> Package mono-extras.x86_64 0:4.9.0.1028-0.nightly.1 will be installed 
---> Package mono-mvc.x86_64 0:4.9.0.1028-0.nightly.1 will be installed 
---> Package mono-winforms.x86_64 0:4.9.0.1028-0.nightly.1 will be installed 
--> Running transaction check 
---> Package cairo.x86_64 0:1.12.14-6.8.amzn1 will be installed 
--> Processing Dependency: libpixman-1.so.0()(64bit) for package: cairo-1.12.14-6.8.amzn1.x86_64 
---> Package libgdiplus0.x86_64 0:3.12-1 will be installed 
--> Processing Dependency: libpng15.so.15(PNG15_0)(64bit) for package: libgdiplus0-3.12-1.x86_64 
--> Processing Dependency: libpng15.so.15()(64bit) for package: libgdiplus0-3.12-1.x86_64 
---> Package libtiff.x86_64 0:4.0.3-25.27.amzn1 will be installed 
--> Processing Dependency: libjbig.so.2.0()(64bit) for package: libtiff-4.0.3-25.27.amzn1.x86_64 
--> Running transaction check 
---> Package jbigkit-libs.x86_64 0:2.0-11.4.amzn1 will be installed 
---> Package libgdiplus0.x86_64 0:3.12-1 will be installed 
--> Processing Dependency: libpng15.so.15(PNG15_0)(64bit) for package: libgdiplus0-3.12-1.x86_64 
--> Processing Dependency: libpng15.so.15()(64bit) for package: libgdiplus0-3.12-1.x86_64 
---> Package pixman.x86_64 0:0.32.4-4.11.amzn1 will be installed 
--> Finished Dependency Resolution 
**Error: Package: libgdiplus0-3.12-1.x86_64 (download.mono-project.com_repo_centos_)** 
     **Requires: libpng15.so.15()(64bit)** 
**Error: Package: libgdiplus0-3.12-1.x86_64 (download.mono-project.com_repo_centos_)** 
     **Requires: libpng15.so.15(PNG15_0)(64bit)** 
You could try using --skip-broken to work around the problem 
You could try running: rpm -Va --nofiles --nodigest 

私は--skip-壊れコマンドで再インストールしてみましたが、nugetがインストールされませんでした。

は、この時点で私は手動で私は自分のLinuxの能力の限界に到達するために初めています。この時点で、ここで http://www.libpng.org/pub/png/libpng.html

から最新のlibpngコードを構築することでのlibpngパッケージを更新しようとしました。私は

./configure 
make 
make install 

でのlibpngをビルド成功しすることができました。しかし、私は更新または私はちょうど今のlibpngの2つのバージョンを持っている場合、ライブラリ一定していません。私はどのバージョンがYumによって使用されているかを確認する方法は特定できません。

3 -

は私がしようと#2で受信された正確に同じエラーを取得します「YUM nugetをインストールする」を実行し、その後、.NETのコアをインストールしてください。

+0

.NETコアを使用している場合、 'dotnet restore'はNuGetの復元操作をラップする方法です。 Monoを使用している場合は、ソースコードからビルドを停止します。 Monoプロジェクトのホームページには、Xamarinリポジトリからバイナリをインストールする方法が明確に示されていますが、この段階ではクリーンマシンを見つける必要があります。 –

答えて

1

同じ問題を実行しただけで、手動でインストールすることで解決できましたlibpng現在同じ環境にいる場合は、最初に現在のバージョンを削除しますlibpng。その後

yum remove libpng

あなたは方法でこれを行うことができます。

mkdir -p /tmp/dependencies 
cd /tmp/dependencies 
wget https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/Packages/l/libpng15-1.5.28-2.fc26.x86_64.rpm 
yum install -y libpng15-1.5.28-2.fc26.x86_64.rpm 
yum install -y yum-utils 
rpm --import "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF" 
yum-config-manager --add-repo http://download.mono-project.com/repo/centos/ 
yum clean all 
yum makecache 
yum install -y mono-complete nuget 
cd 
rm -rf /tmp/dependencies 

注:また、あなたがマシン上でenabled EPELを持っていることを確認します。

yumキャッシュの依存関係をクリアしなかったため、成功しなかった可能性もあります。

関連する問題