Logo

dev-resources.site

for different kinds of informations.

How to Fix the 'argp.h' Not Found Error on macOS

Published at
7/24/2024
Categories
Author
kojix2
Categories
1 categories in total
open
How to Fix the 'argp.h' Not Found Error on macOS

When compiling a Linux-oriented tool written in C/C++ on macOS, you might encounter the following error:

fatal error: 'argp.h' file not found
#include <argp.h>
         ^~~~~~~~
1 error generated.

This means that the library for parsing command-line arguments, argp.h, is missing.

Solution

Fortunately, you can install this library using Homebrew.

brew install argp-standalone

After installing, verify the files:

brew ls argp-standalone
/opt/homebrew/Cellar/argp-standalone/1.3/include/argp.h
/opt/homebrew/Cellar/argp-standalone/1.3/lib/libargp.a
/opt/homebrew/Cellar/argp-standalone/1.3/sbom.spdx.json

Since there is no .pc file, you can't use pkg-config. Instead, you need to specify the paths directly.

cc hoge.c \
  -largp \
  -L /opt/homebrew/Cellar/argp-standalone/1.3/lib/ \
  -I /opt/homebrew/Cellar/argp-standalone/1.3/include/ \
  -o hoge

With these steps, you should be able to resolve the issue of missing argp.h on macOS.

Featured ones: