hhvm / homebrew-hhvm

Official Mac OS X Homebrew formula for HHVM
MIT License
82 stars 22 forks source link

(postgres) configure: error: header file <perl.h> is required for Perl #122

Closed matthewruttley closed 5 years ago

matthewruttley commented 5 years ago

Description

I'm trying to install hhvm on my mac during bootcamp to live-test some Hack functionality, however I'm getting an error on installation saying that there should be a Perl header file. There's a few solutions online after googling, such as: https://github.com/petere/homebrew-postgresql/issues/41#issuecomment-442178698 but they don't work. I have a feeling that it could be due to internal tooling on the laptop, and some things that probably shouldn't be deleted.

Can anyone here confirm a good solution?

Context and Logs

Parameter Value
OS X Version: 10.14.4
Homebrew Version: Homebrew 2.1.5-11-g3ca10fb Homebrew/homebrew-core (git revision 3226; last commit 2019-06-13)
Xcode Version: Xcode_10.2.1_fb

Output of clang -v:

Apple LLVM version 10.0.1 (clang-1001.0.46.4) Target: x86_64-apple-darwin18.5.0 Thread model: posix InstalledDir: /Library/Developer/CommandLineTools/usr/bin

Build logs: Link to public gist created with brew gist-logs hhvm

The command above returns no logs, however I have:

Last 15 lines from /Users/mattruttley/Library/Logs/Homebrew/postgresql/01.configure:
checking for __get_cpuid... yes
checking for __cpuid... no
checking for _mm_crc32_u8 and _mm_crc32_u32 with CFLAGS=... yes
checking for __crc32cb, __crc32ch, __crc32cw, and __crc32cd with CFLAGS=... no
checking for __crc32cb, __crc32ch, __crc32cw, and __crc32cd with CFLAGS=-march=armv8-a+crc... no
checking which CRC-32C implementation to use... SSE 4.2
checking which semaphore API to use... System V
checking which random number source to use... OpenSSL
checking for tclsh... /usr/bin/tclsh
checking for tclConfig.sh... /Applications/Xcode_10.2.1_fb.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/Tcl.framework/tclConfig.sh
checking tcl.h usability... yes
checking tcl.h presence... yes
checking for tcl.h... yes
checking for perl.h... no
configure: error: header file <perl.h> is required for Perl

Do not report this issue to Homebrew/brew or Homebrew/core!
fredemmott commented 5 years ago

Sorry, we're not seeing this issue, and unable - in general - to support either Postgres, or FB environments.

That said, in general, this should be a binary installation, not a source installation; if homebrew isn't using /usr/local, that could be the cause - but changing that could potentially cause FB-specific issues and CPE /strongly/ recommend against it.

live-test some Hack functionality

It's generally best to do this in your www development environment; otherwise you'll need to get familiar with e.g. use namespace, composer, and hhvm-autoload. Additionally, async HSL functions are named differently in www compared to open source