Linuxbrew-core: Failed to upgrade maven to 3.5.2

Created on 27 Oct 2017  ·  9Comments  ·  Source: Homebrew/linuxbrew-core

  • [x] Confirmed this is a problem with brew installing one, specific formula and not every time you run brew? If it's a general brew problem please file this issue at https://github.com/Linuxbrew/brew/issues/new.
  • [ ] If you have a macOS system and can replicate the problem on macOS with Homebrew, please report the issue to Homebrew/core and follow their issue template from your macOS system. If you are unsure, please report the issue to Linuxbrew.
  • [x] Ran brew update and retried your prior step?
  • [x] Ran brew doctor, fixed all issues and retried your prior step?
  • [x] Ran brew gist-logs <formula> (where <formula> is the name of the formula that failed) and included the output link?
    brew gist-logs maven output: https://gist.github.com/anonymous/a69fa858aaf6a497cd92884d1393cd3f
  • [ ] If brew gist-logs didn't work: ran brew config and brew doctor and included their output with your issue?

To help us debug your issue please explain:

  • What you were trying to do (and why)
    Upgrade maven from 3.5.0 to 3.5.2.
  • What happened (include command output)
➜  ~ brew upgrade maven -v
==> Upgrading 1 outdated package, with result:
maven 3.5.2
==> Upgrading maven 
rm /home/linuxbrew/.linuxbrew/bin/mvn
rm /home/linuxbrew/.linuxbrew/bin/mvnDebug
rm /home/linuxbrew/.linuxbrew/bin/mvnyjp
==> Downloading https://www.apache.org/dyn/closer.cgi?path=maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz
Already downloaded: /home/tang/.cache/Homebrew/maven-3.5.2.tar.gz
==> Verifying maven-3.5.2.tar.gz checksum
tar xzf /home/tang/.cache/Homebrew/maven-3.5.2.tar.gz
ln -s ../Cellar/maven/3.5.0/bin/mvn mvn
ln -s ../Cellar/maven/3.5.0/bin/mvnDebug mvnDebug
ln -s ../Cellar/maven/3.5.0/bin/mvnyjp mvnyjp
Error: Failure while executing: ldd /home/linuxbrew/.linuxbrew/Cellar/maven/3.5.2/libexec/lib/jansi-native/freebsd64/libjansi.so
    not a dynamic executable
  • What you expected to happen
    Maven been upgraded without any error.
  • Step-by-step reproduction instructions (by running brew install commands)
outdated

Most helpful comment

I've merged PR #517. Could you please try…

brew update
brew --version
brew upgrade maven

All 9 comments

Not exactly sure what is going here.
We had a similar error at one point, see #2584

@iMichka I have no idea why the ldd has been invoked.
I can manually invoke on the linux64 version in the same archive as following:

➜  apache-maven-3.5.2 ldd lib/jansi-native/linux64/libjansi.so 
    linux-vdso.so.1 =>  (0x00007ffd727fe000)
    libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 (0x00007f71f1158000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f71f0d8e000)
    /lib64/ld-linux-x86-64.so.2 (0x00005619e307b000)

It's a bug in brew that it's running ldd on a non-Linux (BSD) ELF file.
See https://github.com/Linuxbrew/homebrew-core/issues/4816

❯❯❯ file ./lib/jansi-native/freebsd64/libjansi.so
./lib/jansi-native/freebsd64/libjansi.so: ELF 64-bit LSB shared object, x86-64, version 1 (FreeBSD), dynamically linked, not stripped, with debug_info

Thanks for the bug report, Pei-Tang.
This bug will be fixed by PR https://github.com/Linuxbrew/brew/pull/517

I've merged PR #517. Could you please try…

brew update
brew --version
brew upgrade maven

@sjackman thanks a lot, I can install maven 3.5.2 smoothly.

➜  ~ brew update
Updated Homebrew from 09208fb2a to 095d01fde.
No changes to formulae.
➜  ~ brew upgrade
==> Upgrading 1 outdated package, with result:
maven 3.5.2
==> Upgrading maven 
==> Downloading https://www.apache.org/dyn/closer.cgi?path=maven/maven-3/3.5.2/b
Already downloaded: /home/tang/.cache/Homebrew/maven-3.5.2.tar.gz
🍺  /home/linuxbrew/.linuxbrew/Cellar/maven/3.5.2: 104 files, 10.2MB, built in 1 second
➜  ~ mvn -v    
Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T15:58:13+08:00)
Maven home: /home/linuxbrew/.linuxbrew/Cellar/maven/3.5.2/libexec
Java version: 1.8.0_151, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-8-oracle/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.10.0-37-generic", arch: "amd64", family: "unix"

Glad to hear it!

Was this page helpful?
0 / 5 - 0 ratings