[Distutils] bdist_deb in stdeb

Andrew Straw strawman at astraw.com
Mon Sep 28 22:04:57 CEST 2009


Olof Bjarnason wrote:
> 2009/9/28 Olof Bjarnason <olof.bjarnason at gmail.com>:
>   
>> 2009/9/28 Andrew Straw <strawman at astraw.com>:
>>     
>>> Gerry Reno wrote:
>>>       
>>>> Olof Bjarnason wrote:
>>>>         
>>>>>> Ok, the commands behave like makefile rules, once run they don't run
>>>>>> again.
>>>>>> But there are still several issues here:
>>>>>>
>>>>>> Remember that I said that my goal with 'bdist_deb' was for users to
>>>>>> have a
>>>>>> SINGLE command to generate a .deb.
>>>>>>
>>>>>> What needs to be achieved is for a command like this:
>>>>>> $ python setup.py  bdist_deb
>>>>>> OR
>>>>>> $ python setup.py  bdist_deb
>>>>>> --ignore-single-version-externally-managed
>>>>>>
>>>>>> to be possible.  'bdist_deb' would call sdist_dsc internally with the
>>>>>> necessary args WITHOUT having to explicitly put 'sdist_dsc' on the
>>>>>> command
>>>>>> line.
>>>>>>
>>>>>>             
>>>>> This would be _exactly_ what I'm looking for :)
>>>>>
>>>>>           
>>>> I know.  I've had many of my users requesting exactly the same thing
>>>> as well and I've been pursuing this for months now and when I got a
>>>> 'bdist_deb' working with stdeb I knew I was getting close.  It just
>>>> needs a little more tweeking and I think we'll have it.  Let's wait
>>>> and see what Andrew says here.
>>>>         
>>> I don't understand what you're waiting on me for at this point.
>>>
>>> Olaf -- as I understand it -- you need to work with Ubuntu 9.04. I just
>>> released stdeb 0.4 which supports this "bdist_deb" and doesn't pass the
>>> --single-version-externally-managed option anyway and therefore doesn't
>>> support the "--ignore-single-version-externally-managed" option. I don't
>>> understand why you need to pass
>>> "--ignore-single-version-externally-managed". "python setup.py
>>> bdist_deb" should work for you. Please report with specific information
>>> about expected and actual behavior if things are not working to your
>>> desire (taking care to read the, admittedly minimal, documentation in
>>> README.rst).
>>>       
>> I tried "stdeb_run_setup", it got me a lot of files (and directories)
>> although no .deb file.
>>
>> Also tried "python setup.py bdist_deb" and ".. sdist_deb". Didn't work.
>>
>> What is the command line I'm supposed to run in the setup.py directory?
>>     
>
> OK I came a little further apt-get:ing debhelper and python-all-dev,
> then issuing
>
> sudo python -c "import stdeb; execfile('setup.py')" bdist_deb
>
> .. but it ended with this:
>
> Compatibility mode: using detected XS-Python-Version.
>    dh_scrollkeeper
>    dh_usrlocal
>    dh_link
>    dh_compress
>    dh_fixperms
>    dh_strip
>    dh_makeshlibs
>    dh_shlibdeps
>    dh_installdeb
>    dh_gencontrol
>    dh_md5sums
>    dh_builddeb
> varning, "debian/python-fortressdefender/DEBIAN/control" innehåller
> användardefinierat fält "Python-Version"
> dpkg-deb - fel: (upstream) version ("dev") innehåller inga siffror
> dpkg-deb: 1 fel i kontrollfilen
> dh_builddeb: command returned error code 512
> make: *** [binary] Fel 1
> dpkg-buildpackage: misslyckades: fakeroot debian/rules binary
> returnerade felkod 2
> Traceback (most recent call last):
>   File "<string>", line 1, in <module>
>   File "setup.py", line 42, in <module>
>     scripts = ["bin/fortressdefender"],
>   File "/usr/lib/python2.6/distutils/core.py", line 152, in setup
>     dist.run_commands()
>   File "/usr/lib/python2.6/distutils/dist.py", line 975, in run_commands
>     self.run_command(cmd)
>   File "/usr/lib/python2.6/distutils/dist.py", line 995, in run_command
>     cmd_obj.run()
>   File "build/bdist.linux-x86_64/egg/stdeb/command/bdist_deb.py", line
> 40, in run
>   File "build/bdist.linux-x86_64/egg/stdeb/util.py", line 73, in process_command
>   File "build/bdist.linux-x86_64/egg/stdeb/util.py", line 31, in check_call
> stdeb.util.CalledProcessError: 2
>
>
>   
please do:

sudo apt-get install build-essential
sudo apt-get install fakeroot

And try again.

-Andrew


More information about the Distutils-SIG mailing list