我正在尝试安装一个可以用来访问亚马逊S3服务的库(我只需要能够在那里上传文件)。代码需要使用C++,因为它将作为我正在开发的应用程序的一部分捆绑在一起。
我正在尝试使用Bryan Ischo的库,位于这里:http://libs3.ischo.com.s3.amazonaws.com/index.html
不过,我还是遇到了一些安装问题。我将GNUMakefile.macosx改为GNUMakefile,然后运行"sudo make install",因为我是在Mac上进行开发的。然后我制作了一个测试.cpp文件。
#include <libs3.h>
...a few other things...
int main() {
cout << "Hello World!" << endl;
S3_initialize(NULL, S3_INIT_ALL);
return 0;
}我想要做的就是能够初始化库,因为这是他的API告诉我要做的。然而,我得到了这个错误:
Undefined symbols:
"_S3_initialize", referenced from:
_main in ccRcG0yS.o
ld: symbol(s) not found我需要一些帮助,要么修复我的libs3安装,要么获取一些通过C++访问S3的提示。
谢谢!
发布于 2011-07-19 12:39:13
您的测试应用程序未链接到libs3。您需要将其添加到链接器标志,例如-ls3 (如果库是libs3.so/a)
发布于 2014-07-29 06:28:04
在mac上使用Byan Ischo的库执行C文件时,我遇到了类似的问题,在能够成功运行测试文件之前,我必须添加更多的参数。
如何在mac上编译libs3?
sudo make DESTDIR=/opt/local install如何编译test.c?
cc test.c -I/opt/local/include -L/opt/local/lib -ls3如何执行a.out?
DYLD_LIBRARY_PATH=/opt/local/lib ./a.outhttps://stackoverflow.com/questions/6742355
复制相似问题