Re: [pcre-dev] [Bug 1404] New: build fail due to "undefined …

Top Page
Delete this message
Author: Zoltán Herczeg
Date:  
To: rand
CC: pcre-dev
Subject: Re: [pcre-dev] [Bug 1404] New: build fail due to "undefined reference to `check_char_prop'" in pcre 8.34-trunk
Hi Rand,

thank you for the report, and sorry for the late answer. We did a lot of rework on auto-possessifying in PCRE, and the code still requires testing. I suspect --enable-unicode-properties was not passed to configure since I only see this error when it is not there. The fix was trivial, but all \X related test cases were moved from test2 to test6, so the patch is quite big:

https://lists.exim.org/lurker/message/20131025.173753.f7e011ef.en.html

Regards,
Zoltan

rand@??? írta:
>(I posted this as a bug -- still pending approval -- but had not yet
>joined this list; It appears the auto-post to this list didn't happen.
>Reposting ... )
>
>I build/install a local pcre instance from head,
>
>    cd /usr/local/src/pcre
>    svn info
>        Path: .
>        Working Copy Root Path: /usr/local/src/pcre
>        URL: svn://vcs.exim.org/pcre/code/trunk
>        Repository Root: svn://vcs.exim.org/pcre
>        Repository UUID: 2f5784b3-3f2a-0410-8824-cb99058d5e15
>        Revision: 1383
>        Node Kind: directory
>        Schedule: normal
>        Last Changed Author: zherczeg
>        Last Changed Rev: 1383
>        Last Changed Date: 2013-10-18 10:50:06 -0700 (Fri, 18
>        Oct 2013)

>
>    ./configure \
>     --disable-static \
>     --enable-jit \
>     --with-link-size=2 \
>     --with-match-limit=10000000 \
>     --enable-utf \
>     --enable-unicode-properties \
>     --enable-newline-is-lf
>    make
>    make install

>
>    pcre-config --version
>        8.34-RC
>    pkg-config libpcre --libs --cflags
>        -I/usr/local/include  -L/usr/local/lib64 -lpcre

>
>Previouly OK, building nginx 1.5.6 against that PCRE instance now fails
>@,
>
>    ./configure \
>    ...
>    --with-pcre=/usr/local/src/pcre --with-pcre-jit \
>    ...
>    make
>        ...
>        objs/addon/naxsi_src/naxsi_json.o \
>        objs/addon/src/ndk.o \
>        objs/ngx_modules.o \
>        -L/usr/local/ssl/lib64 -Wl,-rpath,/usr/local/ssl/lib64
>        -lssl -lcrypto -ldl -lz -Wl,-E -lpthread -lcrypt
>        -L/usr/local/lib64/libluajit-5.1.so -lluajit-5.1 -lm
>        /usr/local/src/pcre/.libs/libpcre.a -lssl -lcrypto -lz
>        -lGeoIP
>        /usr/local/src/pcre/.libs/libpcre.a(libpcre_la-pcre_compile.o):
>        In function `compare_opcodes':
>        pcre_compile.c:(.text+0x2811): undefined reference to
>        `check_char_prop'
>        collect2: error: ld returned 1 exit status
>        make[1]: *** [objs/nginx] Error 1
>        make[1]: Leaving directory `/data/src/nginx-1.5.6'
>        make: *** [build] Error 2

>
>That undefined reference to 'check_char_prop' appears in the PCRE
>sources.
>
>fyi, this is on
>
>    uname -a
>        Linux test/loc 3.7.10-1.16-desktop #1 SMP PREEMPT Fri
>        May 31 20:21:23 UTC 2013 (97c14ba) x86_64 x86_64 x86_64
>        GNU/Linux
>    gcc -v
>        Using built-in specs.
>        COLLECT_GCC=gcc
>        COLLECT_LTO_WRAPPER=/usr/lib64/gcc/x86_64-suse-linux/4.8/lto-wrapper
>        Target: x86_64-suse-linux
>        Configured with: ../configure --prefix=/usr
>        --infodir=/usr/share/info --mandir=/usr/share/man
>        --libdir=/usr/lib64 --libexecdir=/usr/lib64
>        --enable-languages=c,c++,objc,fortran,obj-c++,java,ada
>        --enable-checking=release
>        --with-gxx-include-dir=/usr/include/c++/4.8 --enable-ssp
>        --disable-libssp --disable-plugin
>        --with-bugurl=http://bugs.opensuse.org/
>        --with-pkgversion='SUSE Linux' --disable-libgcj
>        --disable-libmudflap --with-slibdir=/lib64
>        --with-system-zlib --enable-__cxa_atexit
>        --enable-libstdcxx-allocator=new --disable-libstdcxx-pch
>        --enable-version-specific-runtime-libs
>        --enable-linker-build-id --program-suffix=-4.8
>        --enable-linux-futex --without-system-libunwind
>        --with-arch-32=i586 --with-tune=generic
>        --build=x86_64-suse-linux --host=x86_64-suse-linux
>        Thread model: posix
>        gcc version 4.8.2 20131016 [gcc-4_8-branch revision
>        203692] (SUSE Linux) 

>
>
>rand
>
>--
>## List details at https://lists.exim.org/mailman/listinfo/pcre-dev
>