Sahil Gupta
Sahil Gupta

Reputation: 105

Static library header file

I am trying to import a static library based on Hierarchical Matrices (H2Lib). The folder contains a make file which compiles the library files, examples and tests into a single .a file. I have referred to tutorials on creating and using static libraries in C using archiver command line in Linux but this does not create a header file, which I had to create manually while working out the tutorial. The H2Lib has multiple files and it would be difficult and time consuming to create a header file manually for this. I am not sure if I am missing something here or doing something wrong; I am new to the concept of libraries in C. Can some one please help me on how to use this library in C?

P.S: git repository link for H2Lib: https://github.com/H2Lib/H2Lib/tree/master

Upvotes: 1

Views: 1403

Answers (1)

Makogan
Makogan

Reputation: 9538

You are not supposed to write the header files yourself. Somewhere on the folder where the library is defined there should be a directory with multiple .h files (the headers) (it's usually named include).

What you need to do is include them into your project. You do this by appending -I to the path of each folder containing the headers and then writing #include "headername.h" in your source code.

So if the headers are in dir/include, you'd do:

gcc yourfiles.c <flags> output.o  -I dir/include 

Upvotes: 1

Related Questions