From 93edbf0fb91cb1244f1926f5ddbe9dd62779bb23 Mon Sep 17 00:00:00 2001 From: Lekensteyn Date: Thu, 8 Mar 2012 00:06:42 +0100 Subject: [PATCH] Fix RTSP compile issues and add howto for running it correctly pkg-config is wonderful, but .pc suppliers just have to write correct files... --- Connector_RTSP/Makefile | 8 +++---- Connector_RTSP/compile_remarks.txt | 38 +++++++++++++++++------------- 2 files changed, 25 insertions(+), 21 deletions(-) diff --git a/Connector_RTSP/Makefile b/Connector_RTSP/Makefile index f1db6322..273fd7b0 100644 --- a/Connector_RTSP/Makefile +++ b/Connector_RTSP/Makefile @@ -1,21 +1,21 @@ -SRC = main.cpp ../util/socket.cpp ../util/http_parser.cpp ../util/flv_tag.cpp ../util/amf.cpp +SRC = main.cpp ../util/socket.cpp ../util/http_parser.cpp ../util/flv_tag.cpp ../util/amf.cpp ../util/util.cpp OBJ = $(SRC:.cpp=.o) OUT = Connector_RTSP -INCLUDES = +INCLUDES = $(shell pkg-config --cflags jrtplib) DEBUG = 4 OPTIMIZE = -g CCFLAGS = -Wall -Wextra -funsigned-char $(OPTIMIZE) -DDEBUG=$(DEBUG) CC = $(CROSS)g++ LD = $(CROSS)ld AR = $(CROSS)ar -LIBS = -ljthread -lpthread -ljrtp +LIBS = $(shell pkg-config --libs jrtplib) .SUFFIXES: .cpp .PHONY: clean default default: $(OUT) .cpp.o: $(CC) $(INCLUDES) $(CCFLAGS) $(LIBS) -c $< -o $@ $(OUT): $(OBJ) - $(CC) $(LIBS) -o $(OUT) $(OBJ) + $(CC) -o $(OUT) $(OBJ) $(LIBS) clean: rm -rf $(OBJ) $(OUT) Makefile.bak *~ run-test: $(OUT) diff --git a/Connector_RTSP/compile_remarks.txt b/Connector_RTSP/compile_remarks.txt index 9eb10db9..be943b3d 100644 --- a/Connector_RTSP/compile_remarks.txt +++ b/Connector_RTSP/compile_remarks.txt @@ -1,21 +1,25 @@ -Makefile LIBS: -ljthread -lpthread -ljrtp (al ingesteld) +example for installing to ../usr (use DESTDIR=/tmp, /usr/local or whatever you want) +$ DESTDIR="${PWD%/*}/usr" -alle includes: (al gedaan) +building jthread (as local user, no root required): +$ cd $somedir +$ wget http://research.edm.uhasselt.be/jori/jthread/jthread-1.3.1.tar.gz +$ tar xvf jthread-1.3.1.tar.gz && cd jthread-1.3.1 +$ cmake -DCMAKE_INSTALL_PREFIX:PATH="$DESTDIR" +$ make && make install -in /usr/local/include/jrtplib3/rtpsession.h (lokaal, was via jrtplib's "make install") -en /usr/local/include/jrtplib3/rtpudpv4transmitter.h (lokaal, was via jrtplib's "make install") -verander #include naar #include +AFTER building jthread +$ cd $somedir +$ wget http://research.edm.uhasselt.be/jori/jrtplib/jrtplib-3.9.1.tar.bz2 +$ tar xf jrtplib-3.9.1.tar.bz2 && cd jrtplib-3.9.1 +$ cmake -DCMAKE_INSTALL_PREFIX:PATH="$DESTDIRr" -DADDITIONAL_INCLUDE_DIRS:STRING="$DESTDIR/include" +$ make -j8 +Modify $DESTDIR/usr/lib/pkgconfig/jrtplib.pc such that it looks like (subst $DESTDIR accordingly): + Libs: -L$DESTDIR/lib/ -ljrtp -ljthread -lpthread +$ make install +building Connector_RTSP: +$ PKG_CONFIG_PATH=$DESTDIR/lib/pkgconfig make -anders geen compiles... - - -Vervolgens: bij het runnen van ./Connector_RTSP: -./Connector_RTSP: error while loading shared libraries: libjrtp-3.7.1.so: cannot open shared object -file: No such file or directory - - - - -dus: ik kan op het moment genoeg coden, en zorgen dat het compiled, maar ook daadwerkelijk draaien -wordt lastig... Enige ideeen? +Running Connector_RTSP: +$ LD_LIBRARY_PATH="$DESTDIR/lib:$LD_LIBRARY_PATH" ./Connector_RTSP