LoginSignup
2
0

More than 3 years have passed since last update.

【Ubuntu】ライブラリをpkg-configで管理する

Posted at

Ubuntu18.04にinstallしたライブラリをg++でコンパイルする際にパスを通すのが面倒だったのでpkg-configで管理する

Ubuntuの端末でpkg-configを実行した際、/usr/lib/pkgconfig/usr/share/pkgconfig内部にある.pcファイルを順番に実行していく。.pcファイルにはライブラリのパス情報などが記述されている。これ以外のディレクトリを走査して欲しい場合は、$PKG_CONFIG_PATHにパスを通す。なのでこれのいずれかのディレクトリに.pcファイルを作成する

.pcの書き方

mylib.pc
prefix=/home/path-to-your-library
exec_prefix=${prefix}
includedir=${prefix}/include
libdir=${exec_prefix}/lib

Name: mylib
Description: my library
Version: 1.0.0
Cflags: -I${includedir}/mylib
Libs: -L${libdir} -lmylib

Name: pkg-configを実行する際に渡すライブラリ名
Description: ライブラリの説明
URL: ライブラリを公開している場合、利用者向けのURL
Version: ライブラリのバージョン
Requires: ライブラリを利用するために必要なパッケージ一覧
Requires.private: ライブラリを利用するために必要なプライベートパッケージ一覧
Conflicts: 競合情報
Cflags: ライブラリのincludeパス
Libs: ライブラリのlibパス
Libs.private: ライブラリのプライベートlibパス

■実行

pkg-config --cflags --libs mylib

 
参考:
Guide to pkg-config
https://people.freedesktop.org/~dbn/pkg-config-guide.html
PKG_CONFIG_PATH environment variable
https://askubuntu.com/questions/210210/pkg-config-path-environment-variable

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0