Hi list,
I'm trying to create an asterisk 1.8 rpm with SRTP.
I found mention of a libsrtp rpm, <http://qutecom.ipex.cz/RPMS/srtp-1.4.4-1.i386.rpm > in these instructions, http://www.voip-info.org/wiki/view/Asterisk+SRTP but it is unreachable (by me, anyway).
The libSRTP source is here, http://srtp.sourceforge.net/download.html.
Has this already been packaged for CentOS 5?
Thanks,
-Bob Beers
On Tue, 12 Oct 2010, Bob Beers wrote:
I'm trying to create an asterisk 1.8 rpm with SRTP.
I found mention of a libsrtp rpm, <http://qutecom.ipex.cz/RPMS/srtp-1.4.4-1.i386.rpm >
first google hit
https://bugzilla.redhat.com/show_bug.cgi?id=509619
I seem to remember another packaging of this code as well
I have placed a variant that builds trivially on CentOS 5 at: srtp-1.4.4-1orc.src.rpm ftp://ftp.owlriver.com/pub/local/ORC/srtp/
-- Russ herrold
---------------------------------
/home/herrold/rpmbuild/SRPMS/srtp-1.4.4-1orc.src.rpm /home/herrold/rpmbuild/RPMS/x86_64/srtp-1.4.4-1orc.x86_64.rpm /home/herrold/rpmbuild/RPMS/x86_64/srtp-debuginfo-1.4.4-1orc.x86_64.rpm /home/herrold/rpmbuild/RPMS/x86_64/srtp-static-1.4.4-1orc.x86_64.rpm /home/herrold/rpmbuild/RPMS/x86_64/srtp-devel-1.4.4-1orc.x86_64.rpm
On Tue, Oct 12, 2010 at 5:52 PM, R P Herrold herrold@owlriver.com wrote:
https://bugzilla.redhat.com/show_bug.cgi?id=509619
I seem to remember another packaging of this code as well
I have placed a variant that builds trivially on CentOS 5 at: srtp-1.4.4-1orc.src.rpm ftp://ftp.owlriver.com/pub/local/ORC/srtp/
-- Russ herrold
/home/herrold/rpmbuild/SRPMS/srtp-1.4.4-1orc.src.rpm /home/herrold/rpmbuild/RPMS/x86_64/srtp-1.4.4-1orc.x86_64.rpm /home/herrold/rpmbuild/RPMS/x86_64/srtp-debuginfo-1.4.4-1orc.x86_64.rpm /home/herrold/rpmbuild/RPMS/x86_64/srtp-static-1.4.4-1orc.x86_64.rpm /home/herrold/rpmbuild/RPMS/x86_64/srtp-devel-1.4.4-1orc.x86_64.rpm
Awesome! Thanks,
-Bob Beers
Reviving this thread as I've discovered RedHat has officially added (a sane) libsrtp package to fedora and RHEL6.
As I'd like to get this onto CentOS5, I've tried to rebuild the source rpm, downloadable here: http://kojipkgs.fedoraproject.org/packages/libsrtp/1.4.4/2.20101004cvs.el6/src/libsrtp-1.4.4-2.20101004cvs.el6.src.rpm
So, of course, I hit a snag trying simply,
$ rpmbuild --rebuild libsrtp-1.4.4-2.20101004cvs.el6.src.rpm Installing libsrtp-1.4.4-2.20101004cvs.el6.src.rpm warning: user mockbuild does not exist - using root warning: group mockbuild does not exist - using root error: unpacking of archive failed on file /home/bbeers/redhat/SOURCES/libsrtp-1.4.4-shared.patch;4d3f3b3c: cpio: MD5 sum mismatch error: libsrtp-1.4.4-2.20101004cvs.el6.src.rpm cannot be installed
Then I found the hint suggesting:
$ rpm -ivh --nomd5 libsrtp-1.4.4-2.20101004cvs.el6.src.rpm
followed by:
$ rpmbuild -bb ~/redhat/SPECS/libsrtp.spec
And progress was made, but the package did not build.
Here is the output of the rpmbuild command:
$ rpmbuild -bb ~/redhat/SPECS/libsrtp.spec Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.75608 + umask 022 + cd /home/bbeers/redhat//BUILD + LANG=C + export LANG + unset DISPLAY + cd /home/bbeers/redhat/BUILD + rm -rf srtp + /usr/bin/bzip2 -dc /home/bbeers/redhat/SOURCES/srtp-1.4.4-20101004cvs.tar.bz2 + tar -xf - + STATUS=0 + '[' 0 -ne 0 ']' + cd srtp ++ /usr/bin/id -u + '[' 503 = 0 ']' ++ /usr/bin/id -u + '[' 503 = 0 ']' + /bin/chmod -Rf a+rX,u+w,g-w,o-w . + echo 'Patch #0 (libsrtp-1.4.4-shared.patch):' Patch #0 (libsrtp-1.4.4-shared.patch): + patch -p1 -b --suffix .shared -s + sed -i 's/\r//g' doc/draft-irtf-cfrg-icm-00.txt + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.28921 + umask 022 + cd /home/bbeers/redhat//BUILD + cd srtp + LANG=C + export LANG + unset DISPLAY + export 'CFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC' + CFLAGS='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC' + CFLAGS='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC' + export CFLAGS + CXXFLAGS='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables' + export CXXFLAGS + FFLAGS='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables' + export FFLAGS ++ find . -name config.guess -o -name config.sub + for i in '$(find . -name config.guess -o -name config.sub)' ++ basename ./config.guess + '[' -f /usr/lib/rpm/redhat/config.guess ']' + /bin/rm -f ./config.guess ++ basename ./config.guess + /bin/cp -fv /usr/lib/rpm/redhat/config.guess ./config.guess `/usr/lib/rpm/redhat/config.guess' -> `./config.guess' + for i in '$(find . -name config.guess -o -name config.sub)' ++ basename ./config.sub + '[' -f /usr/lib/rpm/redhat/config.sub ']' + /bin/rm -f ./config.sub ++ basename ./config.sub + /bin/cp -fv /usr/lib/rpm/redhat/config.sub ./config.sub `/usr/lib/rpm/redhat/config.sub' -> `./config.sub' + ./configure --build=i686-redhat-linux-gnu --host=i686-redhat-linux-gnu --target=i386-redhat-linux-gnu --program-prefix= --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/usr/com --mandir=/usr/share/man --infodir=/usr/share/info --disable-static checking for i686-redhat-linux-gnu-ranlib... no checking for ranlib... ranlib checking for i686-redhat-linux-gnu-gcc... no checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking for a BSD-compatible install... /usr/bin/install -c checking whether byte ordering is bigendian... no checking build system type... i686-redhat-linux-gnu checking host system type... i686-redhat-linux-gnu checking whether to build for Linux kernel context... no checking for /dev/urandom... yes checking which random device to use... /dev/urandom checking how to run the C preprocessor... gcc -E checking for egrep... grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for stdlib.h... (cached) yes checking for unistd.h... (cached) yes checking byteswap.h usability... yes checking byteswap.h presence... yes checking for byteswap.h... yes checking for stdint.h... (cached) yes checking sys/uio.h usability... yes checking sys/uio.h presence... yes checking for sys/uio.h... yes checking for inttypes.h... (cached) yes checking for sys/types.h... (cached) yes checking machine/types.h usability... no checking machine/types.h presence... no checking for machine/types.h... no checking sys/int_types.h usability... no checking sys/int_types.h presence... no checking for sys/int_types.h... no checking sys/socket.h usability... yes checking sys/socket.h presence... yes checking for sys/socket.h... yes checking netinet/in.h usability... yes checking netinet/in.h presence... yes checking for netinet/in.h... yes checking arpa/inet.h usability... yes checking arpa/inet.h presence... yes checking for arpa/inet.h... yes checking windows.h usability... no checking windows.h presence... no checking for windows.h... no checking syslog.h usability... yes checking syslog.h presence... yes checking for syslog.h... yes checking for int8_t... yes checking for uint8_t... yes checking for int16_t... yes checking for uint16_t... yes checking for int32_t... yes checking for uint32_t... yes checking for uint64_t... yes checking for unsigned long... yes checking size of unsigned long... 4 checking for unsigned long long... yes checking size of unsigned long long... 8 checking for an ANSI C-conforming const... yes checking for inline... inline checking for size_t... yes checking for socket... yes checking for inet_aton... yes checking for usleep... yes checking for sigaction... yes checking whether to compile in debugging... yes checking whether to use ISMAcryp code... no checking whether to use syslog for error reporting... no checking whether to use stdout for error reporting... yes checking whether to use /dev/console for error reporting... no checking whether to use GDOI key management... no configure: creating ./config.status config.status: creating Makefile config.status: creating crypto/Makefile config.status: creating doc/Makefile config.status: creating crypto/include/config.h + make -j3 gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c srtp/srtp.c -o srtp/srtp.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c srtp/ekt.c -o srtp/ekt.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/cipher/cipher.c -o crypto/cipher/cipher.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/cipher/null_cipher.c -o crypto/cipher/null_cipher.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/cipher/aes.c -o crypto/cipher/aes.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/cipher/aes_icm.c -o crypto/cipher/aes_icm.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/cipher/aes_cbc.c -o crypto/cipher/aes_cbc.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/hash/null_auth.c -o crypto/hash/null_auth.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/hash/sha1.c -o crypto/hash/sha1.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/hash/hmac.c -o crypto/hash/hmac.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/hash/auth.c -o crypto/hash/auth.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/math/datatypes.c -o crypto/math/datatypes.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/math/stat.c -o crypto/math/stat.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/kernel/crypto_kernel.c -o crypto/kernel/crypto_kernel.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/kernel/alloc.c -o crypto/kernel/alloc.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/kernel/key.c -o crypto/kernel/key.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/rng/rand_source.c -o crypto/rng/rand_source.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/rng/prng.c -o crypto/rng/prng.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/rng/ctr_prng.c -o crypto/rng/ctr_prng.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/kernel/err.c -o crypto/kernel/err.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/replay/rdb.c -o crypto/replay/rdb.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/replay/rdbx.c -o crypto/replay/rdbx.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -c crypto/replay/ut_sim.c -o crypto/replay/ut_sim.o gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -shared -pthread -lm -Wl,--no-undefined -Wl,-soname,libsrtp.so.0 -z noexecstack -o libsrtp.so.0.0.0 srtp/srtp.o srtp/ekt.o crypto/cipher/cipher.o crypto/cipher/null_cipher.o crypto/cipher/aes.o crypto/cipher/aes_icm.o crypto/cipher/aes_cbc.o crypto/hash/null_auth.o crypto/hash/sha1.o crypto/hash/hmac.o crypto/hash/auth.o crypto/math/datatypes.o crypto/math/stat.o crypto/kernel/crypto_kernel.o crypto/kernel/alloc.o crypto/kernel/key.o crypto/rng/rand_source.o crypto/rng/prng.o crypto/rng/ctr_prng.o crypto/kernel/err.o crypto/replay/rdb.o crypto/replay/rdbx.o crypto/replay/ut_sim.o ln -s libsrtp.so.0.0.0 libsrtp.so gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -L. crypto/test/aes_calc.c -o crypto/test/aes_calc -lsrtp gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -L. crypto/test/cipher_driver.c -o crypto/test/cipher_driver -lsrtp gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -L. crypto/test/datatypes_driver.c -o crypto/test/datatypes_driver -lsrtp crypto/test/aes_calc.c: In function 'main': crypto/test/aes_calc.c:39: warning: 'verbose' may be used uninitialized in this function gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -L. crypto/test/kernel_driver.c -o crypto/test/kernel_driver -lsrtp gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -L. crypto/test/rand_gen.c -o crypto/test/rand_gen -lsrtp gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -L. crypto/test/sha1_driver.c -o crypto/test/sha1_driver -lsrtp gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -L. crypto/test/stat_driver.c -o crypto/test/stat_driver -lsrtp gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -L. -o test/srtp_driver test/srtp_driver.c test/getopt_s.c -lsrtp gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -L. test/replay_driver.c -o test/replay_driver -lsrtp gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -L. test/roc_driver.c -o test/roc_driver -lsrtp gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -L. -o test/rdbx_driver test/rdbx_driver.c test/getopt_s.c -lsrtp gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -L. -o test/rtpw test/rtpw.c test/rtp.c test/getopt_s.c -lsrtp gcc -DHAVE_CONFIG_H -Icrypto/include -I./include -I./crypto/include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -fPIC -L. -o test/dtls_srtp_driver test/dtls_srtp_driver.c test/getopt_s.c -lsrtp Build done. Please run 'make runtest' to run self tests. + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.10571 + umask 022 + cd /home/bbeers/redhat//BUILD + cd srtp + LANG=C + export LANG + unset DISPLAY + make install 'DESTDIR=%{buildroot}' /usr/bin/install -c -d %{buildroot}/usr/include/srtp /usr/bin/install -c -d %{buildroot}/usr/lib cp ./include/*.h %{buildroot}/usr/include/srtp cp ./crypto/include/*.h %{buildroot}/usr/include/srtp if [ "." != "." ]; then cp crypto/include/*.h %{buildroot}/usr/include/srtp; fi if [ -f libsrtp.so.0.0.0 ]; then cp libsrtp.so.0.0.0 %{buildroot}/usr/lib/; fi + find '%{buildroot}' -name '*.la' -exec rm -f '{}' ';' + pushd '%{buildroot}/usr/lib' ~/redhat/BUILD/srtp/%{buildroot}/usr/lib ~/redhat/BUILD/srtp + ln -sf libsrtp.so.0.0.0 libsrtp.so + ln -sf libsrtp.so.0.0.0 libsrtp.so.0 + popd ~/redhat/BUILD/srtp + mkdir -p '%{buildroot}/usr/lib/pkgconfig/' + install -m0644 /home/bbeers/redhat/SOURCES/libsrtp.pc '%{buildroot}/usr/lib/pkgconfig/' + sed -i 's|@PREFIX@|/usr|g' '%{buildroot}/usr/lib/pkgconfig/libsrtp.pc' + sed -i 's|@LIBDIR@|/usr/lib|g' '%{buildroot}/usr/lib/pkgconfig/libsrtp.pc' + sed -i 's|@INCLUDEDIR@|/usr/include|g' '%{buildroot}/usr/lib/pkgconfig/libsrtp.pc' + /usr/lib/rpm/atrpms/find-debuginfo.sh /home/bbeers/redhat//BUILD/srtp extracting debug info from ./%{buildroot}/usr/lib/libsrtp.so.0.0.0 mkdir: cannot create directory `/usr/lib/debug.': Permission denied eu-strip: cannot open '/usr/lib/debug./%{buildroot}/usr/lib/libsrtp.so.0.0.0.debug': No such file or directory extracting debug info from ./test/rtpw mkdir: cannot create directory `/usr/lib/debug.': Permission denied eu-strip: cannot open '/usr/lib/debug./test/rtpw.debug': No such file or directory extracting debug info from ./test/dtls_srtp_driver mkdir: cannot create directory `/usr/lib/debug.': Permission denied eu-strip: cannot open '/usr/lib/debug./test/dtls_srtp_driver.debug': No such file or directory extracting debug info from ./test/roc_driver mkdir: cannot create directory `/usr/lib/debug.': Permission denied eu-strip: cannot open '/usr/lib/debug./test/roc_driver.debug': No such file or directory extracting debug info from ./test/srtp_driver mkdir: cannot create directory `/usr/lib/debug.': Permission denied eu-strip: cannot open '/usr/lib/debug./test/srtp_driver.debug': No such file or directory extracting debug info from ./test/replay_driver mkdir: cannot create directory `/usr/lib/debug.': Permission denied eu-strip: cannot open '/usr/lib/debug./test/replay_driver.debug': No such file or directory extracting debug info from ./test/rdbx_driver mkdir: cannot create directory `/usr/lib/debug.': Permission denied eu-strip: cannot open '/usr/lib/debug./test/rdbx_driver.debug': No such file or directory extracting debug info from ./crypto/test/aes_calc mkdir: cannot create directory `/usr/lib/debug.': Permission denied eu-strip: cannot open '/usr/lib/debug./crypto/test/aes_calc.debug': No such file or directory extracting debug info from ./crypto/test/stat_driver mkdir: cannot create directory `/usr/lib/debug.': Permission denied eu-strip: cannot open '/usr/lib/debug./crypto/test/stat_driver.debug': No such file or directory extracting debug info from ./crypto/test/cipher_driver mkdir: cannot create directory `/usr/lib/debug.': Permission denied eu-strip: cannot open '/usr/lib/debug./crypto/test/cipher_driver.debug': No such file or directory extracting debug info from ./crypto/test/datatypes_driver mkdir: cannot create directory `/usr/lib/debug.': Permission denied eu-strip: cannot open '/usr/lib/debug./crypto/test/datatypes_driver.debug': No such file or directory extracting debug info from ./crypto/test/sha1_driver mkdir: cannot create directory `/usr/lib/debug.': Permission denied eu-strip: cannot open '/usr/lib/debug./crypto/test/sha1_driver.debug': No such file or directory extracting debug info from ./crypto/test/rand_gen mkdir: cannot create directory `/usr/lib/debug.': Permission denied eu-strip: cannot open '/usr/lib/debug./crypto/test/rand_gen.debug': No such file or directory extracting debug info from ./crypto/test/kernel_driver mkdir: cannot create directory `/usr/lib/debug.': Permission denied eu-strip: cannot open '/usr/lib/debug./crypto/test/kernel_driver.debug': No such file or directory extracting debug info from ./libsrtp.so.0.0.0 mkdir: cannot create directory `/usr/lib/debug.': Permission denied eu-strip: cannot open '/usr/lib/debug./libsrtp.so.0.0.0.debug': No such file or directory 0 blocks chmod: changing permissions of `/usr/src/debug': Operation not permitted find: /usr/lib/debug: No such file or directory + /usr/lib/rpm/atrpms/python_burninversion.sh + /usr/lib/rpm/atrpms/brp-compress + /usr/lib/rpm/atrpms/brp-strip /usr/bin/strip + /usr/lib/rpm/atrpms/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/atrpms/brp-strip-comment-note /usr/bin/strip /usr/bin/objdump Processing files: libsrtp-1.4.4-2.20101004cvs.el5 Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.96791 + umask 022 + cd /home/bbeers/redhat//BUILD + cd srtp + DOCDIR=/usr/share/doc/libsrtp-1.4.4 + export DOCDIR + rm -rf /usr/share/doc/libsrtp-1.4.4 + /bin/mkdir -p /usr/share/doc/libsrtp-1.4.4 /bin/mkdir: cannot create directory `/usr/share/doc/libsrtp-1.4.4': Permission denied error: Bad exit status from /var/tmp/rpm-tmp.96791 (%doc) error: File not found: /usr/share/doc/libsrtp-1.4.4 Processing files: libsrtp-devel-1.4.4-2.20101004cvs.el5 error: File not found: /usr/lib/pkgconfig/libsrtp.pc Processing files: libsrtp-debuginfo-1.4.4-2.20101004cvs.el5 Checking for unpackaged file(s): /usr/lib/rpm/check-files %{buildroot}
RPM build errors: Bad exit status from /var/tmp/rpm-tmp.96791 (%doc) File not found: /usr/share/doc/libsrtp-1.4.4 File not found: /usr/lib/pkgconfig/libsrtp.pc $
I tried setting '%define debug_package %{nil}' in my ~/.rpmmacros file. That gets me past the
mkdir: cannot create directory `/usr/lib/debug.': Permission denied
problem (by not doing it), but I haven't figured out how to solve the
/bin/mkdir: cannot create directory `/usr/share/doc/libsrtp-1.4.4': Permission denied
problem of %doc's DOCDIR.
I can't seem to find out where the DOCDIR is specified.
I have opened an issue at RHN, but I'd be delighted to get it figured out sooner rather than later.
Thanks for any help.
On Tue, 2011-01-25 at 17:07 -0500, Bob Beers wrote:
It's your build environment that's the problem. They build for el5.
Clean out your build root and recreate it and do a fresh .rpmmacros file.
John
Wrote: /home/ethan/rpmbuild/SRPMS/libsrtp-1.4.4-2.20101004cvs.el5.em2.src.rpm Wrote: /home/ethan/rpmbuild/RPMS/x86_64/libsrtp-1.4.4-2.20101004cvs.el5.em2.x86_64.rpm Wrote: /home/ethan/rpmbuild/RPMS/x86_64/libsrtp-devel-1.4.4-2.20101004cvs.el5.em2.x86_64.rpm Wrote: /home/ethan/rpmbuild/RPMS/x86_64/libsrtp-debuginfo-1.4.4-2.20101004cvs.el5.em2.x86_64.rpm
On Wed, Jan 26, 2011 at 9:38 AM, JohnS jses27@gmail.com wrote:
Hi John,
Thanks for the response!
On Tue, 2011-01-25 at 17:07 -0500, Bob Beers wrote:
It's your build environment that's the problem. They build for el5.
Clean out your build root and recreate it and do a fresh .rpmmacros file.
I'm trying to understand your instructions. I think my build environment is not too bad. I build many other rpms from spec files. Most of those spec files have a line exactly like or similar to:
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
but this libsrtp.spec file does not. So it appears that at the point where DESTDIR is specified, the literal value '%{buildroot}' is used.
In my trace ... make install 'DESTDIR=%{buildroot}' In yours ... make install DESTDIR=/home/ethan/rpmbuild/BUILDROOT/libsrtp-1.4.4-2.20101004cvs.el5.em2.x86_64
BTW, here is fedoraproject info on BuildRoot: <[url]https://fedoraproject.org/wiki/EPEL/GuidelinesAndPolicies#BuildRoot_tag%5B/u... I bet I can make it work by adding a BuildRoot: line to the spec file.
Where/how is %{buildroot} defined in your build environment? Are you building on a CentOS/RHEL 5.X machine?
I have simplified my ~/.rpmmacros file to just these two lines:
$ cat ~/.rpmmacros %_topdir /home/bbeers/redhat/ %_smp_mflags -j3
and I still get the same errors.
John
Wrote: /home/ethan/rpmbuild/SRPMS/libsrtp-1.4.4-2.20101004cvs.el5.em2.src.rpm Wrote: /home/ethan/rpmbuild/RPMS/x86_64/libsrtp-1.4.4-2.20101004cvs.el5.em2.x86_64.rpm Wrote: /home/ethan/rpmbuild/RPMS/x86_64/libsrtp-devel-1.4.4-2.20101004cvs.el5.em2.x86_64.rpm Wrote: /home/ethan/rpmbuild/RPMS/x86_64/libsrtp-debuginfo-1.4.4-2.20101004cvs.el5.em2.x86_64.rpm
Glad to see it worked in your environment.
On Wed, 2011-01-26 at 11:01 -0500, Bob Beers wrote:
DESTDIR=/home/ethan/rpmbuild/BUILDROOT/libsrtp-1.4.4-2.20101004cvs.el5.em2.x86_64
Yea that probally confuses you and a lot of people. Pay that no mind. :-)
Where/how is %{buildroot} defined in your build environment? Are you building on a CentOS/RHEL 5.X machine?
lol CentOS 5 RHEL5 EM2-5 They all produce the same binary results. As non-root. I have a very different build environment than yours also.
I'll send to the build logs for a Box Stock CentOS 5 System.
John
On Wed, 2011-01-26 at 09:38 -0500, JohnS wrote:
On Tue, 2011-01-25 at 17:07 -0500, Bob Beers wrote:
It's your build environment that's the problem. They build for el5.
Clean out your build root and recreate it and do a fresh .rpmmacros file.
John
Wrote: /home/ethan/rpmbuild/SRPMS/libsrtp-1.4.4-2.20101004cvs.el5.em2.src.rpm Wrote: /home/ethan/rpmbuild/RPMS/x86_64/libsrtp-1.4.4-2.20101004cvs.el5.em2.x86_64.rpm Wrote: /home/ethan/rpmbuild/RPMS/x86_64/libsrtp-devel-1.4.4-2.20101004cvs.el5.em2.x86_64.rpm Wrote: /home/ethan/rpmbuild/RPMS/x86_64/libsrtp-debuginfo-1.4.4-2.20101004cvs.el5.em2.x86_64.rpm
Ahh well that want work for him. My build environment is way different. You'll have to excuse me.
Magic rpm says this: Box stock CentOS... [ethan@sylvies SPECS]$ rpm -q rpm rpm-4.4.2.3-20.el5_5.1
So Bob needs:
[ethan@sylvies SPECS]$ diff -uNr libsrtp.spec.orig libsrtp.spec --- libsrtp.spec.orig 2011-01-26 10:51:58.000000000 -0500 +++ libsrtp.spec 2011-01-26 10:52:39.000000000 -0500 @@ -12,6 +12,9 @@ # cvs -d:pserver:anonymous@srtp.cvs.sourceforge.net:/cvsroot/srtp co -P srtp # tar cvfj srtp-1.4.4-20101004cvs.tar.bz2 srtp/ Source0: %{shortname}-%{version}-%{cvsver}.tar.bz2 + +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + # Pkgconfig goodness Source1: libsrtp.pc # Seriously. Who doesn't do shared libs these days?
The problem is RPM is trying to install into the main file system whereas el5 rpm does not need an incantation like so.
John
On Wed, Jan 26, 2011 at 11:04 AM, JohnS jses27@gmail.com wrote:
On Wed, 2011-01-26 at 11:02 -0500, JohnS wrote:
The problem is RPM is trying to install into the main file system whereas el5 rpm does not need an incantation like so.
I mean el6 sorry..
John
Yep, that make sense.
For completeness, there is another mod to the spec file that is required in the %install scriptlet.
patch file fc13-el5 attached.
So final process was:
$ rpm -ivh libsrtp-1.4.4-1.20101004cvs.fc13.src.rpm
patch libsrtp.spec < libsrtp.spec.fc13-el5.patch
$ rpmbuild -ba libstrp.spec
$ rpmbuild --rebuild --target i686 ~/redhat/SRPMS/libsrtp-1.4.4-1.20101004cvs.el5.src.rpm
Now I have rpms for i686 and i386 for el5. :-D
On Wed, 2011-01-26 at 11:35 -0500, Bob Beers wrote:
On Wed, Jan 26, 2011 at 11:04 AM, JohnS jses27@gmail.com wrote:
"+rm -rf %{buildroot}"
Now I know you rebuild it more than one time instead of once.
On Wed, Jan 26, 2011 at 1:24 PM, JohnS jses27@gmail.com wrote:
On Wed, 2011-01-26 at 11:35 -0500, Bob Beers wrote:
On Wed, Jan 26, 2011 at 11:04 AM, JohnS jses27@gmail.com wrote:
"+rm -rf %{buildroot}"
Now I know you rebuild it more than one time instead of once.
Well, it is recommended in the same fedoraproject reference from earlier in the thread, and I noticed I needed it when I tried to 'rpmbuild --rebuild ...' using my newly constructed el5.src.rpm.
So, another alternative to the spec file modification would be an update of rpm and rpm-build packages, but I didn't see the 4.6 versions are in the vanilla repos.
-Bob
LOL, looks like our messages crossed in the ether,
I applied a patch very similar to your suggestion:
$ diff -pub libsrtp.spec libsrtp.spec.el5 --- libsrtp.spec 2010-12-06 11:13:59.000000000 -0500 +++ libsrtp.spec.el5 2011-01-26 11:11:45.000000000 -0500 @@ -18,6 +18,8 @@ Source1: libsrtp.pc # And how does Chromium always manage to find these projects and use them? Patch0: libsrtp-1.4.4-shared.patch
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + %description This package provides an implementation of the Secure Real-time Transport Protocol (SRTP), the Universal Security Transform (UST), an
and got this result:
Wrote: /home/bbeers/redhat/SRPMS/libsrtp-1.4.4-1.20101004cvs.el5.src.rpm Wrote: /home/bbeers/redhat/RPMS/i386/libsrtp-1.4.4-1.20101004cvs.el5.i386.rpm Wrote: /home/bbeers/redhat/RPMS/i386/libsrtp-devel-1.4.4-1.20101004cvs.el5.i386.rpm Wrote: /home/bbeers/redhat/RPMS/i386/libsrtp-debuginfo-1.4.4-1.20101004cvs.el5.i386.rpm
Only thing I can think still to tweak is perhaps adding '--target i686' to my rpmbuild command.
Thanks again, -Bob
On Tue, 12 Oct 2010, Bob Beers wrote:
following on myself
'find' indicates it is also carried in FreeSwitch
/home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/srtp-1.42.pc /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/.deps/srtp.Plo /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/.deps/srtp+gdoi.Plo /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/doc/libsrtp.pdf /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/srtp.def /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/libsrtp.2010.vcxproj.filters /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/srtp /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/srtp/srtp.c /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/srtp.lo /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/srtp.vcproj /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/libsrtp.2008.vcproj /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/srtp.o /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/include/srtp.h /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/libsrtp.la /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/test/.deps/srtp_driver.Po /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/test/srtp_driver.c /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/libsrtp.2010.vcxproj /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/libsrtp.vcproj /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/srtp-1.42.pc.in /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/.libs/libsrtp.a /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/.libs/libsrtp.lai /home/herrold/rpmbuild/BUILD/freeswitch-20101012/libs/srtp/.libs/libsrtp.la
and one assumes is maintain as that is an active project
-- Russ herrold