rocksdb を使用するプログラムをコンパイルしようとしています。
公式 Web ページの例によると、コードに追加する必要がある唯一のヘッダーは db.h です。
今、私がコンパイルしているファイルはフォルダー A. db.h にありますが、A/rocksdb-master/include/rocksdb/ にあります。
したがって、次の行をファイルに追加します。
#include "rocksdb-master/include/rocksdb"
ファイルが見つかりますが、問題は db.h 内に次の行があることです。
#include "rocksdb/metadata.h"
そして、コンパイルすると、次のエラーが発生します。
致命的なエラー: rocksdb/metadata.h: No such file or directory #include "rocksdb/metadata.h"
つまり、それは明らかです。db.h は metadata.h と同じフォルダーにあるため、コンパイラーが rocksdb フォルダーを見つけられなくても問題ありません。しかし、このライブラリを書いた人がそれを知らないとは思えません。
パスを追加してコンパイルする他の方法はありますか? db.h からのパスがその場所に対して相対的でないのはなぜですか?