DEV Community

kojix2
kojix2

Posted on

1

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.
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode

After installing, verify the files:

brew ls argp-standalone
Enter fullscreen mode Exit fullscreen mode
/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
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode

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

Image of Timescale

🚀 pgai Vectorizer: SQLAlchemy and LiteLLM Make Vector Search Simple

We built pgai Vectorizer to simplify embedding management for AI applications—without needing a separate database or complex infrastructure. Since launch, developers have created over 3,000 vectorizers on Timescale Cloud, with many more self-hosted.

Read more →

Top comments (0)

Postmark Image

Speedy emails, satisfied customers

Are delayed transactional emails costing you user satisfaction? Postmark delivers your emails almost instantly, keeping your customers happy and connected.

Sign up