30

I try to install xdebug on MacOs Mojave but get this error

/private/tmp/pear/install/xdebug/xdebug.c:25:10: fatal error: 'php.h' file not found

Command Line Tools are installed.

Vynder
  • 655
  • 1
  • 6
  • 9

3 Answers3

68

I ran into this trying to compile xdebug on my system, I had to do the following to get it to work

0) Check that you have the file /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg on your system.

1) If not, install the command line tools (I had installed them at one point, but the files under /Library/Developer/CommandLineTools/ were missing so I must have deleted it...)

xcode-select --install

2) Reinstall the header files

sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /

Credit to @donatJ - https://stackoverflow.com/a/52612102/649915

Bret Weinraub
  • 1,943
  • 15
  • 21
Steven
  • 912
  • 1
  • 7
  • 13
  • 5
    You, sir, saved my day. Do the headers and CommandLineTools get erased intentionally after updating to Mojave or is it a bug? I never had this issue before and I'm quite sure I didn't delete them. – Franco Roura Nov 14 '18 at 22:35
14
brew doctor

and then

brew link --overwrite php

helped me.

Vynder
  • 655
  • 1
  • 6
  • 9
10

Headers aren't installed for Mojave.

To install the headers:

open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg

I was having the same issue and this fixed it for me.

Eray T
  • 739
  • 6
  • 13
  • This worked, but I had to disable SIP first. Then install the headers, run PECL to install what I wanted and as the last step enable SIP again. – MrMacvos Mar 20 '20 at 15:55