开发者

Headers in 3rd party frameworks on Mac OS X

开发者 https://www.devze.com 2023-01-11 15:09 出处:网络
I\'m using the 开发者_开发问答Sparkle framework in Qt. I\'ve added the following to my .pro file:

I'm using the 开发者_开发问答Sparkle framework in Qt. I've added the following to my .pro file:

LIBS += -framework Sparkle
QMAKE_CXX_FLAGS += -F/path/to/the/directory/sparkle.framework/is/in

However I get a compilation error saying "Sparkle/Sparkle.h" cannot be found. Framework headers physically reside in MyFramework.framework/Headers/*.h and are included like MyFramework/*.h

What commands do I need to add to my .pro file to properly include the Sparkle framework headers?


The problem was that I was using QMAKE_CXXFLAGS, I needed to use QMAKE_CFLAGS for the compiler to include the headers.


You can use INCLUDEPATH in the .pro file.

From docs,

This variable specifies the #include directories which should be searched when compiling the project. Use ';' or a space as the directory separator.

So, in your case it will be like,

INCLUDEPATH = MyFramework.framework/Headers

where

MyFramework.framework/Headers is the physical location of the headers.

I never been used to MAC OS but still hope it helps..

Edit:

If you want to include like FrameWorkName/HeaderFile.h you can stop with specifying upto the desired folder.

For e.g,

If home/CommonFolder/FrameWorkName/HeaderFile.h is your header file's physical location, you can give the INCLUDEPATH as

INCLUDEPATH = home/CommonFolder

Now In your .cpp you can give like #include "FrameWorkName/HeaderFile.h",

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号