Percona Server sources can't be compiled without server

Description

cmake -DWITH_BOOST=boost -DDOWNLOAD_BOOST=1 -DWITHOUT_SERVER=1 make ... Linking CXX executable mysqlbinlog ../archive_output_directory/libperconaserverclient.a(mf_iocache2.c.o): In function `my_b_fill': /home/slava/1/percona-server-5.7.22-22/mysys/mf_iocache2.c:235: undefined reference to `mysql_file_read' /home/slava/1/percona-server-5.7.22-22/mysys/mf_iocache2.c:215: undefined reference to `mysql_file_seek' ../archive_output_directory/libperconaserverclient.a(mf_iocache2.c.o): In function `my_b_pread': /home/slava/1/percona-server-5.7.22-22/mysys/mf_iocache2.c:256: undefined reference to `mysql_file_pread' ../archive_output_directory/libperconaserverclient.a(mf_iocache2.c.o): In function `my_b_filelength': /home/slava/1/percona-server-5.7.22-22/mysys/mf_iocache2.c:313: undefined reference to `mysql_file_seek' collect2: error: ld returned 1 exit status make[2]: *** [client/mysqlbinlog] Error 1 make[1]: *** [client/CMakeFiles/mysqlbinlog.dir/all] Error 2 make: *** [all] Error 2

Full output: https://pastebin.com/JGX7sAnk

Environment

The same behaviour observed on different Linux distros.

Attachments

1
  • 12 Dec 2018, 10:07 AM

Smart Checklist

Activity

Julia Vural March 4, 2025 at 9:02 PM

It appears that this issue is no longer being worked on, so we are closing it for housekeeping purposes. If you believe the issue still exists, please open a new ticket after confirming it's present in the latest release.

Lalit Choudhary December 21, 2018 at 8:42 AM

Hello

Thank you for the Update. 

 

Validated with PS 5.7.24

Scanning dependencies of target mysqladmin [ 70%] Building CXX object client/CMakeFiles/mysqladmin.dir/mysqladmin.cc.o Linking CXX executable mysqladmin [ 70%] Built target mysqladmin Scanning dependencies of target mysqlbinlog [ 70%] Building CXX object client/CMakeFiles/mysqlbinlog.dir/mysqlbinlog.cc.o Linking CXX executable mysqlbinlog ../archive_output_directory/libperconaserverclient.a(mf_iocache2.c.o): In function `my_b_fill': /mysql/percona-server-5.7.24-27/mysys/mf_iocache2.c:235: undefined reference to `mysql_file_read' /mysql/percona-server-5.7.24-27/mysys/mf_iocache2.c:215: undefined reference to `mysql_file_seek' ../archive_output_directory/libperconaserverclient.a(mf_iocache2.c.o): In function `my_b_pread': /mysql/percona-server-5.7.24-27/mysys/mf_iocache2.c:256: undefined reference to `mysql_file_pread' ../archive_output_directory/libperconaserverclient.a(mf_iocache2.c.o): In function `my_b_filelength': /mysql/percona-server-5.7.24-27/mysys/mf_iocache2.c:313: undefined reference to `mysql_file_seek' collect2: error: ld returned 1 exit status make[2]: *** [client/mysqlbinlog] Error 1 make[1]: *** [client/CMakeFiles/mysqlbinlog.dir/all] Error 2 make: *** [all] Error 2

Slava Sterling December 20, 2018 at 4:26 PM

It seems that the actual fix for https://perconadev.atlassian.net/browse/PS-4773#icft=PS-4773https://github.com/percona/percona-server/pull/2532/files — never made it to production releases:

5.7.22.22 — build fails (my original issue https://perconadev.atlassian.net/browse/PS-4773#icft=PS-4773)
5.7.23.23 — build fails
5.7.23.24 — build fails (https://perconadev.atlassian.net/browse/PS-4773#icft=PS-4773 lists this version in "Fix Version/s")
5.7.23.25 — build fails
5.7.24.26 — build fails
5.7.24.27 — build fails

Now when I apply those changes (just add #include "mysql/psi/mysql_file.h" into mysys/mf_iocache2.c) — build succeeds on all versions listed above.


@lalit.choudhary Your build log suggests you were reusing the same source dir for multiple builds. Could you please run the following commands exactly:

curl https://www.percona.com/downloads/Percona-Server-LATEST/Percona-Server-5.7.24-27/source/tarball/percona-server-5.7.24-27.tar.gz | tar -xzf - cd percona-server-5.7.24-27 cmake -DWITH_BOOST=boost -DDOWNLOAD_BOOST=1 -DWITHOUT_SERVER=1 make

Lalit Choudhary December 12, 2018 at 10:07 AM

Works fine for me in centOS7

percona-server-5.7.24-26

Slava Sterling December 11, 2018 at 4:26 PM

Still experiencing the same issue with 5.7.24-26.3.
Full output: https://pastebin.com/7YfF0pwE

Won't Do

Details

Assignee

Reporter

Priority

Smart Checklist

Created December 11, 2018 at 4:22 PM
Updated March 4, 2025 at 9:02 PM
Resolved March 4, 2025 at 9:02 PM

Flag notifications