• 5853阅读
  • 4回复

[提问]mac上Qt使用Carbon库 [复制链接]

上一主题 下一主题
离线jakubfong
 

只看楼主 倒序阅读 楼主  发表于: 2015-04-01
mac os x 10.10.1,Qt 5.3.1(qt-opensource-mac-x64-clang-5.3.1.dmg),xcode6
现在代码里需要使用Carbon库的一些函数(GetKeys()等),所以.pro里添加了"LIBS += -framework Carbon",.cpp里添加了"#include <Carbon/Carbon.h>"
编译ok,但在链接时报错,Undefined symbols for architecture x86_64:
  "_GetKeys", referenced from:
my_get_keys() in libxxx.a(xxx.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)


有高手知道原因吗 谢谢
离线toby520

只看该作者 1楼 发表于: 2015-04-02
You should included the following libs like this:

LIBS+=/System/Library/Frameworks/Carbon.framework/Carbon
LIBS+=/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation

of course ,you can modified it in your mac framework path.
QtQML多多指教开发社区 http://qtclub.heilqt.com
将QtCoding进行到底
关注移动互联网,关注金融
开发跨平台客户端,服务于金融行业
专业定制界面
群号:312125701   373955953(qml控件定做)
离线jakubfong

只看该作者 2楼 发表于: 2015-04-02
回 toby520 的帖子
toby520:You should included the following libs like this:
LIBS+=/System/Library/Frameworks/Carbon.framework/Carbon
LIBS+=/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
....... (2015-04-02 09:42)

原来是在libxxx.pro里添加的-framework Carbon
现在修改myapp.pro,添加
LIBS+=/System/Library/Frameworks/Carbon.framework/Carbon
LIBS+=/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
之后,可以了  多谢


看来跟库的路径有关 具体原因是什么 有Qt或Apple的文档讲这方面的事情吗  谢谢
离线toby520

只看该作者 3楼 发表于: 2015-04-02
好就好,我也是网上查阅的
QtQML多多指教开发社区 http://qtclub.heilqt.com
将QtCoding进行到底
关注移动互联网,关注金融
开发跨平台客户端,服务于金融行业
专业定制界面
群号:312125701   373955953(qml控件定做)
离线jakubfong

只看该作者 4楼 发表于: 2015-04-02
回 toby520 的帖子
toby520:好就好,我也是网上查阅的[表情]  (2015-04-02 18:04) 

呵呵 我google很久都没有找到 你是在哪找到的 用的什么关键词
快速回复
限100 字节
 
上一个 下一个