On 6/19/05, Jack Howarth <howarth@xxxxxxxxxxxxxxxxx> wrote: > Is there a good resource to read which will explain how rpm handles > x86_64 and i386 packages on Fedora Core 4 x86_64? For example, by default > only the ncurses and ncurses-devel packages built for x86_64 are installed. > It is unclear how one should install the missing i386 built packages. I > have used 'rpm -ivh' since I was concerned that 'rpm -Uvh' might remove > the x86_64 built libraries and break things. Now when I do... > > rpm -qa | grep ncurses > > ...I see... > > ncurses-devel-5.4-17 > ncurses-5.4-17 > ncurses-devel-5.4-17 > ncurses-5.4-17 > > However when I do 'rpm -ql ncurses-5.4-17' I only seem to see the > files for the x86_64 built binaries. It would nice if there was > a set of clear rules for working with rpm in a mixed architecture > environment. Thanks in advance for any clarifications. > Jack Uhh, well it Just Works in most instances. 32-bit things get put in /lib and /usr/lib and 64-bit things get put in /lib64 and /usr/lib64. Installing 32-bit packages is seperate from installing 64-bit so you were correct to install rather than upgrade. This should work for most, if not all, library packages. Programs may not work together so well. Generally you should only install one arch of any particular program. The recent problem with perl is an example of why. Also yum install ncurses.i386 ncurses-devel.i386 would have done the trick. You can put a line in you ~/.rpmmacros file that will make rpm output the arch of a package as well as its name so that you can more easily differentiate them: %_query_all_fmt %%{name}-%%{version}-%%{release}.%%{arch} With this, your "rpm -qa | grep ncurses" command would have showed you that one package is 32-bit and the other 64-bit. For your other command, perhaps you can try: rpm -ql ncurses.i386 Jonathan