[Gelistirici] corporate2/devel-x86_64/system/base/baselayout - fix for x86_64

Onur Küçük onur at pardus.org.tr
5 Şub 2010 Cum 15:17:16 EET


On 05 Şubat 2010 Cuma 14:44:16 Metin AKDERE wrote:
> 2010/2/5 Fatih Aşıcı <fatih at pardus.org.tr>
> 
> > On Friday 05 February 2010 11:08:37 Necdet Yücel wrote:
> > > Author: necdet.yucel
> > > Date: Fri Feb  5 11:08:37 2010
> > > New Revision: 86063
> > >
> > > Modified:
> > >    corporate2/devel-x86_64/system/base/baselayout/actions.py
> > > Log:
> > > fix for x86_64
> > >
> > > ---
> > >  actions.py |    5 +++--
> > >  1 file changed, 3 insertions(+), 2 deletions(-)
> > >
> > > Modified: corporate2/devel-x86_64/system/base/baselayout/actions.py
> > > =================================================================
> > > --- corporate2/devel-x86_64/system/base/baselayout/actions.py
> > > (original) +++
> > > corporate2/devel-x86_64/system/base/baselayout/actions.py Fri Feb  5
> > > 11:08:37 2010 @@ -101,5 +101,6 @@
> > >      pisitools.dosym("share/man", "/usr/local/man")
> > >
> > >      # x86_64 compatibility symlinks stuff
> > > -    pisitools.dosym("/lib", "/lib64")
> > > -    pisitools.dosym("/usr/lib", "/usr/lib64")
> > > +    pisitools.dosym("lib", "lib64")
> > > +    shelltools.cd("%s/usr" %get.installDIR())
> > > +    shelltools.system("ln -s lib lib64")
> >
> > Neden dosym kullanmıyorsunuz?
> 
> CD yapılırken pisi -D parametresi ile paketleri bir hedef dizine kuruyoruz.
> Bu kurulum esnasında
> pisitools.dosym("/usr/lib", "/usr/lib64") ile linkleme yapılırken, link
> install dizininde göstermesi gereken hedefi değil de, sistem kökündeki
> hedefi gösterecek şekilde oluşuyor. Bu da paketlerin kurulumu sırasında lib
> lerin bulunaması hatası ile sonuçlanıyor. get.installDIR  ile
> kullandığımızda ise link /var/pisi/xx/install/xx şeklinde kurulum dizininin
> tam yolunu gösteriyor.
> 
> Eğer, sembolik linkin oluşturulacağı dizinde olursak pisitools.dosym("lib",
> "lib64") işimizi görüyor; ama oluşturulacak link ile göstereceği hedef
> farklı dizinlerde ise linkler istenilen şekilde oluşmuyor. shelltools.cd
>  ile hedef dizine gidip dosym yaptığımızda da "lib64 linki zaten var"
>  şeklinde hata veriyor. Biz de bu sorunun etrafından bu şekilde
>  dolaşabildik.

 Öncelikle shelltools.system kullanılması yanlış, kabuktan mümkün mertebe uzak 
durmak lazım. shelltools.cd ile yapılan kısımda da symlink lerin hedefini 
absolute değil relative vererek kullanmak doğru olur

 pisitools.dosym("lib", "/usr/lib64")

 gibi


-- 
 Onur Küçük                                      Knowledge speaks,
 <onur.--.-.pardus.org.tr>                       but wisdom listens



Gelistirici mesaj listesiyle ilgili daha fazla bilgi