[MXS-864] pcre2 build problem Created: 2016-09-13  Updated: 2017-03-20  Resolved: 2017-03-16

Status: Closed
Project: MariaDB MaxScale
Component/s: build, Documentation
Affects Version/s: 2.0.0
Fix Version/s: 2.1.2

Type: Bug Priority: Minor
Reporter: Valerii Kravchuk Assignee: markus makela
Resolution: Fixed Votes: 0
Labels: None

Sprint: 2017-30

 Description   

I've noted a weird build problem on Ubuntu 14.04. With clean clonned code cmake reports no problems, but then make fails:

openxs@ao756:~$ cd git
openxs@ao756:~/git$ rm -rf MaxScale
openxs@ao756:~/git$ git clone https://github.com/mariadb-corporation/MaxScale.git
Cloning into 'MaxScale'...
remote: Counting objects: 40451, done.
remote: Compressing objects: 100% (403/403), done.
remote: Total 40451 (delta 260), reused 1 (delta 1), pack-reused 40046
Receiving objects: 100% (40451/40451), 68.00 MiB | 4.05 MiB/s, done.
Resolving deltas: 100% (29725/29725), done.
Checking connectivity... done.
openxs@ao756:~/git$ cd MaxScale/
openxs@ao756:~/git/MaxScale$ git branch
* 2.0
openxs@ao756:~/git/MaxScale$ mkdir build
openxs@ao756:~/git/MaxScale$ cd build
openxs@ao756:~/git/MaxScale/build$ cmake .. -DMYSQL_EMBEDDED_INCLUDE_DIR=/home/openxs/dbs/maria10.1/include/mysql -DMYSQL_EMBEDDED_LIBRARIES=/home/openxs/dbs/maria10.1/lib/libmysqld.a -DERRMSG=/home/openxs/dbs/maria10.1/share/english/errmsg.sys -DCMAKE_INSTALL_PREFIX=/home/openxs/maxscale -DWITH_MAXSCALE_CNF=N
-- CMake version: 2.8.12.2
-- The C compiler identification is GNU 4.8.4
...
-- Found libuuid /usr/lib/x86_64-linux-gnu/libuuid.so
-- Found libuuid headers /usr/include/uuid
-- PCRE2 library not found.
-- Using bundled PCRE2 library
-- Building MariaDB Connector-C from source.
-- Found git 1.9.1
-- Commit ID: 6dc75d4b9c4313e8b0e507dd4c0b6bec8dadc268
-- C Compiler supports: -Werror=format-security
-- C Compiler supports: -Wno-unused-but-set-variable
-- Using C99 standard
CMake Warning at server/modules/filter/CMakeLists.txt:9 (message):
  Could not find librabbitmq, the mqfilter will not be built.
 
 
-- Found FLEX: /usr/bin/flex (found version "2.5.35")
-- Found BISON: /usr/bin/bison (found version "3.0.2")
-- Could not find editline library. MaxAdmin will be built without it.
-- Installing maxscale.conf to: /etc/ld.so.conf.d
-- Installing startup scripts to: /etc/init.d
-- Installing systemd service files to: /usr/lib/systemd/system
-- Could NOT find Doxygen (missing:  DOXYGEN_EXECUTABLE)
-- Configuring done
-- Generating done
CMake Warning:
  Manually-specified variables were not used by the project:
 
    MYSQL_EMBEDDED_INCLUDE_DIR
    MYSQL_EMBEDDED_LIBRARIES
 
 
-- Build files have been written to: /home/openxs/git/MaxScale/build

Now I run make and:

...
[ 21%] Building C object server/core/CMakeFiles/maxscale-common.dir/config.c.o
In file included from /home/openxs/git/MaxScale/server/include/externcmd.h:21:0,
                 from /home/openxs/git/MaxScale/server/include/monitor.h:21,
                 from /home/openxs/git/MaxScale/server/core/config.c:57:
/home/openxs/git/MaxScale/server/include/maxscale_pcre2.h:21:19: fatal error: pcre2.h: No such file or directory
 #include <pcre2.h>
                   ^
compilation terminated.
make[2]: *** [server/core/CMakeFiles/maxscale-common.dir/config.c.o] Error 1
make[1]: *** [server/core/CMakeFiles/maxscale-common.dir/all] Error 2
make: *** [all] Error 2

If I just clean up the build directory with rm -rf * and repeat the process again (cmake .. ... then make) everything works as expected and I can build successfully.

Few more details:

openxs@ao756:~/git/MaxScale$ cat /etc/issue
Ubuntu 14.04.5 LTS \n \l
 
openxs@ao756:~/git/MaxScale$ git log -1
commit 6dc75d4b9c4313e8b0e507dd4c0b6bec8dadc268
Author: Markus Makela <markus.makela@mariadb.com>
Date:   Mon Sep 12 05:06:42 2016 +0300
...



 Comments   
Comment by Johan Wikman [ 2017-02-07 ]

Markus, please check whether you can find the cause. With 2.1 on Ubuntu 16.04 this does not seem to happen, but I know I have seen this behavior in the past.

Comment by markus makela [ 2017-03-16 ]

This only seems to occur when CMake is configured multiple times. Added a note to the build instructions suggesting to delete everything in the build directory when this problem arises.

Generated at Thu Feb 08 04:02:30 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.