Help with Mock error

Alec Leamas leamas.alec at gmail.com
Tue Mar 13 11:45:33 UTC 2012


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...

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

--a


More information about the devel mailing list