X86-64 FC6 DVD has both gdb-6.5-8.fc6.i386.rpm and gdb-6.5-8.fc6.x86_64.rpm. Both are installed. What is benefit? It seems that x86-64 version overrides i386 version anyway. X86-64 FC6 updates also has both gdb.x86_64 0:6.5-13.fc6 gdb.i386 0:6.5-13.fc6.
In some cases both arches are needed because of library requirements. They can both be installed and share common files. "yum remove gdb.i386" if you want to see what you would miss without it. I suggest reading up on rpm's multiarch capability.
[root@gnu-25 hjl]# rpm -ql gdb.i386 /usr/bin/gcore /usr/bin/gdb /usr/bin/gdbserver /usr/bin/gdbtui /usr/bin/gstack /usr/share/doc/gdb-6.5 /usr/share/doc/gdb-6.5/COPYING /usr/share/doc/gdb-6.5/COPYING.LIB /usr/share/doc/gdb-6.5/NEWS /usr/share/doc/gdb-6.5/README /usr/share/info/annotate.info.gz /usr/share/info/gdb.info.gz /usr/share/info/gdbint.info.gz /usr/share/info/stabs.info.gz /usr/share/man/man1/gdb.1.gz /usr/share/man/man1/gdbserver.1.gz /usr/share/man/man1/gdbtui.1.gz [root@gnu-25 hjl]# rpm -ql gdb.x86_64 /usr/bin/gcore /usr/bin/gdb /usr/bin/gdbserver /usr/bin/gdbtui /usr/bin/gstack /usr/share/doc/gdb-6.5 /usr/share/doc/gdb-6.5/COPYING /usr/share/doc/gdb-6.5/COPYING.LIB /usr/share/doc/gdb-6.5/NEWS /usr/share/doc/gdb-6.5/README /usr/share/info/annotate.info.gz /usr/share/info/gdb.info.gz /usr/share/info/gdbint.info.gz /usr/share/info/stabs.info.gz /usr/share/man/man1/gdb.1.gz /usr/share/man/man1/gdbserver.1.gz /usr/share/man/man1/gdbtui.1.gz [hjl@gnu-25 ~]$ file /usr/bin/gcore /usr/bin/gcore: Bourne shell script text executable [hjl@gnu-25 ~]$ file /usr/bin/gdb /usr/bin/gdb: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped [hjl@gnu-25 ~]$ file /usr/bin/gdbserver /usr/bin/gdbserver: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped [hjl@gnu-25 ~]$ file /usr/bin/gdbtui /usr/bin/gdbtui: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped [hjl@gnu-25 ~]$ file /usr/bin/gstack /usr/bin/gstack: Bourne shell script text executable [hjl@gnu-25 ~]$ What does gdb.i386 have which gdb.x86_64 doesn't, which rpms require gdb.i386 and why? It looks like nothing in gdb.i386 is installed or needed.
[root@gnu-25 hjl]# yum remove gdb.i386 Loading "installonlyn" plugin Setting up Remove Process Resolving Dependencies --> Populating transaction set with selected packages. Please wait. ---> Package gdb.i386 0:6.5-13.fc6 set to be erased --> Running transaction check Dependencies Resolved ============================================================================= Package Arch Version Repository Size ============================================================================= Removing: gdb i386 6.5-13.fc6 installed 6.1 M Transaction Summary ============================================================================= Install 0 Package(s) Update 0 Package(s) Remove 1 Package(s) Is this ok [y/N]: y Downloading Packages: Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Removing : gdb ######################### [1/1] Removed: gdb.i386 0:6.5-13.fc6 Complete! [root@gnu-25 hjl]# I don't see anything which depends on gdb.i386.
Nothing deps on gdb.i386. However 'gdb' was asked to be installed, and since both gdb.x86_64 and gdb.i386 were available, you get both. This is how it works.