Hide Forgot
Description of problem: The tcl.x86_64 and tcl.i686 packages both provide `/usr/bin/tclsh8.5` . We can install both packages at the same time and no conflict message is seen for this binary. Version-Release number of selected component (if applicable): Red Hat Enterprise Linux 7.2 tcl-8.5.13-8.el7.x86_64 tcl-8.5.13-8.el7.i686 How reproducible: Always. Steps to Reproduce: # yum install tcl tcl.i686 # rpm -q tcl tcl-8.5.13-8.el7.x86_64 tcl-8.5.13-8.el7.i686 # file /usr/bin/tclsh8.5 /usr/bin/tclsh8.5: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=7955888d68a35f4ce59d5a21b132c74c8e3ee071, stripped Actual results: We can install both packages simultaneously. # rpm -ql tcl.i686 | head -4 /usr/bin/tclsh /usr/bin/tclsh8.5 <--========= i686 executable /usr/lib/libtcl8.5.so /usr/lib/tcl8.5 # rpm -ql tcl.x86_64 | head -4 /usr/bin/tclsh /usr/bin/tclsh8.5 <--========= x86_64 executable /usr/lib64/libtcl8.5.so /usr/lib64/tcl8.5 Expected results: Should have different tclsh binary names for i686 and x86_64 archs, or if not atleast have a conflict message shown during installation. Additional info:
See below results which shows both tcl (32-bit and 64-bit can be installed simultaneously). Here, the i686 executable is overwritten. # ls i686 tcl-8.5.13-8.el7.i686.rpm tcl-8.5.13-8.el7.x86_64.rpm x86_64 # file usr/bin/tclsh8.5 usr/bin/tclsh8.5: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=eabf1d7e87182bedd655f71007345d5c78167de0, stripped # ll usr/bin/ total 8 lrwxrwxrwx. 1 root root 8 Aug 26 18:09 tclsh -> tclsh8.5 -rwxr-xr-x. 1 root root 6448 Jul 29 2015 tclsh8.5 # cd .. # ls i686 tcl-8.5.13-8.el7.i686.rpm tcl-8.5.13-8.el7.x86_64.rpm x86_64 # cd x86_64/ # ll usr/bin/ total 8 lrwxrwxrwx. 1 root root 8 Aug 26 18:09 tclsh -> tclsh8.5 -rwxr-xr-x. 1 root root 7168 Jul 29 2015 tclsh8.5 # file usr/bin/tclsh8.5 usr/bin/tclsh8.5: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=7955888d68a35f4ce59d5a21b132c74c8e3ee071, stripped # yum install tcl tcl.i686 Loaded plugins: auto-update-debuginfo, langpacks, product-id, search-disabled-repos, subscription-manager Resolving Dependencies --> Running transaction check ---> Package tcl.i686 1:8.5.13-8.el7 will be installed ---> Package tcl.x86_64 1:8.5.13-8.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved ================================================================================================================================================================================ Package Arch Version Repository Size ================================================================================================================================================================================ Installing: tcl i686 1:8.5.13-8.el7 rhel-7-workstation-rpms 1.9 M tcl x86_64 1:8.5.13-8.el7 rhel-7-workstation-rpms 1.9 M Transaction Summary ================================================================================================================================================================================ Install 2 Packages Total download size: 3.8 M Installed size: 8.7 M Is this ok [y/d/N]: y Downloading packages: (1/2): tcl-8.5.13-8.el7.x86_64.rpm | 1.9 MB 00:00:03 (2/2): tcl-8.5.13-8.el7.i686.rpm | 1.9 MB 00:00:03 -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 998 kB/s | 3.8 MB 00:00:03 Running transaction check Running transaction test Transaction test succeeded Running transaction Warning: RPMDB altered outside of yum. Installing : 1:tcl-8.5.13-8.el7.x86_64 1/2 Installing : 1:tcl-8.5.13-8.el7.i686 2/2 Verifying : 1:tcl-8.5.13-8.el7.x86_64 1/2 Verifying : 1:tcl-8.5.13-8.el7.i686 2/2 Installed: tcl.i686 1:8.5.13-8.el7 tcl.x86_64 1:8.5.13-8.el7 Complete! # rpm -q tcl tcl-8.5.13-8.el7.x86_64 tcl-8.5.13-8.el7.i686 # file /usr/bin/tclsh tclsh tclsh8.5 # file /usr/bin/tclsh8.5 /usr/bin/tclsh8.5: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=7955888d68a35f4ce59d5a21b132c74c8e3ee071, stripped # Can PM please comment on this. Is this an expected behaviour? AFAIK we provide both 32-bit and 64-bit libraries as part of multilib packages. But, not sure if this applies for binaries?