Audio/video stream recording forums
|
Attention Visitor: |
You may have to register or log in before you can post:
|
|
|
Thread Tools | Display Modes |
|
#1
|
|||
|
|||
rtmpdump build problem on Mac OS X using GnuTLSHello,
I'm now trying to build rtmpdump under Mac OS X 10.11.1 El Capitan / Xcode 7.1.1 but yet not succeeded. I'm trying to use GnuTLS for crypto and I'm now thinking this might be succeeded. But in making rtmpdump, I get "ld: library not found for -lgnutls" error when executing "gcc -Wall -o rtmpdump rtmpdump.o -Llibrtmp -lrtmp -lgnutls -lhogweed -lnettle -lgmp -lz" portion. My make command and log is as follows: Code:
$ export TARGET ="/Users/roushi/Desktop/RTMPDump_Test" $ make SYS=darwin CRYPTO=GNUTLS SHARED=no INC=-I${TARGET}/include gcc -Wall -I/Users/roushi/Desktop/RTMPDump_Test/include -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_GNUTLS -O2 -c -o rtmp.o rtmp.c gcc -Wall -I/Users/roushi/Desktop/RTMPDump_Test/include -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_GNUTLS -O2 -c -o log.o log.c gcc -Wall -I/Users/roushi/Desktop/RTMPDump_Test/include -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_GNUTLS -O2 -c -o amf.o amf.c gcc -Wall -I/Users/roushi/Desktop/RTMPDump_Test/include -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_GNUTLS -O2 -c -o hashswf.o hashswf.c gcc -Wall -I/Users/roushi/Desktop/RTMPDump_Test/include -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_GNUTLS -O2 -c -o parseurl.o parseurl.c ar rs librtmp.a rtmp.o log.o amf.o hashswf.o parseurl.o ar: creating archive librtmp.a gcc -Wall -I/Users/roushi/Desktop/RTMPDump_Test/include -DRTMPDUMP_VERSION=\"v2.4\" -O2 -c -o rtmpdump.o rtmpdump.c gcc -Wall -o rtmpdump rtmpdump.o -Llibrtmp -lrtmp -lgnutls -lhogweed -lnettle -lgmp -lz ld: library not found for -lgnutls clang: error: linker command failed with exit code 1 (use -v to see invocation) make: *** [rtmpdump] Error 1 Code:
INC=-I${TARGET}/include I'd like to use GnuTLS because OS X no longer provide header file of OpenSSL. Please help me!! |
#2
|
|||
|
|||
Re: rtmpdump build problem on Mac OS X using GnuTLSYou should use XCFLAGS to pass the compiler options and XLDFLAGS to pass the linker options. Try adding the following to your make command and it may fix your problem.
Code:
XCFLAGS="-I/path/to/gnutls/headers" XLDFLAGS="-L/path/to/libgnutls.a |
#3
|
|||
|
|||
Re: rtmpdump build problem on Mac OS X using GnuTLSKSV-san, Thank you for reply!
I thought that XCFLAGS and XLDFLAGS should be directory. So I tried: Code:
export TARGET ="/Users/roushi/Desktop/RTMPDump_Test" make SYS=darwin CRYPTO=GNUTLS SHARED= XCFLAGS=-"I${TARGET}/include" XLDFLAGS="-L/${TARGET}/lib" Code:
gcc -Wall -I/Users/roushi/Desktop/RTMPDump_Test/include -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_GNUTLS -O2 -c -o rtmp.o rtmp.c gcc -Wall -I/Users/roushi/Desktop/RTMPDump_Test/include -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_GNUTLS -O2 -c -o log.o log.c gcc -Wall -I/Users/roushi/Desktop/RTMPDump_Test/include -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_GNUTLS -O2 -c -o amf.o amf.c gcc -Wall -I/Users/roushi/Desktop/RTMPDump_Test/include -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_GNUTLS -O2 -c -o hashswf.o hashswf.c gcc -Wall -I/Users/roushi/Desktop/RTMPDump_Test/include -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_GNUTLS -O2 -c -o parseurl.o parseurl.c ar rs librtmp.a rtmp.o log.o amf.o hashswf.o parseurl.o ar: creating archive librtmp.a gcc -Wall -I/Users/roushi/Desktop/RTMPDump_Test/include -DRTMPDUMP_VERSION=\"v2.4\" -O2 -c -o rtmpdump.o rtmpdump.c gcc -Wall -L//Users/roushi/Desktop/RTMPDump_Test/lib -o rtmpdump rtmpdump.o -Llibrtmp -lrtmp -lgnutls -lhogweed -lnettle -lgmp -lz Undefined symbols for architecture x86_64: "_iconv", referenced from: __gnutls_ucs2_to_utf8 in libgnutls.a(system.o) "_iconv_close", referenced from: __gnutls_ucs2_to_utf8 in libgnutls.a(system.o) "_iconv_open", referenced from: __gnutls_ucs2_to_utf8 in libgnutls.a(system.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: *** [rtmpdump] Error 1 |
#4
|
|||
|
|||
Re: rtmpdump build problem on Mac OS X using GnuTLSI googled the word "_iconv", referenced from:" and found the answer. (This page is written in Japanese)
I added "-liconv" to XLDFLAGS. So make statement is: Code:
make SYS=darwin CRYPTO=GNUTLS SHARED= XCFLAGS="-I${TARGET}/include" XLDFLAGS="-L/${TARGET}/lib -liconv" Install: Code:
make install prefix=${TARGET} CRYPTO=GNUTLS SHARED= Last edited by xanadu6291 : 12-05-2015 at 03:02 AM. Reason: Correction of install statement |
#5
|
|||
|
|||
Re: rtmpdump build problem on Mac OS X using GnuTLSQuote:
But even in this case, you need "SHARED=" to build rtmpdump correctly. |
Tags: build, gnutls, mac os x, rtmpdump |
Thread Tools | |
Display Modes | |
|
|