我正在尝试使用 MinGW 在我的 Windows 7 PC 上构建具有 Windows 操作系统视频支持的 PJSIP。
遵循 PJSIP 的官方指南:
http://trac.pjsip.org/repos/wiki/Getting-Started/Autoconf#VideoSupportfor2.0andabove
在没有视频支持的情况下构建 PJSIP 对我来说可以正常工作。
我在 config_site.h 文件中添加了“#define PJMEDIA_HAS_VIDEO 1”
我正在使用以下选项构建 PJSIP:
./configure --with-ffmpeg="/c/PJSIP/ffmpeg"--with-sdl="/c/PJSIP/SDL"
但我对 SDL 有以下编译错误:
c:/PJSIP/SDL/lib/libSDL2main.a(SDL_windows_main.o): In function `console_main':
/Users/slouken/release/SDL/SDL2-2.0.3-source/foo-x86/../src/main/windows/SDL_win
dows_main.c:140: undefined reference to `SDL_main'
collect2.exe: error: ld returned 1 exit status
make[2]: *** [../bin/pjsua2-test-i686-pc-mingw32] Error 1
make[2]: Leaving directory `/c/PJSIP/trunk/pjsip/build'
make[1]: *** [pjsua2-test-i686-pc-mingw32] Error 2
make[1]: Leaving directory `/c/PJSIP/trunk/pjsip/build'
make: *** [all] Error 1
SDL-2.0.2 也有同样的错误。
最佳答案
好的,所以我能够使用 MinGW 64 位构建它。我想你也可以应用我的补丁并为 MinGW 32 位构建它。但是,我主要使用 64 位。我为我的公司维护一个发行版,它是开源的,名为 mingle .我最近在看到您的帖子并决定尝试使用我们的发行版时添加了 pjsip。我能够构建 yasm、sdl、ffmpeg 和 pjsip。 pjsip 确实需要 few small changes一路 build 。欢迎您下载并试用补丁。我还添加了构建过程来混合。如果您在单独构建时遇到问题,您可以 get mingle off github并让它为您构建组件和所有依赖项。运行setup后,在dos管理模式下运行'setup -b -c',会出现控制台,运行mingle,选择:
mm) Multimedia - codecs, encoders, converters, etc...
Mingle 应该构建所有依赖项,我的意思是“全部”,一直到 pjsip。这需要一段时间。您也可以download our distribution预先构建了依赖项,但它非常大。如果您有快速连接,它可以节省时间。我希望这会有所帮助。
关于video - 在 Windows 7 上使用 MinGW 构建具有视频支持的 PJSIP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25137205/