--libs error with Qt on Mac OS X #47

Closed
opened 2013-03-08 01:12:40 +00:00 by ghost · 1 comment
ghost commented 2013-03-08 01:12:40 +00:00 (Migrated from github.com)

I run into the following problem with pkgconf, when build gnuplot with Qt bindings on Mac OS X. The build process failed with pkgconf but not with pkgconfig.

I will be glad to help if you need more information or detail.

Here is the output of pkgconf:

    $ pkg-config --libs QtCore
    -F/myprefix/usr/lib/qt4 -framework QtCore
    $ pkg-config --libs QtGui
    QtGui -F/myprefix/usr/lib/qt4 -framework QtCore

And the output of pkgconfig:

    $ pkg-config --libs QtCore
    -F/myprefix/usr/lib/qt4 -framework QtCore
    $ pkg-config --libs QtGui
    -F/muprefix/usr/lib/qt4 -framework QtGui -F/myprefix/usr/lib/qt4 -framework QtCore

Here are the content of the two related .pc files:

    $ cat /myprefix/usr/lib/pkgconfig/QtCore.pc
    prefix=/myprefix/usr
    exec_prefix=${prefix}
    libdir=${prefix}/lib/qt4
    includedir=${prefix}/include/qt4/QtCore
    qt_config=lex yacc warn_on uic resources sdk rez release ReleaseBuild Release build_pass qt warn_on release incremental global_init_link_order lib_version_first plugin_with_soname absolute_library_soname link_prl def_files_disabled exceptions no_mocdepend release stl qt_framework x86_64 release shared dll largefile stl mmx 3dnow sse sse2 sse3 ssse3 sse4_1 sse4_2 x86_64 absolute_library_soname dylib create_prl link_prl depend_includepath QTDIR_build nostrip release ReleaseBuild Release build_pass qt warn_on depend_includepath qmake_cache target_qt debug_and_release hide_symbols lib_bundle qt_no_framework_direct_includes qt_framework explicitlib create_pc create_libtool explicitlib release ReleaseBuild Release build_pass objective_c x86_64 no_autoqmake moc thread shared dll
    moc_location=${prefix}/bin/moc
    uic_location=${prefix}/bin/uic
    rcc_location=${prefix}/bin/rcc
    lupdate_location=${prefix}/bin/lupdate
    lrelease_location=${prefix}/bin/lrelease

    Name: Qtcore
    Description: Qtcore Library
    Version: 4.8.4
    Libs: -F${libdir} -framework QtCore
    Libs.private: -F/myprefix/usr/lib/qt4 -L/myprefix/usr/lib/qt4  -lgthread-2.0 -lglib-2.0 -lintl -L/myprefix/usr/lib/qt4 -lz -lm -framework ApplicationServices -framework CoreFoundation -framework Security
    Cflags: -DQT_SHARED -I/myprefix/usr/include/qt4 -I${includedir}
    $ cat /myprefix/usr/lib/pkgconfig/QtGui.pc
    prefix=/myprefix/usr
    exec_prefix=${prefix}
    libdir=${prefix}/lib/qt4
    includedir=${prefix}/include/qt4/QtGui
    qt_config=lex yacc warn_on uic resources sdk rez release ReleaseBuild Release build_pass qt warn_on release incremental global_init_link_order lib_version_first plugin_with_soname absolute_library_soname link_prl def_files_disabled exceptions no_mocdepend release stl qt_framework x86_64 release shared dll largefile stl mmx 3dnow sse sse2 sse3 sse4_1 sse4_2 x86_64 absolute_library_soname dylib create_prl link_prl depend_includepath QTDIR_build nostrip release ReleaseBuild Release build_pass qt warn_on depend_includepath qmake_cache target_qt debug_and_release hide_symbols lib_bundle qt_no_framework_direct_includes qt_framework explicitlib create_pc create_libtool explicitlib release ReleaseBuild Release build_pass objective_c x86_64 no_autoqmake moc thread shared dll
    moc_location=/myprefix/usr/bin/moc
    uic_location=/myprefix/usr/bin/uic
    rcc_location=/myprefix/usr/bin/rcc
    lupdate_location=/myprefix/usr/bin/lupdate
    lrelease_location=/myprefix/usr/bin/lrelease

    Name: Qtgui
    Description: Qtgui Library
    Version: 4.8.4
    Libs: -F${libdir} -framework QtGui
    Libs.private: -F/myprefix/gentoo/usr/lib/qt4 -L/myprefix/usr/lib/qt4 -F/myprefix/usr/lib/qt4 -L/myprefix/usr/lib/qt4 -framework QtCore -F/myprefix/usr/lib/qt4 -lgthread-2.0 -lglib-2.0 -lintl -framework Carbon -lz -framework AppKit -lpng -lz
    Cflags: -DQT_SHARED -I/myprefix/usr/include/qt4 -I${includedir}
    Requires: QtCore
I run into the following problem with pkgconf, when build gnuplot with Qt bindings on Mac OS X. The build process failed with pkgconf but not with pkgconfig. I will be glad to help if you need more information or detail. Here is the output of pkgconf: ``` $ pkg-config --libs QtCore -F/myprefix/usr/lib/qt4 -framework QtCore $ pkg-config --libs QtGui QtGui -F/myprefix/usr/lib/qt4 -framework QtCore ``` And the output of pkgconfig: ``` $ pkg-config --libs QtCore -F/myprefix/usr/lib/qt4 -framework QtCore $ pkg-config --libs QtGui -F/muprefix/usr/lib/qt4 -framework QtGui -F/myprefix/usr/lib/qt4 -framework QtCore ``` Here are the content of the two related .pc files: ``` $ cat /myprefix/usr/lib/pkgconfig/QtCore.pc prefix=/myprefix/usr exec_prefix=${prefix} libdir=${prefix}/lib/qt4 includedir=${prefix}/include/qt4/QtCore qt_config=lex yacc warn_on uic resources sdk rez release ReleaseBuild Release build_pass qt warn_on release incremental global_init_link_order lib_version_first plugin_with_soname absolute_library_soname link_prl def_files_disabled exceptions no_mocdepend release stl qt_framework x86_64 release shared dll largefile stl mmx 3dnow sse sse2 sse3 ssse3 sse4_1 sse4_2 x86_64 absolute_library_soname dylib create_prl link_prl depend_includepath QTDIR_build nostrip release ReleaseBuild Release build_pass qt warn_on depend_includepath qmake_cache target_qt debug_and_release hide_symbols lib_bundle qt_no_framework_direct_includes qt_framework explicitlib create_pc create_libtool explicitlib release ReleaseBuild Release build_pass objective_c x86_64 no_autoqmake moc thread shared dll moc_location=${prefix}/bin/moc uic_location=${prefix}/bin/uic rcc_location=${prefix}/bin/rcc lupdate_location=${prefix}/bin/lupdate lrelease_location=${prefix}/bin/lrelease Name: Qtcore Description: Qtcore Library Version: 4.8.4 Libs: -F${libdir} -framework QtCore Libs.private: -F/myprefix/usr/lib/qt4 -L/myprefix/usr/lib/qt4 -lgthread-2.0 -lglib-2.0 -lintl -L/myprefix/usr/lib/qt4 -lz -lm -framework ApplicationServices -framework CoreFoundation -framework Security Cflags: -DQT_SHARED -I/myprefix/usr/include/qt4 -I${includedir} ``` ``` $ cat /myprefix/usr/lib/pkgconfig/QtGui.pc prefix=/myprefix/usr exec_prefix=${prefix} libdir=${prefix}/lib/qt4 includedir=${prefix}/include/qt4/QtGui qt_config=lex yacc warn_on uic resources sdk rez release ReleaseBuild Release build_pass qt warn_on release incremental global_init_link_order lib_version_first plugin_with_soname absolute_library_soname link_prl def_files_disabled exceptions no_mocdepend release stl qt_framework x86_64 release shared dll largefile stl mmx 3dnow sse sse2 sse3 sse4_1 sse4_2 x86_64 absolute_library_soname dylib create_prl link_prl depend_includepath QTDIR_build nostrip release ReleaseBuild Release build_pass qt warn_on depend_includepath qmake_cache target_qt debug_and_release hide_symbols lib_bundle qt_no_framework_direct_includes qt_framework explicitlib create_pc create_libtool explicitlib release ReleaseBuild Release build_pass objective_c x86_64 no_autoqmake moc thread shared dll moc_location=/myprefix/usr/bin/moc uic_location=/myprefix/usr/bin/uic rcc_location=/myprefix/usr/bin/rcc lupdate_location=/myprefix/usr/bin/lupdate lrelease_location=/myprefix/usr/bin/lrelease Name: Qtgui Description: Qtgui Library Version: 4.8.4 Libs: -F${libdir} -framework QtGui Libs.private: -F/myprefix/gentoo/usr/lib/qt4 -L/myprefix/usr/lib/qt4 -F/myprefix/usr/lib/qt4 -L/myprefix/usr/lib/qt4 -framework QtCore -F/myprefix/usr/lib/qt4 -lgthread-2.0 -lglib-2.0 -lintl -framework Carbon -lz -framework AppKit -lpng -lz Cflags: -DQT_SHARED -I/myprefix/usr/include/qt4 -I${includedir} Requires: QtCore ```

I see what is happening here. We need special handling for -framework.

I will fix it in 0.8.13.

I see what is happening here. We need special handling for `-framework`. I will fix it in 0.8.13.
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: ariadne/pkgconf#47
There is no content yet.