ports/180283: [patch update] multimedia/rtmpdump shared lib issue...
Kurt Jaeger
fbsd-ports at opsec.eu
Thu Jul 4 18:50:01 UTC 2013
>Number: 180283
>Category: ports
>Synopsis: [patch update] multimedia/rtmpdump shared lib issue...
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: update
>Submitter-Id: current-users
>Arrival-Date: Thu Jul 04 18:50:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator: Kurt Jaeger
>Release: FreeBSD 9.1-RELEASE amd64
>Organization:
-
>Environment:
System: FreeBSD fa9.opsec.eu 9.1-RELEASE FreeBSD 9.1-RELEASE #0 r243825: Tue Dec 4 09:23:10 UTC 2012 root at farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC amd64
>Description:
While building rtmpdump, the librtmp.so shared lib is build and
linked with /usr/lib/libssl.so.6, even if rtmpdump is build and
linked against /usr/local/lib/libssl.so.8 (same with libcrypto).
Example:
/usr/local/bin/ld: warning: libssl.so.6, needed by librtmp/librtmp.so, may confl
ict with libssl.so.8
Here is the full build log:
------------
# make
===> License GPLv2 accepted by the user
===> Fetching all distfiles required by rtmpdump-2.4_1 for building
===> Extracting for rtmpdump-2.4_1
=> SHA256 Checksum OK for rtmpdump-2.4.tar.gz.
===> Patching for rtmpdump-2.4_1
===> Applying FreeBSD patches for rtmpdump-2.4_1
===> rtmpdump-2.4_1 depends on file: /usr/local/lib/libcrypto.so.8 - found
===> rtmpdump-2.4_1 depends on executable: pkgconf - found
===> Configuring for rtmpdump-2.4_1
===> Building for rtmpdump-2.4_1
clang -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_OPENSSL -O2 -fPIC -c rtmp.c
clang -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_OPENSSL -O2 -fPIC -c log.c
clang -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_OPENSSL -O2 -fPIC -c amf.c
In file included from amf.c:33:
[1m./bytes.h:74:2: [0m[0;1;35mwarning: [0m[1m"Float word order not defined, assuming the same as
byte order!" [-W#warnings][0m
#warning "Float word order not defined, assuming the same as byte order!"
[0;1;32m ^
[0m1 warning generated.
clang -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_OPENSSL -O2 -fPIC -c hashswf.c
clang -DRTMPDUMP_VERSION=\"v2.4\" -DUSE_OPENSSL -O2 -fPIC -c parseurl.c
ar rs librtmp.a rtmp.o log.o amf.o hashswf.o parseurl.o
ar: creating librtmp.a
clang -shared -Wl,-soname,librtmp.so.0 -o librtmp.so.0 rtmp.o log.o amf.o hashswf.o parseurl.o -lssl -lcrypto -lz
ln -sf librtmp.so.0 librtmp.so
clang -O2 -pipe -I/usr/local/include -fno-strict-aliasing -DRTMPDUMP_VERSION=\"v2.4\" -c rtmpdump.c
[1mrtmpdump.c:334:23: [0m[0;1;35mwarning: [0m[1mcomparison of unsigned expression < 0 is always
false [-Wtautological-compare][0m
if (prevTagSize < 0 || prevTagSize > size - 4 - 13)
[0;1;32m ~~~~~~~~~~~ ^ ~
[0m[1mrtmpdump.c:397:14: [0m[0;1;35mwarning: [0m[1mcomparison of unsigned expression < 0 is always
false [-Wtautological-compare][0m
if (*dSeek < 0)
[0;1;32m ~~~~~~ ^ ~
[0m2 warnings generated.
clang -Wl,-rpath=/usr/local/lib -L/usr/local/lib -o rtmpdump rtmpdump.o -Llibrtmp -lrtmp -lssl -lcrypto -lz
/usr/local/bin/ld: warning: libssl.so.6, needed by librtmp/librtmp.so, may conflict with libssl.so.8
/usr/local/bin/ld: warning: libcrypto.so.6, needed by librtmp/librtmp.so, may conflict with libcrypto.so.8
clang -O2 -pipe -I/usr/local/include -fno-strict-aliasing -DRTMPDUMP_VERSION=\"v2.4\" -c rtmpgw.c
clang -O2 -pipe -I/usr/local/include -fno-strict-aliasing -DRTMPDUMP_VERSION=\"v2.4\" -c thread.c
clang -Wl,-rpath=/usr/local/lib -L/usr/local/lib -o rtmpgw rtmpgw.o thread.o -pthread -Llibrtmp -lrtmp -lssl -lcrypto -lz
/usr/local/bin/ld: warning: libssl.so.6, needed by librtmp/librtmp.so, may conflict with libssl.so.8
/usr/local/bin/ld: warning: libcrypto.so.6, needed by librtmp/librtmp.so, may conflict with libcrypto.so.8
clang -O2 -pipe -I/usr/local/include -fno-strict-aliasing -DRTMPDUMP_VERSION=\"v2.4\" -c rtmpsrv.c
clang -Wl,-rpath=/usr/local/lib -L/usr/local/lib -o rtmpsrv rtmpsrv.o thread.o -pthread -Llibrtmp -lrtmp -lssl -lcrypto -lz
/usr/local/bin/ld: warning: libssl.so.6, needed by librtmp/librtmp.so, may conflict with libssl.so.8
/usr/local/bin/ld: warning: libcrypto.so.6, needed by librtmp/librtmp.so, may conflict with libcrypto.so.8
clang -O2 -pipe -I/usr/local/include -fno-strict-aliasing -DRTMPDUMP_VERSION=\"v2.4\" -c rtmpsuck.c
clang -Wl,-rpath=/usr/local/lib -L/usr/local/lib -o rtmpsuck rtmpsuck.o thread.o -pthread -Llibrtmp -lrtmp -lssl -lcrypto -lz
/usr/local/bin/ld: warning: libssl.so.6, needed by librtmp/librtmp.so, may conflict with libssl.so.8
/usr/local/bin/ld: warning: libcrypto.so.6, needed by librtmp/librtmp.so, may conflict with libcrypto.so.8
---------
>How-To-Repeat:
see above
>Fix:
Using this fix, it should build in both cases (with ports openssl or
without) with the correct shared lib and no warnings.
diff -r -u -N multimedia/rtmpdump/files/patch-librtmp-Makefile /usr/home/pi/myp/multimedia/rtmpdump/files/patch-librtmp-Makefile
--- multimedia/rtmpdump/files/patch-librtmp-Makefile 2013-01-01 15:32:33.000000000 +0100
+++ /usr/home/pi/myp/multimedia/rtmpdump/files/patch-librtmp-Makefile 2013-07-04 20:39:32.000000000 +0200
@@ -1,5 +1,5 @@
---- librtmp/Makefile.orig 2011-07-12 09:24:33.000000000 +0900
-+++ librtmp/Makefile 2012-01-20 10:06:27.000000000 +0900
+--- librtmp/Makefile-tmpf 2013-07-04 20:38:27.000000000 +0200
++++ librtmp/Makefile 2013-07-04 20:38:40.000000000 +0200
@@ -1,19 +1,21 @@
VERSION=v2.4
@@ -26,7 +26,7 @@
SYS=posix
CRYPTO=OPENSSL
-@@ -23,7 +25,7 @@
+@@ -23,13 +25,13 @@
DEF_GNUTLS=-DUSE_GNUTLS
DEF_=-DNO_CRYPTO
REQ_GNUTLS=gnutls
@@ -35,6 +35,13 @@
LIBZ=-lz
LIBS_posix=
LIBS_darwin=
+ LIBS_mingw=-lws2_32 -lwinmm -lgdi32
+ LIB_GNUTLS=-lgnutls -lgcrypt $(LIBZ)
+-LIB_OPENSSL=-lssl -lcrypto $(LIBZ)
++LIB_OPENSSL=-L/usr/local/lib -lssl -lcrypto $(LIBZ)
+ LIB_POLARSSL=-lpolarssl $(LIBZ)
+ PRIVATE_LIBS=$(LIBS_$(SYS))
+ CRYPTO_LIB=$(LIB_$(CRYPTO)) $(PRIVATE_LIBS)
@@ -67,7 +69,8 @@
DEF=-DRTMPDUMP_VERSION=\"$(VERSION)\" $(CRYPTO_DEF) $(XDEF)
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list