New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Xcode 9.3 breaks GNU detection of vasnprint #4008

chdiza opened this Issue Mar 31, 2018 · 1 comment


None yet
2 participants

chdiza commented Mar 31, 2018

  • are reporting a bug others will be able to reproduce and not asking a question. If you're not sure or want to ask a question do so on our Discourse:
  • ran a brew command and reproduced the problem with multiple formulae? If it's a problem with a single, official formula (not cask) please file this issue at Homebrew/homebrew-core: If it's a brew cask problem please file this issue at If it's a tap (e.g. Homebrew/homebrew-php) problem please file this issue at the tap.
  • ran brew update and can still reproduce the problem?
  • ran brew doctor, fixed all issues and can still reproduce the problem?
  • ran brew config and brew doctor and included their output with your issue?

Xcode has been on a nice run of breaking certain functions that HB then has to paper over in superenv, e.g., homebrew-core/18438. The general kind of fix is exemplified in #3182.

Xcode 9.3 continues this noble tradition. This time the function is vasnprintf. My local custom formulas for grep and diffutils reveal this. In the case of grep, the following is in the configure.log:

configure:7830: checking for vasnprintf
configure:7830: gcc -o conftest -g -O2   conftest.c  >&5
Undefined symbols for architecture x86_64:
  "_vasnprintf", referenced from:
      _main in conftest-b41cac.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

In the case of diffutils, that same thing shows up in configure.log; and in both diffutils and grep there is also new a test failure (I run make check in my local formulas):

FAIL test-vasnprintf (exit status: 132)

I'm wondering whether vasnprintf should get the same treatment as futimens, utimensat and the like.

Doctor says I'm ready to brew. brew config is here:

HOMEBREW_VERSION: 1.5.13-18-g07997d4
HEAD: 07997d41e896ca1a11d4d774dadea9e6862a853e
Last commit: 21 hours ago
Core tap ORIGIN:
Core tap HEAD: 41dd22806a81a5b27ba0d4d09dc90e4275803a19
Core tap last commit: 74 minutes ago
HOMEBREW_CACHE: /stuff/brache
HOMEBREW_LOGS: /Users/chdiza/Library/Homebrew
HOMEBREW_TEMP: /Users/chdiza/.tmp/tmpdir
CPU: quad-core 64-bit ivybridge
Homebrew Ruby: 2.3.3 => /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby
Clang: 9.1 build 902
Git: 2.16.3 => /usr/local/bin/git
Curl: 7.54.0 => /usr/bin/curl
Perl: /usr/bin/perl
Python: /usr/bin/python
Ruby: /usr/bin/ruby => /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby
Java: N/A
macOS: 10.13.3-x86_64
Xcode: 9.3
X11: N/A

This comment has been minimized.


ilovezfs commented Mar 31, 2018

If you're on 10.13 then it's a different type of bug, since there's no discrepancy between the sdk headers and the libraries.

@ilovezfs ilovezfs closed this Mar 31, 2018

@lock lock bot added the outdated label May 4, 2018

@lock lock bot locked as resolved and limited conversation to collaborators May 4, 2018

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.