Help with Mock error

Amit Saha droidery at gmail.com
Tue Mar 13 11:48:10 UTC 2012


On 03/13/2012 10:45 PM, Alec Leamas wrote:
> On 03/13/2012 11:55 AM, Amit Saha wrote:
>> On 03/13/2012 09:17 PM, Alec Leamas wrote:
>>> On 03/13/2012 10:10 AM, Amit Saha wrote:
>>>> On 03/13/2012 07:48 PM, Alec Leamas wrote:
>>>>> On 03/13/2012 08:58 AM, Amit Saha wrote:
>>>>>> Hello:
>>>>>>
>>>>>> On 03/13/2012 06:50 PM, Alec Leamas wrote:
>>>>>>> On 03/13/2012 08:43 AM, Alec Leamas wrote:
>>>>>>>> On 03/13/2012 07:21 AM, Amit Saha wrote:
>>>>>>>>> Hello:
>>>>>>>>>
>>>>>>>>> I am in the process of building my first package [1], and have got
>>>>>>>>> most of it sorted. 'rpmbuild -ba' executes successfully with the
>>>>>>>>> current SPEC file[3].
>>>>>>>>>
>>>>>>>>> However, the SRPM [2] fails in Mock with the error:
>>>>>>>>>
>>>>>>>>> RPM build errors:
>>>>>>>>> File not found by glob:
>>>>>>>>> /builddir/build/BUILDROOT/python-picloud-2.4.2-3.fc16.i386/usr/bin/*
>>>>>>>>>
>>>>>>>>> Child return code was: 1
>>>>>>>>>
>>>>>>>>> I am not sure why? (Having the incorrect %{_bindir}/ in the SPEC
>>>>>>>>> file
>>>>>>>>> passes successfully).
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> [1] https://bugzilla.redhat.com/show_bug.cgi?id=799810
>>>>>>>>> [2]
>>>>>>>>> http://amitksaha.fedorapeople.org/contribs/picloud_packaging/python-picloud-2.4.2-3.fc16.src.rpm
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> [3]
>>>>>>>>> http://amitksaha.fedorapeople.org/contribs/picloud_packaging/python-picloud.spec
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I am probably missing something very basic here. Kindly suggest.
>>>>>>>>>
>>>>>>>>> Thanks!
>>>>>>>>> Amit
>>>>>>>>>
>>>>>>>> The spec most likely doesn't put anything in
>>>>>>>> $RPM_BUILD_ROOT/usr/bin.
>>>>>>>> To verify, run rpmbuild -bi <your spec>, and look into
>>>>>>>> ~/rpmbuild/BUILD/python-picloud-2.4.2* to find out what the thing
>>>>>>>> actually installs
>>>>>>>>
>>>>>>> Oops... that should be "Look into
>>>>>>> ~/rpmbuild/BUILDROOT/python-picloud-2.4.2* to find out..."
>>>>>>
>>>>>> Just checked it. It places the 'picloud' binary in
>>>>>> ~/rpmbuild/BUILDROOT/python-picloud-2.4.2-3.fc16/usr/bin .
>>>>>>
>>>>>> -Amit
>>>>>>
>>>>> What a mess... I think I would run a mock build with the
>>>>> --no-cleanup-after flag, and then a mock --shell. This way you
>>>>> should be
>>>>> able to see what's built in mock in a similar way to rpmbuild -bi.
>>>>
>>>> I did that. I think I should expect to see 'picloud' in /usr/bin and
>>>> the man pages in /usr/share/man/man1/ ? I don't see any of after i do
>>>> mock --shell.
>>> Yes, they should be there.
>>>>
>>>> From the build.log, the last few lines are:
>>>>
>>>> + cp -pr doc README.txt CHANGELOG
>>>> /builddir/build/BUILDROOT/python-picloud-2.4.2-3.fc16.i386/usr/share/doc/python-picloud-2.4.2
>>>>
>>>>
>>>> + exit 0
>>>> RPM build errors:
>>>> File not found by glob:
>>>> /builddir/build/BUILDROOT/python-picloud-2.4.2-3.fc16.i386/usr/bin/*
>>>> Child return code was: 1
>>>>
>>>>
>>>> So, obviously something is wrong. What else I can look into?
>>>>
>>>> Thanks!
>>>> -Amit
>>>>
>>>>
>>> I guess our common understanding is that the %install has failed...
>>> sometimes, the installation paths are wrong. Have you looked into the
>>> complete /builddir/build/BUILDROOT/python-picloud-2.4.2-3.fc16.i386 tree
>>> to see if the %install has placed in other places there?
>>
>> I see that the bash_completion file has been placed in
>> etc/bash_completion.d directory and the man page has also been copied
>> in usr/share/man/man1
>>
>> So, the install step is obviously failing in mock.
>>
>> Here is the complete build.log file: https://gist.github.com/2028090
>>
>> Hope something can be identified.
>>
>> Many thanks!
>> -Amit
>>
>>
> Basically, this beats me. An educated guess is that something in your
> own environment makes %install work when using rpmbuild. I note there
> are some warnings when running setup.py...

Yes, the setup.py attempts to do a direct copy of the man and the bash 
completion files to /usr/share and /etc/ sub-dirs respectively. (I think 
i will patch it in the SPEC to work around this).

>
> Hopefully, someone who knows this python stuff kan give you some advice
> (that person is certainly not me, sorry :) )

Thank you for looking into this. I hope somebody can help.

Best,
Amit

-- 
http://echorand.me


More information about the devel mailing list