When port option SNAPPY is enabled. Build failed. [7/971] : && /usr/bin/c++ -O2 -pipe -fstack-protector -isystem /usr/local/include -fno-strict-aliasing -isystem /usr/local/include -DWITH_INNODB_DISALLOW_WRITES -fno-rtti -O2 -pipe -fstack-protector -isystem /usr/local/include -fno-strict-aliasing -isystem /usr/local/include -DDBUG_OFF -fstack-protector extra/mariabackup/CMakeFiles/mbstream.dir/ds_buffer.c.o extra/mariabackup/CMakeFiles/mbstream.dir/ds_local.c.o extra/mariabackup/CMakeFiles/mbstream.dir/ds_stdout.c.o extra/mariabackup/CMakeFiles/mbstream.dir/datasink.c.o extra/mariabackup/CMakeFiles/mbstream.dir/xbstream.c.o extra/mariabackup/CMakeFiles/mbstream.dir/xbstream_read.c.o extra/mariabackup/CMakeFiles/mbstream.dir/xbstream_write.c.o -o extra/mariabackup/mbstream -Wl,-rpath,:::::::::::::: -pthread storage/innobase/libinnobase.a /usr/local/lib/liblz4.so /usr/local/lib/liblzo2.so -llzma -lbz2 /usr/local/lib/libsnappy.so mysys/libmysys.a extra/mariabackup/crc/libcrc.a dbug/libdbug.a mysys_ssl/libmysys_ssl.a mysys/libmysys.a dbug/libdbug.a mysys_ssl/libmysys_ssl.a -lm -lexecinfo strings/libstrings.a -lssl -lcrypto storage/innobase/libinnobase.a -pthread -lz /usr/local/lib/liblz4.so /usr/local/lib/liblzo2.so -llzma -lbz2 /usr/local/lib/libsnappy.so && : FAILED: extra/mariabackup/mbstream : && /usr/bin/c++ -O2 -pipe -fstack-protector -isystem /usr/local/include -fno-strict-aliasing -isystem /usr/local/include -DWITH_INNODB_DISALLOW_WRITES -fno-rtti -O2 -pipe -fstack-protector -isystem /usr/local/include -fno-strict-aliasing -isystem /usr/local/include -DDBUG_OFF -fstack-protector extra/mariabackup/CMakeFiles/mbstream.dir/ds_buffer.c.o extra/mariabackup/CMakeFiles/mbstream.dir/ds_local.c.o extra/mariabackup/CMakeFiles/mbstream.dir/ds_stdout.c.o extra/mariabackup/CMakeFiles/mbstream.dir/datasink.c.o extra/mariabackup/CMakeFiles/mbstream.dir/xbstream.c.o extra/mariabackup/CMakeFiles/mbstream.dir/xbstream_read.c.o extra/mariabackup/CMakeFiles/mbstream.dir/xbstream_write.c.o -o extra/mariabackup/mbstream -Wl,-rpath,:::::::::::::: -pthread storage/innobase/libinnobase.a /usr/local/lib/liblz4.so /usr/local/lib/liblzo2.so -llzma -lbz2 /usr/local/lib/libsnappy.so mysys/libmysys.a extra/mariabackup/crc/libcrc.a dbug/libdbug.a mysys_ssl/libmysys_ssl.a mysys/libmysys.a dbug/libdbug.a mysys_ssl/libmysys_ssl.a -lm -lexecinfo strings/libstrings.a -lssl -lcrypto storage/innobase/libinnobase.a -pthread -lz /usr/local/lib/liblz4.so /usr/local/lib/liblzo2.so -llzma -lbz2 /usr/local/lib/libsnappy.so && : storage/innobase/libinnobase.a(btr0scrub.cc.o): In function `TTASEventMutex<GenericPolicy>::enter(unsigned int, unsigned int, char const*, unsigned int)': storage/innobase/btr/btr0scrub.cc:(.text._ZN14TTASEventMutexI13GenericPolicyE5enterEjjPKcj[_ZN14TTASEventMutexI13GenericPolicyE5enterEjjPKcj]+0x163): undefined reference to `my_timer_cycles' storage/innobase/libinnobase.a(dict0dict.cc.o): In function `dict_index_add_to_cache_w_vcol(dict_table_t*, dict_index_t*, dict_add_v_col_t const*, unsigned long, unsigned long)': storage/innobase/dict/dict0dict.cc:(.text+0x5521): undefined reference to `THR_THD' storage/innobase/libinnobase.a(dict0dict.cc.o): In function `dict_fs2utf8(char const*, char*, unsigned long, char*, unsigned long)': storage/innobase/dict/dict0dict.cc:(.text+0x10a50): undefined reference to `system_charset_info' storage/innobase/dict/dict0dict.cc:(.text+0x10a71): undefined reference to `strconvert(charset_info_st const*, char const*, unsigned int, charset_info_st const*, char*, unsigned int, unsigned int*)' storage/innobase/dict/dict0dict.cc:(.text+0x10b21): undefined reference to `system_charset_info' storage/innobase/dict/dict0dict.cc:(.text+0x10b43): undefined reference to `strconvert(charset_info_st const*, char const*, unsigned int, charset_info_st const*, char*, unsigned int, unsigned int*)' storage/innobase/libinnobase.a(fil0fil.cc.o): In function `fil_node_open_file(fil_node_t*)': storage/innobase/fil/fil0fil.cc:(.text+0x3725): undefined reference to `my_timer_cycles' storage/innobase/libinnobase.a(fil0pagecompress.cc.o): In function `fil_compress_page(fil_space_t*, unsigned char*, unsigned char*, unsigned long, unsigned long, unsigned long, bool, unsigned long*)': storage/innobase/fil/fil0pagecompress.cc:(.text+0x286): undefined reference to `my_timer_cycles' storage/innobase/fil/fil0pagecompress.cc:(.text+0x57c): undefined reference to `my_timer_cycles' storage/innobase/fil/fil0pagecompress.cc:(.text+0x59e): undefined reference to `my_timer_cycles' storage/innobase/libinnobase.a(fil0pagecompress.cc.o): In function `fil_decompress_page(unsigned char*, unsigned char*, unsigned long, unsigned long*, bool)': . . . . c++: error: linker command failed with exit code 1 (use -v to see invocation) ninja: build stopped: subcommand failed. *** Error code 1
Hi sdalu, Can you please provide settings for all of the options? (make showconfig) and any /etc/make.conf settings. FreeBSD version, ... Best would be a poudriere build log if you have that.
Also please don't set maintainer-feedback if there's no patch to review. You should expect maintainer to respond on the bug
make showconfig ===> The following configuration options are available for mariadb102-server-10.2.7: CONNECT_EXTRA=off: Enable ODBC and XML in CONNECT engine ====> Optional page compression LZ4=on: LZ4 compression support LZO=on: LZO compression support SNAPPY=on: Snappy compression library support ZSTD=off: Zstandard compression support (RocksDB only) ====> Optional MariaDB storage engines INNOBASE=on: InnoDB default engine MROONGA=on: Mroonga Full Text Search engine OQGRAPH=on: Open Query Graph Computation engine ROCKSDB=off: RocksDB LSM engine (Alpha) SPHINX=on: SphinxSE engine SPIDER=on: Partitioning and XA-transactions engine TOKUDB=off: Fractal tree index tree data structure engine XTRADB=off: Build XtraDB engine next to InnoDB ====> Optional Mroonga features ZMQ=on: ZeroMQ support MSGPACK=on: MsgPack support ====> GSSAPI Security API support: you have to select exactly one of them GSSAPI_BASE=off: GSSAPI support via base system (Kerberos required) GSSAPI_HEIMDAL=off: GSSAPI support via security/heimdal GSSAPI_MIT=off: GSSAPI support via security/krb5 GSSAPI_NONE=on: Disable GSSAPI support ===> Use 'make config' to modify these settings cat /etc/make.conf WRKDIRPREFIX=/usr/obj OPTIONS_SET= LDAP JAVA_VERSION=1.8 APACHE_PORT= www/apache24 DEFAULT_VERSIONS+= perl5=5.24 DEFAULT_VERSIONS+= ruby=2.4 DEFAULT_VERSIONS+= mysql=102m DEFAULT_VERSIONS+= pgsql=9.4 DEFAULT_VERSIONS+= php=56 DEFAULT_VERSIONS+= bdb=6 DEFAULT_VERSIONS+= gcc=6 I don't have poudriere, but can install and run it, if you give me the command line
Created attachment 185955 [details] poudriere build log I'm running into the same problem. Without SNAPPY the port build. With SNAPPY it fails. As I have some TokuDB SNAPPY is implied so unable to switch it off. Log is to big for pastebin so I had to compress it.
I'm running FreeBSD 11.1-RELEASE. IIRC on 11.0 it compiled.
Created an 11.0-RELEASE jail in poudriere. Used the same ports-tree. mariadb102-server compiles with TokuDB/SNAPPY.
Looks like it's missing a library at link-time... Investigating.
This is an issue with the cmake scripts. The lzo2 snappy etc libs appear way too early. Removing the early appearances (they appear twice) fixes the build. Now I need to find a way to automate that in the Makefile. Opened upstream issue as well
A commit references this bug: Author: brnrd Date: Sun Oct 15 13:19:35 UTC 2017 New revision: 452143 URL: https://svnweb.freebsd.org/changeset/ports/452143 Log: databases/mariadb102-server: Fix client ports and build - Move client headers to the client port [1] - Fix SNAPPY option for mariabackup [2] * switch to noninja to generate link.txt PR: 222825 [1], 221159 [2] Submitted by: Piotr Kubaj <pkubaj@anongoth.pl> [1] Reported by: sdalu@sdalu.com [2] Changes: head/databases/mariadb102-client/pkg-plist head/databases/mariadb102-server/Makefile head/databases/mariadb102-server/pkg-plist