Welcome! Log In Create A New Profile


Re: Nginx and libatomic

Igor Sysoev
December 06, 2009 03:28AM
On Sun, Dec 06, 2009 at 02:28:50AM -0500, pcdinh wrote:

> I tried to configure nginx 0.8.29 with libatomic 1.2 (manually built and installed) by specifying
> --with-libatomic=/usr/local/lib
> (=> /usr/local/lib/libatomic_ops.a)

In this case you should use just

You should see

checking for atomic_ops library ... found

> OR
> --with-libatomic=../libatomic_ops-1.2
> (=> source code only)
> but nginx shows no information to indicate if that configuration works or not

Yes, now ./configure does not show this, I need to fix it.

> --------------------------------
> checking for OS
> + Linux 2.6.18-164.el5PAE i686
> checking for C compiler ... found
> + using GNU C compiler
> + gcc version: 4.1.2 20080704 (Red Hat 4.1.2-46)
> checking for gcc -pipe switch ... found
> checking for gcc builtin atomic operations ... not found
> checking for gcc variadic macros ... found
> checking for C99 variadic macros ... found

> checking for OpenSSL library ... found
> checking for zlib library ... found
> checking for perl
> + perl version: v5.8.8 built for i386-linux-thread-multi
> + perl interpreter multiplicity found
> creating objs/Makefile

> Configuration summary
> + using PCRE library: /usr/local/src/pcre-8.00
> + using system OpenSSL library
> + md5: using OpenSSL library
> + using sha1 library: auto/lib/sha1
> + using system zlib library
> nginx path prefix: "/usr/local/nginx"
> nginx binary file: "/usr/local/sbin/nginx"
> nginx configuration prefix: "/usr/local/nginx"
> nginx configuration file: "/usr/local/nginx/nginx.conf"
> nginx pid file: "/usr/local/nginx/nginx.pid"
> nginx error log file: "/usr/local/nginx/logs/error.log"
> nginx http access log file: "/usr/local/nginx/logs/access.log"
> nginx http client request body temporary files: "/usr/local/nginx/temp/client_body"
> nginx http proxy temporary files: "/usr/local/nginx/temp/proxy"
> nginx http fastcgi temporary files: "/usr/local/nginx/temp/fastcgi"
> The warning "checking for gcc builtin atomic operations ... not found" shows that my default compiler gcc 4.1.2 20080704 does not support atomic operations. I tried to configure CC=gcc44 CXX=g++44 to tell Nginx use newer GCC44 but it seems to ignore it.
> Am I doing wrong here?

The gcc built-in atomic operations on x86 (but not on x86-64) are available
only if -march=-486 or higher is set. You should add either

However, you should not worry about this, since nginx uses own atomic
operations implementation on x86 anyway. As well as on amd64, sparc32/64,
and ppc32/64. gcc atomic support and libatomic are required for other

Igor Sysoev

nginx mailing list
Subject Author Posted

Nginx and libatomic

pcdinh December 06, 2009 02:28AM

Re: Nginx and libatomic

Igor Sysoev December 06, 2009 03:28AM

Re: Nginx and libatomic

dyadaval July 19, 2018 10:57PM

Re: Nginx and libatomic

Maxim Dounin July 20, 2018 07:22AM

Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 66
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready