Package Details: gatling 0.16-3

Git Clone URL: https://aur.archlinux.org/gatling.git (read-only, click to copy)
Package Base: gatling
Description: A high performance http and ftp server
Upstream URL: https://www.fefe.de/gatling
Licenses: GPL
Conflicts: gatling-bin
Submitter: None
Maintainer: aperez
Last Packager: aperez
Votes: 9
Popularity: 0.000000
First Submitted: 2006-10-16 18:48 (UTC)
Last Updated: 2023-04-15 21:08 (UTC)

Latest Comments

1 2 Next › Last »

dreieck commented on 2023-03-15 15:03 (UTC)

Sugestion:

Compile with SUPPORT_HTTPS (needs the package openssl as dependency) to enable TLS support.

According to README.polarssl, there can also be variants compiled against polarssl, but experimental.

dreieck commented on 2023-03-15 14:54 (UTC) (edited on 2023-03-15 14:55 (UTC) by dreieck)

Using up to date version 0.16 the build error /usr/bin/ld: http.o:(.bss+0x2088): multiple definition of `ifd'; gatling.o:(.bss+0x580): first defined here and subsequent to not appear anymore and build succeeds, only warnings are left over:

==> Starting build()...
[...]
/usr/bin/diet /bin/diet -Os gcc -c smb.c -o smb.o -I. -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB
http.c: In function ‘get_md5_randomness’:
http.c:2206:9: warning: implicit declaration of function ‘getentropy’ [-Wimplicit-function-declaration]
 2206 |     if (getentropy(buf, sizeof buf)) {
      |         ^~~~~~~~~~
/usr/bin/diet /bin/diet -Os gcc -c common.c -o common.o -I. -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB
ar q libsocketkludge.a dummy.o
ar: creating libsocketkludge.a
ranlib libsocketkludge.a
/usr/bin/diet /bin/diet -Os gcc -s gatling.o mime.o ftp.o http.o smb.o common.o connstat.o httpstream.o dirfd.o -o gatling -lowfat -lz `cat libsocket libiconv libcrypt` `cat md5lib`
/usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.1/../../../../lib/libowfat.a(io_sendfile.o): in function `io_sendfile':
(.text+0x6b): warning: sendfile is not portable
/usr/bin/ld: gatling.o: in function `handle_read_misc':
gatling.c:(.text+0x103b): warning: warning: your code still has assertions enabled!
/usr/bin/ld: /opt/diet/lib-x86_64/libc.a(stdin.o): in function `__fflush_stdin':
(.text+0x34): warning: warning: your code uses stdio (7+k bloat).
/usr/bin/ld: /opt/diet/lib-x86_64/libc.a(vsnprintf.o): in function `vsnprintf':
(.text+0x9c): warning: warning: the printf functions add several kilobytes of bloat.
==> Entering fakeroot environment...
==> Starting package()...
[...]

Regards!

dreieck commented on 2023-03-15 14:51 (UTC)

I also get (kind of) this build error:

==> Starting build()...
rm -f havesetresuid.h
(head -n 1 CHANGES | sed 's/\([^:]*\):/#define VERSION "\1"/') > version.h
rm -f havealloca.h
if /usr/bin/diet /bin/diet -Os gcc -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB -o tryresuid trysetresuid.c >/dev/null 2>&1; then echo "#define LIBC_HAS_SETRESUID"; fi > havesetresuid.h
echo "#include <stdlib.h>" > havealloca.h
if /usr/bin/diet /bin/diet -Os gcc -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB -o trymd5 trymd5.c >/dev/null 2>&1; then echo ""; else \
if /usr/bin/diet /bin/diet -Os gcc -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB -o trymd5 trymd5.c -lmd >/dev/null 2>&1; then echo "-lmd"; else \
if /usr/bin/diet /bin/diet -Os gcc -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB -o trymd5 trymd5.c -lcrypto >/dev/null 2>&1; then echo "-lcrypto"; \
fi; fi; fi > md5lib
if /usr/bin/diet /bin/diet -Os /usr/bin/diet /bin/diet -Os gcc -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB -c tryalloca.c -DA >/dev/null 2>&1; then echo "#include <alloca.h>"; fi >> havealloca.h
if /usr/bin/diet /bin/diet -Os gcc -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB -o trysocket trysocket.c >/dev/null 2>&1; then echo ""; else \
if /usr/bin/diet /bin/diet -Os gcc -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB -o trysocket trysocket.c -lsocket >/dev/null 2>&1; then echo "-lsocket"; else \
if /usr/bin/diet /bin/diet -Os gcc -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB -o trysocket trysocket.c -lsocket -lnsl >/dev/null 2>&1; then echo "-lsocket -lnsl"; else \
if /usr/bin/diet /bin/diet -Os gcc -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB -o trysocket trysocket.c -lwsock32 >/dev/null 2>&1; then echo "-lwsock32"; \
fi; fi; fi; fi > libsocket
if /usr/bin/diet /bin/diet -Os /usr/bin/diet /bin/diet -Os gcc -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB -c tryalloca.c -DB >/dev/null 2>&1; then echo "#include <malloc.h>"; fi >> havealloca.h
rm -f trymd5
if /usr/bin/diet /bin/diet -Os gcc -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB -o tryiconv tryiconv.c >/dev/null 2>&1; then echo ""; else \
if /usr/bin/diet /bin/diet -Os gcc -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB -o tryiconv tryiconv.c -liconv >/dev/null 2>&1; then echo "-liconv"; else \
if /usr/bin/diet /bin/diet -Os gcc -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB -o tryiconv tryiconv.c -L/usr/local/lib -liconv >/dev/null 2>&1; then \
  echo "-L/usr/local/lib -liconv"; \
fi; fi; fi > libiconv
rm -f tryresuid
touch dummy.c
if /usr/bin/diet /bin/diet -Os gcc -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB -o trycrypt trycrypt.c >/dev/null 2>&1; then echo ""; else \
if /usr/bin/diet /bin/diet -Os gcc -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB -o trycrypt trycrypt.c -lcrypt >/dev/null 2>&1; then echo "-lcrypt"; \
fi; fi > libcrypt
rm -f trysocket
/usr/bin/diet /bin/diet -Os gcc -c mime.c -o mime.o -I. -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB
rm -f tryalloca.o
rm -f tryiconv
/usr/bin/diet /bin/diet -Os gcc -c connstat.c -o connstat.o -I. -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB
/usr/bin/diet /bin/diet -Os gcc -c httpstream.c -o httpstream.o -I. -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB
rm -f trycrypt
/usr/bin/diet /bin/diet -Os gcc -c dirfd.c -o dirfd.o -I. -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB
/usr/bin/diet /bin/diet -Os gcc -c dummy.c -o dummy.o -I. -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB
/usr/bin/diet /bin/diet -Os gcc -c gatling.c -o gatling.o -I. -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB
/usr/bin/diet /bin/diet -Os gcc -c ftp.c -o ftp.o -I. -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB
/usr/bin/diet /bin/diet -Os gcc -c http.c -o http.o -I. -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB
/usr/bin/diet /bin/diet -Os gcc -c smb.c -o smb.o -I. -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB
/usr/bin/diet /bin/diet -Os gcc -c common.c -o common.o -I. -pipe -Wall -O2 -fomit-frame-pointer -I/usr/include/libowfat -DUSE_ZLIB
ar q libsocketkludge.a dummy.o
ar: creating libsocketkludge.a
ranlib libsocketkludge.a
/usr/bin/diet /bin/diet -Os gcc -s gatling.o mime.o ftp.o http.o smb.o common.o connstat.o httpstream.o dirfd.o -o gatling -lowfat -lz `cat libsocket libiconv libcrypt` `cat md5lib`
/usr/bin/ld: http.o:(.bss+0x2088): multiple definition of `ifd'; gatling.o:(.bss+0x580): first defined here
/usr/bin/ld: common.o:(.bss+0x0): multiple definition of `ifd'; gatling.o:(.bss+0x580): first defined here
/usr/bin/ld: dirfd.o:(.bss+0x28): multiple definition of `ifd'; gatling.o:(.bss+0x580): first defined here
/usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/12.2.1/../../../../lib/libowfat.a(io_sendfile.o): in function `io_sendfile':
(.text+0x6b): warning: sendfile is not portable
/usr/bin/ld: gatling.o: in function `handle_read_misc':
gatling.c:(.text+0x1018): warning: warning: your code still has assertions enabled!
/usr/bin/ld: /opt/diet/lib-x86_64/libc.a(stdin.o): in function `__fflush_stdin':
(.text+0x34): warning: warning: your code uses stdio (7+k bloat).
/usr/bin/ld: /opt/diet/lib-x86_64/libc.a(vsnprintf.o): in function `vsnprintf':
(.text+0x9c): warning: warning: the printf functions add several kilobytes of bloat.
collect2: error: ld returned 1 exit status
make: *** [GNUmakefile:99: gatling] Error 1
==> ERROR: A failure occurred in build().

Regards!

dreieck commented on 2023-03-15 14:50 (UTC)

Upstram provides a signature: http://www.fefe.de/gatling/gatling-0.16.tar.xz.sig -- can you add signature verification to your PKGBUILD?

Regards!

mrxx commented on 2020-11-05 21:57 (UTC)

Any ideas?

qwivan commented on 2020-11-05 15:24 (UTC)

/usr/bin/diet -Os gcc -s gatling.o mime.o ftp.o http.o smb.o common.o connstat.o httpstream.o dirfd.o -o gatling -lowfat -lz cat libsocket libiconv libcrypt cat md5lib /usr/bin/ld: http.o:(.bss+0x2088): multiple definition of ifd'; gatling.o:(.bss+0x580): first defined here /usr/bin/ld: common.o:(.bss+0x0): multiple definition ofifd'; gatling.o:(.bss+0x580): first defined here /usr/bin/ld: dirfd.o:(.bss+0x28): multiple definition of ifd'; gatling.o:(.bss+0x580): first defined here /usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/../../../../lib/libowfat.a(io_fd.o):(.bss+0xb0): multiple definition offirst_deferred'; /usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/../../../../lib/libowfat.a(io_close.o):(.data+0x0): first defined here /usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/../../../../lib/libowfat.a(io_sendfile.o): in function io_sendfile': (.text+0x6b): warning: sendfile is not portable /usr/bin/ld: gatling.o: in functionhandle_read_misc': gatling.c:(.text+0xfda): warning: warning: your code still has assertions enabled! /usr/bin/ld: /opt/diet/lib-x86_64/libc.a(stdin.o): in function __fflush_stdin': (.text+0x34): warning: warning: your code uses stdio (7+k bloat). /usr/bin/ld: /opt/diet/lib-x86_64/libc.a(vsnprintf.o): in functionvsnprintf': (.text+0x9c): warning: warning: the printf functions add several kilobytes of bloat. collect2: error: ld returned 1 exit status make: *** [GNUmakefile:99: gatling] Error 1

Mic92 commented on 2012-04-10 16:16 (UTC)

Alternatively gatling can be built with polarssl (README.polarssl) or without tsl support zlib is needed in each case.

Mic92 commented on 2012-04-10 15:04 (UTC)

To successfully build gatling, you have either link everything against glibc or dietlibc. To link everything against glibc: - replace in the PKGBUILD of libowfat the 'make' section: make DIET= To link everything against dietlibc: - use the FAQ[1] how to build openssl and copy it to /opt/diet/$ARCH-lib/ - modify the PKGBUILD of zlib: 1. modify the 'configure' section: CC="/opt/diet/bin/diet gcc -nostdinc" ./configure --prefix=/opt/diet --static 2. modify the 'make install' section: make install PREFIX=/opt/diet DESTDIR=${pkgdir} http://www.fefe.de/dietlibc/FAQ.txt

haagch commented on 2011-10-10 22:04 (UTC)

Just for the information to users of archlinuxfr: I had problems building gatling with libowfat from archlinuxfr (undefined reference to a standard function(?)). With libowfat from AUR it worked fine. Btw: Thank you for awesomely maintaining this package. :)