这个问题有点来回,因为我已经了解了一些关于 unix 系统的 g++ 知识(抱歉,如果我把任何人搞砸了)。
对于我目前正在尝试完成的项目,我想获得 twitcurl使用 Xcode 和 OpenFrameworks 运行。如果有人设法做到这一点,请与我分享这个神秘的壮举。
以下是我坚持的一些事情:
反述他们 wiki 中的一些说明,它对
- 下载库源
- 使用 visual C++ 或 make 构建 twitcurl 库(他们也在他们的 cmake 中)。
- 在您的 Twitter 应用程序中包含 twitcurl.h 和 curl header ,并链接到 twitcurl.lib 和 libcurl.lib/libcurl.dll。
这看起来很简单,但是当我创建库时,没有twitcurl.lib
。生成了一个不同的文件 libtwit.a
,我认为它一定是 OSX 需要的(因为安装将它与 header 一起放在 usr/local/
中)。但是,如果我尝试在 header 中包含 twitcurl.h
并创建一个 twitCurl 对象,那么我会得到更多 undefined symbol
Undefined symbols for architecture i386:
"twitCurl::~twitCurl()", referenced from:
testApp::setup() in testApp.o
"twitCurl::twitCurl()", referenced from:
testApp::setup() in testApp.o
ld: symbol(s) not found for architecture i386
我现在假设 twitcurl 是 64 位的(我尝试添加 CFLAGS=-m32,但它失败了),据我所知,Openframeworks 目前只有 32 位。这意味着 twitcurl 对我来说可能不是一个选择,但同样,如果有人知道如何请告诉我!
提前致谢。
最佳答案
重新编译 twitcurl 可能会做得很好,我上次查看(3 个月前)时,它是用 VC6 编译的,它有自己的 C++ 符号处理方式,因此该库无法正确链接到 g++。
然后你也可以直接导入它,然后不需要担心链接到库,但是在集成到已经构建的系统之前,最好在一个小的演示应用程序中进行测试,这样你知道错误是在您这边还是在其他地方。
此外,对于此类问题,确切 编译器错误比仅仅描述问题更有帮助。
关于c++ - 坚持 twitcurl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7596233/