8

Linux ディストリビューション用の Python RPM パッケージをビルドしようとすると、次のエラーが発生します。プロセス中に警告が表示されますが、「-ba: 不明なエラー」とは関係ないと思います。これを実行する方法はありますか?

エラー:

bdist_rpm -ba: unknown option error: command 'rpm' failed with exit status 1

次の python setup.py スクリプトを実行しています。

setup(
    name='Tester',
    version='0.1.0',
    author='My Name',
    author_email='emailaddress@gmail.com',
    packages=['tester'],
    license='LICENSE.txt',
    description='IMAP Email Reader.',
    long_description=open('README.txt').read(),
    install_requires=[
        "Django >= 1.1.1",
        "caldav == 0.1.4",
    ],
)

python setup.py bdist_rpmを実行すると、次の場所に Tester.spec ファイルが作成されます~/Tester/build/bdist.linux-x86_64/rpm/SPECS directory

%define name Tester
%define version 0.1.0
%define unmangled_version 0.1.0
%define release 1

Summary: Email Reader.
Name: %{name}
Version: %{version}
Release: %{release}
Source0: %{name}-%{unmangled_version}.tar.gz
License: LICENSE.txt
Group: Development/Libraries
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
Prefix: %{_prefix}
BuildArch: noarch
Vendor: My Name <emailaddress@gmail.com>

%description



%prep
%setup -n %{name}-%{unmangled_version}

%build
python setup.py build

%install
python setup.py install -O1 --root=$RPM_BUILD_ROOT --record=INSTALLED_FILES

%clean
rm -rf $RPM_BUILD_ROOT

%files -f INSTALLED_FILES
%defattr(-,root,root)
4

1 に答える 1

12

とにかく走れ:

yum install rpm-build

rpmbuild コマンドが使用できない場合、setuptools は "rpm" コマンドを使用するようにフォールバックするようです。これは (私が理解しているように) かなり前に rpmbuild 機能が組み込まれていましたが、その後分離されました。そのため、rpm-build パッケージをインストールすると rpmbuild コマンドが使用可能になり、setuptools はパッケージのビルド時にそれを使用します。

于 2014-01-22T23:18:42.707 に答える