0
gem2rpm을 사용하여 gem (요리사)을 rpm 패키지로 변환하려고했습니다. 이제 보석을 가져 와서 'spec'파일을 만들고 사용 된 'rpmbuild'를 만들었습니다. 나는 다음과 같은 오류가 발생합니다 : 나는 내가 % 파일 % 섹션에서 뭔가를 변경해야 이해gem2rpm 도구가 작동하지만 rpm 패키지를 찾을 수 없습니다.
# Generated from chef-11.8.2.gem by gem2rpm -*- rpm-spec -*-
%global gem_name chef
%global rubyabi 1.9.1
Name: rubygem-%{gem_name}
Version: 11.8.2
Release: 1%{?dist}
Summary: A systems integration framework, built to bring the benefits of configuration management to your entire infrastructure
Group: Development/Languages
License: GPL
URL: http://wiki.opscode.com/display/chef
Source0: http://rubygems.org/gems/%{gem_name}-%{version}.gem
Requires: ruby(abi) = %{rubyabi}
Requires: ruby(rubygems)
Requires: rubygem(mixlib-config) => 2.0
Requires: rubygem(mixlib-config) < 3
Requires: rubygem(mixlib-cli) => 1.3
Requires: rubygem(mixlib-cli) < 2
Requires: rubygem(mixlib-log) => 1.3
Requires: rubygem(mixlib-log) < 2
Requires: rubygem(mixlib-authentication) => 1.3
Requires: rubygem(mixlib-authentication) < 2
Requires: rubygem(mixlib-shellout) => 1.2
Requires: rubygem(mixlib-shellout) < 2
Requires: rubygem(ohai) => 6.0
Requires: rubygem(ohai) < 7
Requires: rubygem(rest-client) >= 1.0.4
Requires: rubygem(rest-client) < 1.7.0
Requires: rubygem(mime-types) => 1.16
Requires: rubygem(mime-types) < 2
Requires: rubygem(json) >= 1.4.4
Requires: rubygem(json) <= 1.7.7
Requires: rubygem(yajl-ruby) => 1.1
Requires: rubygem(yajl-ruby) < 2
Requires: rubygem(net-ssh) => 2.6
Requires: rubygem(net-ssh) < 3
Requires: rubygem(net-ssh-multi) => 1.1.0
Requires: rubygem(net-ssh-multi) < 1.2
Requires: rubygem(highline) => 1.6
Requires: rubygem(highline) < 2
Requires: rubygem(highline) >= 1.6.9
Requires: rubygem(erubis) => 2.7
Requires: rubygem(erubis) < 3
Requires: rubygem(diff-lcs) => 1.2
Requires: rubygem(diff-lcs) < 2
Requires: rubygem(diff-lcs) >= 1.2.4
Requires: rubygem(chef-zero) => 1.6
Requires: rubygem(chef-zero) < 2
Requires: rubygem(chef-zero) >= 1.6.2
Requires: rubygem(puma) => 1.6
Requires: rubygem(puma) < 2
Requires: rubygem(pry) => 0.9
Requires: rubygem(pry) < 1
BuildRequires: ruby(abi) = %{rubyabi}
BuildRequires: rubygems-devel
BuildRequires: ruby
BuildArch: noarch
Provides: rubygem(%{gem_name}) = %{version}
%description
A systems integration framework, built to bring the benefits of configuration
management to your entire infrastructure.
%package doc
Summary: Documentation for %{name}
Group: Documentation
Requires: %{name} = %{version}-%{release}
BuildArch: noarch
%description doc
Documentation for %{name}
%prep
gem unpack %{SOURCE0}
%setup -q -D -T -n %{gem_name}-%{version}
gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec
%build
mkdir -p .%{gem_dir}
# Create the gem as gem install only works on a gem file
gem build %{gem_name}.gemspec
# gem install installs into a directory. We set that to be a local
# directory so that we can move it into the buildroot in %%install
gem install --local --install-dir ./%{gem_dir} \
--bindir ./%{_bindir} \
--force --rdoc %{gem_name}-%{version}.gem
%install
mkdir -p %{buildroot}%{gem_dir}
cp -pa .%{gem_dir}/* \
%{buildroot}%{gem_dir}/
mkdir -p %{buildroot}%{_bindir}
cp -pa .%{_bindir}/* \
%{buildroot}%{_bindir}/
find %{buildroot}%{gem_instdir}/bin -type f | xargs chmod a+x
%files
%{gem_instdir}
%{_bindir}/chef-client
%{_bindir}/chef-solo
%{_bindir}/knife
%{_bindir}/chef-shell
%{_bindir}/shef
%{_bindir}/chef-apply
%{_bindir}/chef-service-manager
%{gem_instdir}/bin
%{gem_libdir}
%exclude %{gem_cache}
%{gem_spec}
%files doc
%doc %{gem_docdir}
%doc %{gem_instdir}/README.md
%doc %{gem_instdir}/CONTRIBUTING.md
%doc %{gem_instdir}/LICENSE
%changelog
* Fri Jan 10 2014 Peeyush <[email protected]> - 11.8.2-1
- Initial package
:
error: Installed (but unpackaged) file(s) found:
/usr/share/gems/gems/chef-11.8.2/Rakefile
/usr/share/gems/gems/chef-11.8.2/bin/chef-apply
/usr/share/gems/gems/chef-11.8.2/bin/chef-client
/usr/share/gems/gems/chef-11.8.2/bin/chef-service-manager
/usr/share/gems/gems/chef-11.8.2/bin/chef-shell
/usr/share/gems/gems/chef-11.8.2/bin/chef-solo
/usr/share/gems/gems/chef-11.8.2/bin/knife
/usr/share/gems/gems/chef-11.8.2/bin/shef
/usr/share/gems/gems/chef-11.8.2/distro/README
/usr/share/gems/gems/chef-11.8.2/distro/arch/etc/conf.d/chef-client.conf
/usr/share/gems/gems/chef-11.8.2/distro/arch/etc/conf.d/chef-expander.conf
/usr/share/gems/gems/chef-11.8.2/distro/arch/etc/conf.d/chef-server-webui.conf
/usr/share/gems/gems/chef-11.8.2/distro/arch/etc/conf.d/chef-server.conf
/usr/share/gems/gems/chef-11.8.2/distro/arch/etc/conf.d/chef-solr.conf
/usr/share/gems/gems/chef-11.8.2/distro/arch/etc/rc.d/chef-client
/usr/share/gems/gems/chef-11.8.2/distro/arch/etc/rc.d/chef-expander
/usr/share/gems/gems/chef-11.8.2/distro/arch/etc/rc.d/chef-server
/usr/share/gems/gems/chef-11.8.2/distro/arch/etc/rc.d/chef-server-webui
/usr/share/gems/gems/chef-11.8.2/distro/arch/etc/rc.d/chef-solr
/usr/share/gems/gems/chef-11.8.2/distro/common/html/chef-client.8.html
/usr/share/gems/gems/chef-11.8.2/distro/common/html/chef-expander.8.html
/usr/share/gems/gems/chef-11.8.2/distro/common/html/chef-expanderctl.8.html
/usr/share/gems/gems/chef-11.8.2/distro/common/html/chef-server-webui.8.html
/usr/share/gems/gems/chef-11.8.2/distro/common/html/chef-server.8.html
여기에 내 보석 사양 파일입니다. 그러나 나는 무엇을 이해할 수 없다! 모든 포인터를 부탁드립니다.