Compiling rtmpdump on Windows
Hi All, There are half a dozen guides online for compiling rtmpdump on Windows but most are many years old and don't seem to be relevant. From what I've pieced together from them though I have managed to "compile" the latest version of rtmpdump but a) get some warnings during make, which I'm not sure I should be b) get either DNS errors or "failed to create socket" errors when I try to use my build. When there are no such problems when I use the last windows release. I want to compile the latest code base as the last windows release seems to be quite a bit behind and I'm getting what appears to be buffering errors which may be fixed/addressed in newer commits. I'm not great with c++ builds - I've got mingw / msys and also cygwin all installed with a variety of library dependency downloaded. Anyway my build output is as below. If anyone can give me pointers (or is willing to write a fresh/current guide for Windows 10) it would be appreciated. $ make SYS=mingw
make[1]: Entering directory '/cygdrive/c/Repo/rtmpdump/librtmp' gcc -Wall -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_OPENSSL -O2 -fPIC -c -o rtmp.o rtmp.c rtmp.c:1:0: warning: -fPIC ignored for target (all code is position independent) /* ^ rtmp.c: In function ‘RTMP_ReadPacket’: rtmp.c:3555:7: warning: variable ‘didAlloc’ set but not used [-Wunused-but-set-variable] int didAlloc = FALSE; ^ gcc -Wall -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_OPENSSL -O2 -fPIC -c -o log.o log.c log.c:1:0: warning: -fPIC ignored for target (all code is position independent) /* ^ gcc -Wall -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_OPENSSL -O2 -fPIC -c -o amf.o amf.c amf.c:1:0: warning: -fPIC ignored for target (all code is position independent) /* ^ In file included from amf.c:33:0: bytes.h:74:2: warning: #warning "Float word order not defined, assuming the same as byte order!" [-Wcpp] #warning "Float word order not defined, assuming the same as byte order!" ^ gcc -Wall -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_OPENSSL -O2 -fPIC -c -o hashswf.o hashswf.c hashswf.c:1:0: warning: -fPIC ignored for target (all code is position independent) /* ^ gcc -Wall -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_OPENSSL -O2 -fPIC -c -o parseurl.o parseurl.c parseurl.c:1:0: warning: -fPIC ignored for target (all code is position independent) /* ^ ar rs librtmp.a rtmp.o log.o amf.o hashswf.o parseurl.o ar: creating librtmp.a gcc -shared -Wl,--out-implib,librtmp.dll.a -o librtmp-1.dll rtmp.o log.o amf.o hashswf.o parseurl.o -lssl -lcrypto -lz -lws2_32 -lwinmm -lgdi32 ln -sf librtmp-1.dll librtmp.dll make[1]: Leaving directory '/cygdrive/c/Repo/rtmpdump/librtmp' gcc -Wall -DRTMPDUMP_VERSION=\"v2.4\" -O2 -c -o rtmpdump.o rtmpdump.c rtmpdump.c: In function ‘main’: rtmpdump.c:727:16: warning: ‘optarg’ redeclared without dllimport attribute: previous dllimport ignored [-Wattributes] extern char *optarg; ^ gcc -Wall -o rtmpdump.exe rtmpdump.o -Llibrtmp -lrtmp -lssl -lcrypto -lz -lws2_32 -lwinmm -lgdi32 gcc -Wall -DRTMPDUMP_VERSION=\"v2.4\" -O2 -c -o rtmpgw.o rtmpgw.c gcc -Wall -o rtmpgw.exe rtmpgw.o thread.o -Llibrtmp -lrtmp -lssl -lcrypto -lz -lws2_32 -lwinmm -lgdi32 gcc -Wall -DRTMPDUMP_VERSION=\"v2.4\" -O2 -c -o rtmpsrv.o rtmpsrv.c gcc -Wall -o rtmpsrv.exe rtmpsrv.o thread.o -Llibrtmp -lrtmp -lssl -lcrypto -lz -lws2_32 -lwinmm -lgdi32 gcc -Wall -DRTMPDUMP_VERSION=\"v2.4\" -O2 -c -o rtmpsuck.o rtmpsuck.c gcc -Wall -o rtmpsuck.exe rtmpsuck.o thread.o -Llibrtmp -lrtmp -lssl -lcrypto -lz -lws2_32 -lwinmm -lgdi32
When I try to run I firstly get this error C:/Repo/rtmpdump/rtmpdump.exe: error while loading shared libraries:
librtmp-1.dll: cannot open shared object file: No such file or directory
When I copy this DLL out of the child folder and into the rtmpdump folder it then seems to work, but then I get unexpected errors If I use a DNS alias: Connecting ...
ERROR: Problem accessing the DNS. DEBUG: Closing connection.
If I use a direct IP: Connecting ...
ERROR: RTMP_Connect0, failed to create socket. Error: 22 DEBUG: Closing connection.
Alternatively if anyone is actively developing still and can provide a new Windows release, that would be appreciated. However I would like to build myself so I can attempt to debug/fix the errors I get. Thanks, Michael.
participants (1)
-
Michael Nye