在OSX10.9上编译PJSUA

2024-10-02 04:19:00 发布

您现在位置:Python中文网/ 问答频道 /正文

第一次使用stackoverflow时,请告诉我,如果我做错了什么!在

我想使用PJSIP 2.1s python模块(包装器)。我试过了:

  1. 阅读documentation。在
  2. 相应地检查要求。这是我的设置:
    • 苹果操作系统X 10.9(小牛)
    • GNU制造3.81
    • binutils 2.23.2(可能通过Macports。。不太确定)
    • 苹果LLVM 5.0
  3. 下载v2.1:pjproject-2.1。焦油bz2把它提取到我的主目录中。在
  4. 在这个终端运行。在

当谈到这行代码时(我相信是在make中):gcc -o ../bin/pjmedia-test-i386-apple-darwin13.0.0,下面的错误会直接出现在我的脸上:/

Undefined symbols for architecture x86_64:
"_aes_icm_advance_ismacryp", referenced from:
_aes_icm_encrypt_ismacryp in libsrtp-i386-apple-darwin13.0.0.a(aes_icm.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [../bin/pjmedia-test-i386-apple-darwin13.0.0] Error 1
make[1]: *** [pjmedia-test] Error 2
make: *** [all] Error 1

然后脚本中止。在

你有什么建议吗?可能是什么问题,或者如何避免它?如果有人帮忙我会很高兴的!在

强制gcc编译到32位有帮助吗?在


Tags: test苹果appleformakebinicmerror
1条回答
网友
1楼 · 发布于 2024-10-02 04:19:00

我不确定,如果这能解决你的问题,但对我来说,它奏效了:

Disable SRTP (Secure Real-Time Transport Protocol)

将以下内容添加到文件pjlib/include/pj/config_site.h

#define PJMEDIA_HAS_SRTP 0

再次制造-应该可以工作。在

正确的解决方案是重新实现c代码中丢失的结构。也许最好等一个补丁。在

相关问题 更多 >

    热门问题