お疲れ様です、サイオス 那賀です。
Amazon Linux AMI は、AWS (Amazon Web Services) 専用に、Amazon.com によって開発されている Linux ディストリビューションの仮想環境イメージ (AMI: Amazon Machine Image) です。今のところ実態としては、RHEL6 系に近いものになっています。てっきり CentOS あたりをベースにリコンパイルだけをして作っているのかと思っていたのですが、RHEL6 を下敷きにしつつも、自前で全部作っているそうです。AWS の機能に特化されているのみならず、Amazon のサポートに通りが良いところがウリです。
そのようなわけですから、Amazon Linux もまた RPM ベースです。Amazon Linux も YUM は備えているのですが、ソースの入手には yumdownloader ではなく、別途 get_reference_source コマンド経由で、web サービスを利用します。右記参照、「Q: Amazon Linux AMI へのソースコードを見ることができますか? - Amazon Elastic Compute Cloud (Amazon EC2) FAQ」。
$ get_reference_source --aws-account-id=XXXX-XXXX-XXXX \ --package=which Requested package: which Found package from local RPM database: which-2.19-5.1.9.amzn1 Corresponding source RPM to found package : which-2.19-5.1.9.amzn1.src.rpm Your AWS account id: XXXX-XXXX-XXXX Are these parameters correct? Please type 'yes' to continue: yes Source RPM for 'which-2.19-5.1.9.amzn1' downloaded to: /usr/src/srpm/debug/which-2.19-5.1.9.amzn1.src.rpm [ knaka@ip-10-146-81-102:~ S ] $ ls -ld /usr/src/srpm/debug drwxrwxrwt 2 root root 4096 Dec XX 03:36 /usr/src/srpm/debug/
それ以降は他の distro と大差ないのですが、以前の記事(「SIOS OSS Tech: debuginfo RPM パッケージで、ソースレベル・デバッグをする」)などで触れた Red Hat 系における "redhat-rpm-config" パッケージが、Amazon Linux では "system-rpm-config" パッケージにあたるので、既存パッケージと同等の構成でインストールしたい場合や、特に、debuginfo パッケージが必要な場合には、これもインストールしておいてください。
$ sudo yum install -y system-rpm-config $ rpmbuild --rebuild --define="optflags -pg -g3 -O0" \ /usr/src/srpm/debug/which-2.19-5.1.9.amzn1.src.rpm (中略) Wrote: /home/knaka/rpm/RPMS/i686/which-2.19-5.1.9.amzn1.i686.rpm Wrote: /home/knaka/rpm/RPMS/i686/which-debuginfo-2.19-5.1.9.amzn1.i686.rpm (中略)
では。
0 コメント:
コメントを投稿