오디오 방송 데이터 전송에 사용될 SRT opensource의 iOS용 빌드 과정 설명입니다.
Step-by-step guide
미리 준비할 사항
- Xcode 설치
- 터미널에서 xcode-select-p 로 터미널 도구 설치되어 있는지 확인하고 설치 되어 있지 않으면 설치
- Homebrew 설치
- Homebrew로 CMake, pkg-config 설치
brew install cmake brew install pkg-config |
OpenSSL 빌드
- SRT 빌드에 사용될 OpenSSL for iPhone 프로젝트를 다운로드 합니다.(https://github.com/x2on/OpenSSL-for-iPhone)
- Archs 별로 빌드합니다.
.
/build-libssl
.sh --archs=
"arm64"
SRT code 빌드
- SRT 프로젝트를 다운로드 합니다.(https://github.com/Haivision/srt)
- Archs 별로 빌드를 하기 위해 환경변수를 설정합니다.
export
IOS_OPENSSL="/Users/byungchenmoon/Source/OpenSSL-for-iPhone/bin/iPhoneOS12.1-arm64.sdk"
export
LDFLAGS="-L/Users/byungchenmoon/Source/OpenSSL-for-iPhone/bin/iPhoneOS12.1-arm64.sdk/lib"
export
CPPFLAGS="-I/Users/byungchenmoon/Source/OpenSSL-for-iPhone/bin/iPhoneOS12.1-arm64.sdk/include"
export
PKG_CONFIG_PATH="/Users/byungchenmoon/Source/OpenSSL-for-iPhone/bin/iPhoneOS12.1-arm64.sdk/lib/pkgconfig"
- 이제 iOS 용 OpenSSL 라이브러리 및 툴체인 파일 경로를 제공하는 SRT를 빌드 할 수 있습니다.
./configure
--cmake-prefix-path=$IOS_OPENSSL --cmake-toolchain-file=scripts/iOS.cmake
make
Install path 변경
install_name_tool - id "@executable_path/Frameworks/libsrt.1.3.1.dylib" libsrt.1.3.1.dylib |
각 Archs별 Lib를 하나로 묶기
lipo -create -output libsrt.1.3.1.dylib ~ /srt_build/arm64/srt/libsrt .1.3.1.dylib ~ /srt_build/armv7/srt/libsrt .1.3.1.dylib ~ |