[MacPorts] #71815: llvm-16 does not create non-suffixed aliases

MacPorts noreply at macports.org
Sun Jan 12 22:14:41 UTC 2025


#71815: llvm-16 does not create non-suffixed aliases
-------------------------+--------------------
  Reporter:  brandelune  |      Owner:  (none)
      Type:  defect      |     Status:  new
  Priority:  Normal      |  Milestone:
 Component:  ports       |    Version:  2.10.5
Resolution:              |   Keywords:
      Port:  llvm        |
-------------------------+--------------------

Comment (by brandelune):

 It happens that selecting llvm-16 now did create the aliases:

 {{{
 find /opt/local/bin -name "llvm-*" -type l -ls
 89210229        0 lrwxr-xr-x    1 root             wheel
 33 Jan 13 07:04 /opt/local/bin/llvm-cxxdump -> /opt/local/bin/llvm-
 cxxdump-mp-16
 89210209        0 lrwxr-xr-x    1 root             wheel
 32 Jan 13 07:04 /opt/local/bin/llvm-config -> /opt/local/bin/llvm-config-
 mp-16
 89210210        0 lrwxr-xr-x    1 root             wheel
 29 Jan 13 07:04 /opt/local/bin/llvm-cov -> /opt/local/bin/llvm-cov-mp-16
 89210215        0 lrwxr-xr-x    1 root             wheel
 30 Jan 13 07:04 /opt/local/bin/llvm-link -> /opt/local/bin/llvm-link-mp-16
 89210223        0 lrwxr-xr-x    1 root             wheel
 36 Jan 13 07:04 /opt/local/bin/llvm-symbolizer -> /opt/local/bin/llvm-
 symbolizer-mp-16
 89210218        0 lrwxr-xr-x    1 root             wheel
 33 Jan 13 07:04 /opt/local/bin/llvm-objdump -> /opt/local/bin/llvm-
 objdump-mp-16
 89210220        0 lrwxr-xr-x    1 root             wheel
 32 Jan 13 07:04 /opt/local/bin/llvm-rtdyld -> /opt/local/bin/llvm-rtdyld-
 mp-16
 89210233        0 lrwxr-xr-x    1 root             wheel
 29 Jan 13 07:04 /opt/local/bin/llvm-lto -> /opt/local/bin/llvm-lto-mp-16
 89210230        0 lrwxr-xr-x    1 root             wheel
 32 Jan 13 07:04 /opt/local/bin/llvm-c-test -> /opt/local/bin/llvm-c-test-
 mp-16
 89210231        0 lrwxr-xr-x    1 root             wheel
 29 Jan 13 07:04 /opt/local/bin/llvm-dwp -> /opt/local/bin/llvm-dwp-mp-16
 89210228        0 lrwxr-xr-x    1 root             wheel
 29 Jan 13 07:04 /opt/local/bin/llvm-dsymutil -> /opt/local/bin/dsymutil-
 mp-16
 89210216        0 lrwxr-xr-x    1 root             wheel
 28 Jan 13 07:04 /opt/local/bin/llvm-mc -> /opt/local/bin/llvm-mc-mp-16
 89210207        0 lrwxr-xr-x    1 root             wheel
 28 Jan 13 07:04 /opt/local/bin/llvm-as -> /opt/local/bin/llvm-as-mp-16
 89210217        0 lrwxr-xr-x    1 root             wheel
 28 Jan 13 07:04 /opt/local/bin/llvm-nm -> /opt/local/bin/llvm-nm-mp-16
 89210232        0 lrwxr-xr-x    1 root             wheel
 29 Jan 13 07:04 /opt/local/bin/llvm-lib -> /opt/local/bin/llvm-lib-mp-16
 89210206        0 lrwxr-xr-x    1 root             wheel
 28 Jan 13 07:04 /opt/local/bin/llvm-ar -> /opt/local/bin/llvm-ar-mp-16
 89210212        0 lrwxr-xr-x    1 root             wheel
 29 Jan 13 07:04 /opt/local/bin/llvm-dis -> /opt/local/bin/llvm-dis-mp-16
 89210221        0 lrwxr-xr-x    1 root             wheel
 30 Jan 13 07:04 /opt/local/bin/llvm-size -> /opt/local/bin/llvm-size-mp-16
 89210226        0 lrwxr-xr-x    1 root             wheel
 33 Jan 13 07:04 /opt/local/bin/llvm-readobj -> /opt/local/bin/llvm-
 readobj-mp-16
 89210213        0 lrwxr-xr-x    1 root             wheel
 35 Jan 13 07:04 /opt/local/bin/llvm-dwarfdump -> /opt/local/bin/llvm-
 dwarfdump-mp-16
 89210227        0 lrwxr-xr-x    1 root             wheel
 34 Jan 13 07:04 /opt/local/bin/llvm-profdata -> /opt/local/bin/llvm-
 profdata-mp-16
 89210214        0 lrwxr-xr-x    1 root             wheel
 33 Jan 13 07:04 /opt/local/bin/llvm-extract -> /opt/local/bin/llvm-
 extract-mp-16
 89210234        0 lrwxr-xr-x    1 root             wheel
 31 Jan 13 07:04 /opt/local/bin/llvm-split -> /opt/local/bin/llvm-split-
 mp-16
 89210208        0 lrwxr-xr-x    1 root             wheel
 36 Jan 13 07:04 /opt/local/bin/llvm-bcanalyzer -> /opt/local/bin/llvm-
 bcanalyzer-mp-16
 89210222        0 lrwxr-xr-x    1 root             wheel
 32 Jan 13 07:04 /opt/local/bin/llvm-stress -> /opt/local/bin/llvm-stress-
 mp-16
 89210211        0 lrwxr-xr-x    1 root             wheel
 30 Jan 13 07:04 /opt/local/bin/llvm-diff -> /opt/local/bin/llvm-diff-mp-16
 89210219        0 lrwxr-xr-x    1 root             wheel
 32 Jan 13 07:04 /opt/local/bin/llvm-ranlib -> /opt/local/bin/llvm-ranlib-
 mp-16
 }}}

 Also, when I run uninstall and then check the aliases, they are still
 there:

 {{{
 sudo port uninstall llvm-16
 --->  Deactivating llvm-16 @16.0.6_1
 --->  Cleaning llvm-16
 --->  Uninstalling llvm-16 @16.0.6_1
 --->  Cleaning llvm-16


 find /opt/local/bin -name "llvm-*" -type l -ls
 89210473        0 lrwxr-xr-x    1 root             wheel
 33 Jan 13 07:06 /opt/local/bin/llvm-cxxdump -> /opt/local/bin/llvm-
 cxxdump-mp-16
 89210453        0 lrwxr-xr-x    1 root             wheel
 32 Jan 13 07:06 /opt/local/bin/llvm-config -> /opt/local/bin/llvm-config-
 mp-16
 89210454        0 lrwxr-xr-x    1 root             wheel
 29 Jan 13 07:06 /opt/local/bin/llvm-cov -> /opt/local/bin/llvm-cov-mp-16
 89210459        0 lrwxr-xr-x    1 root             wheel
 30 Jan 13 07:06 /opt/local/bin/llvm-link -> /opt/local/bin/llvm-link-mp-16
 89210467        0 lrwxr-xr-x    1 root             wheel
 36 Jan 13 07:06 /opt/local/bin/llvm-symbolizer -> /opt/local/bin/llvm-
 symbolizer-mp-16
 89210462        0 lrwxr-xr-x    1 root             wheel
 33 Jan 13 07:06 /opt/local/bin/llvm-objdump -> /opt/local/bin/llvm-
 objdump-mp-16
 89210464        0 lrwxr-xr-x    1 root             wheel
 32 Jan 13 07:06 /opt/local/bin/llvm-rtdyld -> /opt/local/bin/llvm-rtdyld-
 mp-16
 89210477        0 lrwxr-xr-x    1 root             wheel
 29 Jan 13 07:06 /opt/local/bin/llvm-lto -> /opt/local/bin/llvm-lto-mp-16
 89210474        0 lrwxr-xr-x    1 root             wheel
 32 Jan 13 07:06 /opt/local/bin/llvm-c-test -> /opt/local/bin/llvm-c-test-
 mp-16
 89210475        0 lrwxr-xr-x    1 root             wheel
 29 Jan 13 07:06 /opt/local/bin/llvm-dwp -> /opt/local/bin/llvm-dwp-mp-16
 89210472        0 lrwxr-xr-x    1 root             wheel
 29 Jan 13 07:06 /opt/local/bin/llvm-dsymutil -> /opt/local/bin/dsymutil-
 mp-16
 89210460        0 lrwxr-xr-x    1 root             wheel
 28 Jan 13 07:06 /opt/local/bin/llvm-mc -> /opt/local/bin/llvm-mc-mp-16
 89210451        0 lrwxr-xr-x    1 root             wheel
 28 Jan 13 07:06 /opt/local/bin/llvm-as -> /opt/local/bin/llvm-as-mp-16
 89210461        0 lrwxr-xr-x    1 root             wheel
 28 Jan 13 07:06 /opt/local/bin/llvm-nm -> /opt/local/bin/llvm-nm-mp-16
 89210476        0 lrwxr-xr-x    1 root             wheel
 29 Jan 13 07:06 /opt/local/bin/llvm-lib -> /opt/local/bin/llvm-lib-mp-16
 89210450        0 lrwxr-xr-x    1 root             wheel
 28 Jan 13 07:06 /opt/local/bin/llvm-ar -> /opt/local/bin/llvm-ar-mp-16
 89210456        0 lrwxr-xr-x    1 root             wheel
 29 Jan 13 07:06 /opt/local/bin/llvm-dis -> /opt/local/bin/llvm-dis-mp-16
 89210465        0 lrwxr-xr-x    1 root             wheel
 30 Jan 13 07:06 /opt/local/bin/llvm-size -> /opt/local/bin/llvm-size-mp-16
 89210470        0 lrwxr-xr-x    1 root             wheel
 33 Jan 13 07:06 /opt/local/bin/llvm-readobj -> /opt/local/bin/llvm-
 readobj-mp-16
 89210457        0 lrwxr-xr-x    1 root             wheel
 35 Jan 13 07:06 /opt/local/bin/llvm-dwarfdump -> /opt/local/bin/llvm-
 dwarfdump-mp-16
 89210471        0 lrwxr-xr-x    1 root             wheel
 34 Jan 13 07:06 /opt/local/bin/llvm-profdata -> /opt/local/bin/llvm-
 profdata-mp-16
 89210458        0 lrwxr-xr-x    1 root             wheel
 33 Jan 13 07:06 /opt/local/bin/llvm-extract -> /opt/local/bin/llvm-
 extract-mp-16
 89210478        0 lrwxr-xr-x    1 root             wheel
 31 Jan 13 07:06 /opt/local/bin/llvm-split -> /opt/local/bin/llvm-split-
 mp-16
 89210452        0 lrwxr-xr-x    1 root             wheel
 36 Jan 13 07:06 /opt/local/bin/llvm-bcanalyzer -> /opt/local/bin/llvm-
 bcanalyzer-mp-16
 89210466        0 lrwxr-xr-x    1 root             wheel
 32 Jan 13 07:06 /opt/local/bin/llvm-stress -> /opt/local/bin/llvm-stress-
 mp-16
 89210455        0 lrwxr-xr-x    1 root             wheel
 30 Jan 13 07:06 /opt/local/bin/llvm-diff -> /opt/local/bin/llvm-diff-mp-16
 89210463        0 lrwxr-xr-x    1 root             wheel
 32 Jan 13 07:06 /opt/local/bin/llvm-ranlib -> /opt/local/bin/llvm-ranlib-
 mp-16
 }}}

 Obviously, what happened is that I used llvm-10 for a while, with its
 aliases that were then installed, then uninstalled it, installed llvm-16
 instead, the aliases pointed at something wrong so I removed them and I
 was left with no way to run llvm-16.

 It seems to me that the install process should indicate that there is a
 necessity to run "select", and the uninstall process should either remove
 the installed aliases automatically or indicate that there is a necessity
 to use a different command to remove them manually.

-- 
Ticket URL: <https://trac.macports.org/ticket/71815#comment:5>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list