首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在mac osx中编译libqxt

在mac osx中编译libqxt
EN

Stack Overflow用户
提问于 2012-08-10 05:25:44
回答 2查看 908关注 0票数 5

我有最新的(git)版本的libqxt。我运行了./configure,它工作得很好,然后make失败了,并显示以下错误:

代码语言:javascript
复制
linking ../../lib/QxtWidgets.framework/QxtWidgets
ld: warning: directory not found for option '-L/usr/local/pgsql/lib'
ld: warning: directory not found for option '-L/tmp/qt-stuff-85167/source/qt-everywhere-opensource-src-4.8.1/Desktop/Qt/4.8.1/gcc/lib'
ld: warning: directory not found for option '-F/tmp/qt-stuff-85167/source/qt-everywhere-opensource-src-4.8.1/Desktop/Qt/4.8.1/gcc/lib'
Undefined symbols for architecture x86_64:
  "_CGSGetWindowProperty", referenced from:
      QxtWindowSystem::windowTitle(long)   in qxtwindowsystem_mac.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
make[1]: *** [../../lib/QxtWidgets.framework/QxtWidgets] Error 1
make: *** [sub-src-widgets-install_subtargets] Error 2

如果重要的话,我正在使用OSX Mountain Lion。

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2012-08-10 18:44:27

Qxt似乎使用了一些在Mountain Lion中被删除的私有Mac OS X API。CGSGetWindowProperty在之前的Mac版本中没有文档,所以我猜使用它是不可靠的。

票数 4
EN

Stack Overflow用户

发布于 2013-01-18 04:53:51

作为一个老生常谈的修复,你可以删除CGSGetWindowProperty属性调用- Qxt将被编译,但当然QxtWindowSystem::windowTitle将不能正常工作。

代码语言:javascript
复制
diff --git a/src/widgets/mac/qxtwindowsystem_mac.cpp b/src/widgets/mac/qxtwindowsystem_mac.cpp
index 63cab38..de4a89c 100644
--- a/src/widgets/mac/qxtwindowsystem_mac.cpp
+++ b/src/widgets/mac/qxtwindowsystem_mac.cpp
@@ -89,11 +89,7 @@ QString QxtWindowSystem::windowTitle(WId window)
     // most of CoreGraphics private definitions ask for CGSValue as key but since
     // converting strings to/from CGSValue was dropped in 10.5, I use CFString, which
     // apparently also works.
-    err = CGSGetWindowProperty(connection, window, (CGSValue)CFSTR("kCGSWindowTitle"), &windowTitle);
-    if (err != noErr) return QString();
-
-    // this is UTF8 encoded
-    return QCFString::toQString((CFStringRef)windowTitle);
+    return QString();
 }

 QRect QxtWindowSystem::windowGeometry(WId window)

为了便于将来参考,您可以监控this issue in libqxt repository

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11892171

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档