Я построил podofo-0.9.2, используя стандартный cmake и сделаю процедуру установки. У меня есть файлы в каталоге /usr/include/podofo. Я добавил его на свой путь. Затем я попытался скомпилировать пример podofotxtextract, используя следующий синтаксис.
cd podofo/tools/podofotxtextract
g++ -c -Wall TextExtractor.cpp TextExtractor.h podofotxtextract.cpp -lpodofo -lfreetype
-lfontconfig -ljpeg -lz
Но почему-то компиляция не позволяет:
podofo.h - no such file or directory
Это значение моего пути
/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/include/podofo
Может быть, я что-то упустил. Я связал библиотеки. Я даже включил его в путь. Что мне не хватает?
Я думаю, что вы пропустили -I
чтобы установить путь включения. Это ошибка компиляции, а не линкера.
-I/path/to/dir/of/podofo
$PATH
будет обрабатывать включения, пожалуйста, обратитесь к Справочнику по переменным среды GCC для получения более подробной информации. Как ваша зависимость, вы можете использовать CMake (и include_directories
+ find_package
), чтобы автоматизировать это.
Используйте параметр I
чтобы добавить podofo.h
" podofo.h
" в g++
(см. Это, может помочь).
g++ -c -Wall -I/my/path/to/podofo/h TextExtractor.cpp TextExtractor.h podofotxtextract.cpp -lpodofo -lfreetype -lfontconfig -ljpeg -lz
#include <podofo.h>
или#include "podofo.h"
?