Opened 10 years ago

Closed 9 years ago

#44204 closed defect (fixed)

qt5-mac: wrong pkg-config variables

Reported by: mojca (Mojca Miklavec) Owned by: MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: michaelld (Michael Dickens), mkae (Marko Käning), horasio (Samuel Hornus), pixilla (Bradley Giesbrecht), pavel@…, RJVB (René Bertin)
Port: qt5-mac

Description

$ pkg-config --flags Qt5Core

returns

-I<prefix>/include/QtCore

but that path doesn't exist.

The other flag:

$ pkg-config --libs Qt5Core

returns

-F<frameworks_dir> -framework QtCore

which seems OK (I had problems with -framework QtCore fetching files from the system, but that might have been unrelated).

See ${prefix}/lib/pkgconfig/Qt5Core.pc and others.

Change History (13)

comment:1 Changed 10 years ago by mojca (Mojca Miklavec)

See also my workaround in r121585. If you need something to test, you can start there. (Please note that I don't claim that gnuplot's configuration works properly.)

comment:2 Changed 10 years ago by mkae (Marko Käning)

Cc: mk@… added

Cc Me!

comment:3 Changed 10 years ago by horasio (Samuel Hornus)

Cc: samuel.hornus@… added

Cc Me!

comment:4 Changed 10 years ago by horasio (Samuel Hornus)

I second that ticket! The pkg-config files /opt/local/lib/pkgconfig/Qt5*.pc give the wrong include paths:

/opt/local/include/... instead of /opt/local/Library/Frameworks/Qt*.framework/Versions/5/Headers

Please fix this, as it kills the compilation of any project using Macports' Qt5.

comment:5 Changed 10 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Resolution: fixed
Status: newclosed

Hopefully, this was fixed in r127528.
If not, please feel free to reopen.

comment:6 Changed 10 years ago by m.winkler@…

Resolution: fixed
Status: closedreopened

no it is not

qt5-mac @5.3.2_1 (aqua) Sub-ports: qt5-mac-docs, qt5-mac-sqlite3-plugin, qt5-mac-psql84-plugin, qt5-mac-mysql56-plugin Variants: debug, examples, harfbuzz, tests, universal

# pkg-config --cflags Qt5Core Qt5Widgets Qt5Quick -I/opt/local/Library/Frameworks/Qt5Widgets/Headers -I/opt/local/Library/Frameworks/Qt5Quick/Headers -I/opt/local/Library/Frameworks/Qt5Gui/Headers -I/opt/local/Library/Frameworks/Qt5Qml/Headers -I/opt/local/Library/Frameworks/Qt5Network/Headers -I/opt/local/Library/Frameworks/Qt5Core/Headers

comment:7 Changed 10 years ago by pixilla (Bradley Giesbrecht)

Cc: pixilla@… added

Cc Me!

comment:8 Changed 10 years ago by pavel@…

Cc: pavel@… added

Cc Me!

comment:9 Changed 10 years ago by pavel@…

brew contains the following hackery to fix this issue: https://github.com/Homebrew/homebrew/blob/8d8bca72437591b37907b5ee2f5a1979fbe9c181/Library/Formula/qt5.rb

# The pkg-config files installed suggest that headers can be found in the
# `include` directory. Make this so by creating symlinks from `include` to
# the Frameworks' Headers folders.
Pathname.glob("#{lib}/*.framework/Headers") do |path|
  include.install_symlink path => path.parent.basename(".framework")
end

Looks like a bug in Qt5.

Last edited 10 years ago by pavel@… (previous) (diff)

comment:10 Changed 10 years ago by mkae (Marko Käning)

Cc: rjvbertin@… added

comment:11 Changed 10 years ago by RJVB (René Bertin)

Thanks Marko for pointing me to this issue. Turns out that my port:qt5-mac-devel was affected too. I simply had to remove the post-destroot block that edited the .pc files, because elsewhere in the post-destroot I use the same trick as the HB recipy (and like port:qt4-mac).

Qt5 users can find the files for qt5-mac-devel here: https://trac.macports.org/ticket/46536

comment:12 Changed 9 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Should be fixed in r137229.

comment:13 Changed 9 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Resolution: fixed
Status: reopenedclosed
Note: See TracTickets for help on using tickets.