[Development] osx search paths with 5.3.2
Ziller Eike
Eike.Ziller at theqtcompany.com
Mon Oct 13 17:48:36 CEST 2014
On Oct 13, 2014, at 5:23 PM, Matt Broadstone <mbroadst at gmail.com> wrote:
> On Mon, Oct 13, 2014 at 11:07 AM, Ziller Eike
> <Eike.Ziller at theqtcompany.com> wrote:
>>
>> On Oct 13, 2014, at 4:55 PM, Matt Broadstone <mbroadst at gmail.com> wrote:
>>
>>> Hi all,
>>>
>>> I've been using qt 4.8.6 for quite some time on my macbook installed
>>> from homebrew with no problem whatsoever. I decided over the weekend
>>> to upgrade my install to the latest qt5 build which on homebrew is
>>> 5.3.2. Everything installed, qmake ran and I was able to successfully
>>> build qjsonrpc on my mac. Cool.
>>>
>>> Now, I've got another test app that links to qjsonrpc, and when I
>>> build that it turns out that I'm no longer able to find anything in
>>> /usr/include or link to anything in /usr/lib. I naturally assumed this
>>> was an issue with the compiler's search paths, but then why did 4.8.6
>>> work? Hmm, okay, let's just use Qt's distributed 5.3.2 binaries, maybe
>>> homebrew got it wrong... Same problem. I went through a diff of the
>>> mkspecs dirs of both versions and couldn't see anything that would
>>> obviously cause this.
>>>
>>> Has anyone using Qt on mac run into this problem? Running out of ideas here!
>>
>> Hard so say anything without knowing what the things are that are not found.
>> General hints are: Have a look at the actual compiler command lines and look for the -I and -F s, and run qmake with “qmake -d -d -d” to get detailed information on which files are pulled in and how specific qmake variables get their values.
>>
>> Br, Eike
>>
>
> Hi Eike,
> Thanks for the quick response. The things that are not found are for
> isntance, "/usr/include/qjsonrpc/qjsonrpcmessage.h". I can fix this
> manually by adding "/usr/include" to my INCLUDEPATH - no problem, but
> definitely wasn't a requirement on the exact same machine with the qt
> 4.8.6 install (maybe a more basic question: is this just something
> that changed in 5.x mkspecs?).
Could be that it changed in Qt 5 mkspecs, since /usr/include actually is not required as an include path by the Qt libraries.
Also, the Qt4 binary packages are installed systemwide, I’m not sure if that was just /usr/local/include, or also /usr/include.
So, all in all, it looks to me like the Qt 5 behavior is the expected one, and adding INCLUDEPATH=/usr/include(/qjsonrpc) is the way to go.
Br, Eike
> My compile lines with 4.8.6 installed
> add -I/usr/include to the compile lines, while the 5.3.2 install does
> not. Additionally, adding "-L/usr/lib" to my LIBS line in the pro file
> with 5.3.2 still breaks and can't find files that are definitely
> there. I'll pour through this "qmake -d -d -d" now and see if I can
> provide any more information.
>
> Matt
>
>> --
>> Eike Ziller, Senior Software Engineer - Digia, Qt
>> Digia Germany GmbH, Rudower Chaussee 13, D-12489 Berlin
>> Geschäftsführer: Mika Pälsi, Juha Varelius, Anja Wasenius
>> Sitz der Gesellschaft: Berlin. Registergericht: Amtsgericht Charlottenburg, HRB 144331 B
--
Eike Ziller, Senior Software Engineer - Digia, Qt
Digia Germany GmbH, Rudower Chaussee 13, D-12489 Berlin
Geschäftsführer: Mika Pälsi, Juha Varelius, Anja Wasenius
Sitz der Gesellschaft: Berlin. Registergericht: Amtsgericht Charlottenburg, HRB 144331 B
More information about the Development
mailing list