ссылка на mupdf в проекте Qt4 - PullRequest
       17

ссылка на mupdf в проекте Qt4

2 голосов
/ 13 сентября 2011

У меня есть libfitz.a и libmupdf.a в / usr / local / lib (предварительно скомпилированные).затем я включил заголовки:

#include <fitz.h>
#include <mupdf.h>

, затем вставил:

INCLUDEPATH  +=/home/pc/sviluppo/mupdf-0.9
INCLUDEPATH  +=/home/pc/sviluppo/mupdf-0.9/fitz
INCLUDEPATH  +=/home/pc/sviluppo/mupdf-0.9/pdf

LIBS         += -L/usr/local/lib -lfitz
LIBS         += -L/usr/local/lib -lmupdf

в файл .pro, но моя программа просто достигает типов в заголовках, а не библиотеки.Ошибка

/.../mainwindow.cpp:-1: error: undefined reference to `pdf_open_xref(pdf_xref_s**, char const*, char*)'

Что не так?

1 Ответ

1 голос
/ 14 сентября 2011

Это библиотека C, и они не использовали extern "C", чтобы легко включать заголовки в C ++.
Так что вы должны сделать это сами:

extern "C" {
    #include <fitz.h>
    #include <mupdf.h>
}

Согласно mupdf MakeFile, вы должны поместить библиотеки в таком порядке в ваш .pro (более зависимая статическая библиотека должна быть помещена перед ее зависимостями):

LIBS         += -L/usr/local/lib -lmupdf -lfitz
LIBS         += -lfreetype -ljbig2dec -ljpeg -lopenjpeg -lz -lm
...