2012/4/12 Kamal Ahmed <kamal2222ahmed@xxxxxxxxx>: > Jon, > > with: > cp obj/ggsnc/ggsnc $RPM_BUILD_ROOT%{_bindir}/ > > i get: > > + cp obj/ggsnc/ggsnc /pcore-0.1/usr/bin/ > cp: cannot create regular file `/pcore-0.1/usr/bin/': No such file or > directory > error: Bad exit status from /var/tmp/rpm-tmp.93551 (%install) > > The problem being that even though my Version is 0.1 , but when i untar , > the directory gets created is pcore and not pcore-0.1. > Any solution for this ? use: %setup -qn pcore > -Kamal. > > ________________________________ > From: Jon Ciesla <limburgher@xxxxxxxxx> > To: Kamal Ahmed <kamal2222ahmed@xxxxxxxxx>; Discussion of RPM packaging > standards and practices for Fedora <packaging@xxxxxxxxxxxxxxxxxxxxxxx> > Sent: Thursday, April 12, 2012 3:01 PM > Subject: Re: Cannot cd to %{name}-%{version} > > 2012/4/12 Kamal Ahmed <kamal2222ahmed@xxxxxxxxx>: >> i found out the directory name "pcore" but outside of rpm/spec >> I wish there was a way inside the rpm , that i could find out the name of >> the directory that got created as a result of make >> in any case. >> >> now i AM able to od a make, but when trying to copy the binaries ( lets >> say >> one of the binaries "ggsnc" in /usr/bin) i get error message on permission >> >> ibcm_td.a ./libmt_td.a -lpthread -lnsl -lrt -o ./hnbgw >> make[1]: Leaving directory `/home/kahmed/rpmbuild/BUILD/pcore/obj/hnbgw' >> + exit 0 >> Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.32400 >> + umask 022 >> + cd /home/kahmed/rpmbuild/BUILD >> + cd pcore >> + LANG=C >> + export LANG >> + unset DISPLAY >> + cp obj/ggsnc/ggsnc /usr/bin >> cp: cannot create regular file `/usr/bin/ggsnc': Permission denied >> error: Bad exit status from /var/tmp/rpm-tmp.32400 (%install) > > You need to copy it to the buildroot, rather than the running system, > so it should be: > > cp obj/ggsnc/ggsnc $RPM_BUILD_ROOT%{_bindir}/ > > Or the like. > > -J > >> >> RPM build errors: >> Bad exit status from /var/tmp/rpm-tmp.32400 (%install) >> 1. Am i doing the right thing which is to copy the binaries ( since we do >> NOT have a make install ) to /usr/bin >> or this should be done in chroot >> 2. i am copying binaries in %install section, is this ok ? >> >> %install >> cp obj/ggsnc/ggsnc %{_bindir} >> >> Thanks, >> -Kamal. >> >> ________________________________ >> From: zxq9 <zxq9@xxxxxxxx> >> To: packaging@xxxxxxxxxxxxxxxxxxxxxxx >> Sent: Thursday, April 12, 2012 11:00 AM >> Subject: Re: Cannot cd to %{name}-%{version} >> >>>2012/4/12 Kamal Ahmed <kamal2222ahmed@xxxxxxxxx>: >>>> >>>> %prep >>>> mkdir %{name}-%{version} >>> >>>Find out what the directory is really called after extraction, i.e. >>>foo-somethingelse and change >>> >>>> %setup -q >>> >>>to >>> >>>%setup -qn foo-somethingelse >> >> Whatever the extraction directory is gets removed prior to the build to >> keep >> the space clean. So what he's saying is that your problem (isolated below) >> will stop happening if you name the build one something else. >> >>>> rpmbuild -bb pcore.spec >> >> Everything is fine here... >> >>>> Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.66518 >>>> + umask 022 >>>> + cd /home/kahmed/rpmbuild/BUILD >>>> + LANG=C >>>> + export LANG >>>> + unset DISPLAY >>>> + mkdir pcore-0.1 >> >> And here the working directory is made based on the default extraction >> directory (that is, {% name %}-{% version %}). >> >>>> + cd /home/kahmed/rpmbuild/BUILD >>>> + rm -rf pcore-0.1 >> >> And here it gets removed! So you need to name the one you really want to >> use >> something different, which is what Jon is saying about "setup -qn >> something-else". >> >>>> + /bin/gzip -dc /home/kahmed/rpmbuild/SOURCES/pcore-0.1.tar.gz >>>> + tar -xf - >>>> + STATUS=0 >>>> + '[' 0 -ne 0 ']' >>>> + cd pcore-0.1 >> >> And of course this step doesn't work because pcore-0.1 has already been >> "rm -rf"d >> >>>> /var/tmp/rpm-tmp.66518: line 37: cd: pcore-0.1: No such file or >>>> directory >> >> Hope this makes more sense now. Packaging is a little mysterious until you >> play with it a bit on your own. And once you do, you'll find that Fedora >> has the best all-around guidelines for it, all told. They are strict and a >> little difficult to understand "why" at first, but there is a *lot* of >> experience expressed in the packaging guidelines, tutorials, rpm itself >> and >> this list (most of the time...). >> -- >> packaging mailing list >> packaging@xxxxxxxxxxxxxxxxxxxxxxx >> https://admin.fedoraproject.org/mailman/listinfo/packaging >> >> >> -- >> packaging mailing list >> packaging@xxxxxxxxxxxxxxxxxxxxxxx >> https://admin.fedoraproject.org/mailman/listinfo/packaging > > > > -- > in your fear, seek only peace > in your fear, seek only love > > -d. bowie > > > > -- > packaging mailing list > packaging@xxxxxxxxxxxxxxxxxxxxxxx > https://admin.fedoraproject.org/mailman/listinfo/packaging -- in your fear, seek only peace in your fear, seek only love -d. bowie -- packaging mailing list packaging@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/packaging