_fopen$UNIX2003 从 OpenSSL 问题引用
我正在为 iPhone 应用程序使用编译的 OpenSSL。我按照此处的说明 http://www.x2on.de/kontakt/ 进行开发iPhone模拟器上的rsa操作。问题是我在构建项目时遇到此错误:
_fopen$UNIX2003 引用自
libcrypto_i386.a(bss_file.o)中的_BIO_new_file libcrypto_i386.a(bss_file.o) 中的 _file_ctrl 符号 未找到
每次我调用此函数来获取公钥时:
RSA * d2i_RSAPublicKey(RSA **a, const unsigned char **pp, 长长度);
有些地方指出这是版本问题,所以我应该为不同的架构构建 openssl(当前使用 iPhoneOS3.2.sdk),对吗?
感谢您的评论。
I'm using compiled OpenSSL for an iPhone app. I followed the instructions here http://www.x2on.de/kontakt/ so I could develop rsa operation on iPhone simulator. The problem is that I get this error when building the project:
_fopen$UNIX2003 referenced from
_BIO_new_file in libcrypto_i386.a(bss_file.o)
_file_ctrl in libcrypto_i386.a(bss_file.o) Symbol(s)
not found
Every time I invoke this function to get a public key:
RSA * d2i_RSAPublicKey(RSA **a, const unsigned char **pp, long length);
Some places point this is a version problem so I should build openssl for a different architecture (currently using iPhoneOS3.2.sdk), is that right?
Thanks for your comments.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
只需创建新的
*.c
文件并将此代码复制到其中:在这里找到此解决方案:http://helpdesk.metaio.com/questions/35905/undefined-symbols-for-architecture-i386-xcode-6-ios- 8-beta-6/36538
Just create new
*.c
file and copy this code to it:Found this solution here: http://helpdesk.metaio.com/questions/35905/undefined-symbols-for-architecture-i386-xcode-6-ios-8-beta-6/36538
此和这都表明对于 Mac OS X,您的问题是为两个不同的 SDK 编译的两个不同的组件。
您应该尝试清理项目的构建输出 (
make clean
) 并使用相同的编译器/SDK 重建所有内容。This and this both suggest for Mac OS X that your problem is two different components compiled for two different SDKs.
You should try cleaning the project's build output (
make clean
) and rebuilding everything with the same compiler/SDK.