Details
-
Bug
-
Status: Closed (View Workflow)
-
Blocker
-
Resolution: Fixed
-
10.5.7
-
None
Description
The 10.5.7 release does not build.
[499/1657] : && /home/ports/pobj/mariadb-10.5.7/bin/c++ -O2 -pipe -I/usr/local/include -fstack-protector --param=ssp-buffer-size=4 -DNDEBUG -D_FORTIFY_SOURCE=2 -DDBUG_OFF -L/usr/local/lib -Wl,-z,relro,-z,now unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o -o unittest/mysys/stacktrace-t -L/usr/lib -L/usr/local/lib -lpthread unittest/mytap/libmytap.a mysys/libmysys.a dbug/libdbug.a strings/libstrings.a mysys/libmysys.a dbug/libdbug.a strings/libstrings.a -lz -lm -lpthread -Wl,-rpath-link,/usr/X11R6/lib && : |
FAILED: unittest/mysys/stacktrace-t
|
: && /home/ports/pobj/mariadb-10.5.7/bin/c++ -O2 -pipe -I/usr/local/include -fstack-protector --param=ssp-buffer-size=4 -DNDEBUG -D_FORTIFY_SOURCE=2 -DDBUG_OFF -L/usr/local/lib -Wl,-z,relro,-z,now unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o -o unittest/mysys/stacktrace-t -L/usr/lib -L/usr/local/lib -lpthread unittest/mytap/libmytap.a mysys/libmysys.a dbug/libdbug.a strings/libstrings.a mysys/libmysys.a dbug/libdbug.a strings/libstrings.a -lz -lm -lpthread -Wl,-rpath-link,/usr/X11R6/lib && : |
ld: error: undefined symbol: my_safe_print_str
|
>>> referenced by stacktrace-t.c
|
>>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str)
|
>>> referenced by stacktrace-t.c
|
>>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str)
|
>>> referenced by stacktrace-t.c
|
>>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str)
|
>>> referenced by stacktrace-t.c
|
>>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str)
|
>>> referenced by stacktrace-t.c
|
>>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str)
|
>>> referenced by stacktrace-t.c
|
>>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str)
|
>>> referenced by stacktrace-t.c
|
>>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str)
|
c++: error: linker command failed with exit code 1 (use -v to see invocation) |
ninja: build stopped: subcommand failed.
|
Attachments
Activity
Field | Original Value | New Value |
---|---|---|
Description |
The 10.15.7 release does not build.
{code:java} [499/1657] : && /home/ports/pobj/mariadb-10.5.7/bin/c++ -O2 -pipe -I/usr/local/include -fstack-protector --param=ssp-buffer-size=4 -DNDEBUG -D_FORTIFY_SOURCE=2 -DDBUG_OFF -L/usr/local/lib -Wl,-z,relro,-z,now unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o -o unittest/mysys/stacktrace-t -L/usr/lib -L/usr/local/lib -lpthread unittest/mytap/libmytap.a mysys/libmysys.a dbug/libdbug.a strings/libstrings.a mysys/libmysys.a dbug/libdbug.a strings/libstrings.a -lz -lm -lpthread -Wl,-rpath-link,/usr/X11R6/lib && : FAILED: unittest/mysys/stacktrace-t : && /home/ports/pobj/mariadb-10.5.7/bin/c++ -O2 -pipe -I/usr/local/include -fstack-protector --param=ssp-buffer-size=4 -DNDEBUG -D_FORTIFY_SOURCE=2 -DDBUG_OFF -L/usr/local/lib -Wl,-z,relro,-z,now unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o -o unittest/mysys/stacktrace-t -L/usr/lib -L/usr/local/lib -lpthread unittest/mytap/libmytap.a mysys/libmysys.a dbug/libdbug.a strings/libstrings.a mysys/libmysys.a dbug/libdbug.a strings/libstrings.a -lz -lm -lpthread -Wl,-rpath-link,/usr/X11R6/lib && : ld: error: undefined symbol: my_safe_print_str >>> referenced by stacktrace-t.c >>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str) >>> referenced by stacktrace-t.c >>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str) >>> referenced by stacktrace-t.c >>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str) >>> referenced by stacktrace-t.c >>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str) >>> referenced by stacktrace-t.c >>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str) >>> referenced by stacktrace-t.c >>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str) >>> referenced by stacktrace-t.c >>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str) c++: error: linker command failed with exit code 1 (use -v to see invocation) ninja: build stopped: subcommand failed. {code} |
The 10.5.7 release does not build.
{code:java} [499/1657] : && /home/ports/pobj/mariadb-10.5.7/bin/c++ -O2 -pipe -I/usr/local/include -fstack-protector --param=ssp-buffer-size=4 -DNDEBUG -D_FORTIFY_SOURCE=2 -DDBUG_OFF -L/usr/local/lib -Wl,-z,relro,-z,now unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o -o unittest/mysys/stacktrace-t -L/usr/lib -L/usr/local/lib -lpthread unittest/mytap/libmytap.a mysys/libmysys.a dbug/libdbug.a strings/libstrings.a mysys/libmysys.a dbug/libdbug.a strings/libstrings.a -lz -lm -lpthread -Wl,-rpath-link,/usr/X11R6/lib && : FAILED: unittest/mysys/stacktrace-t : && /home/ports/pobj/mariadb-10.5.7/bin/c++ -O2 -pipe -I/usr/local/include -fstack-protector --param=ssp-buffer-size=4 -DNDEBUG -D_FORTIFY_SOURCE=2 -DDBUG_OFF -L/usr/local/lib -Wl,-z,relro,-z,now unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o -o unittest/mysys/stacktrace-t -L/usr/lib -L/usr/local/lib -lpthread unittest/mytap/libmytap.a mysys/libmysys.a dbug/libdbug.a strings/libstrings.a mysys/libmysys.a dbug/libdbug.a strings/libstrings.a -lz -lm -lpthread -Wl,-rpath-link,/usr/X11R6/lib && : ld: error: undefined symbol: my_safe_print_str >>> referenced by stacktrace-t.c >>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str) >>> referenced by stacktrace-t.c >>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str) >>> referenced by stacktrace-t.c >>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str) >>> referenced by stacktrace-t.c >>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str) >>> referenced by stacktrace-t.c >>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str) >>> referenced by stacktrace-t.c >>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str) >>> referenced by stacktrace-t.c >>> unittest/mysys/CMakeFiles/stacktrace-t.dir/stacktrace-t.c.o:(test_my_safe_print_str) c++: error: linker command failed with exit code 1 (use -v to see invocation) ninja: build stopped: subcommand failed. {code} |
Summary | 10.15.7 does not build | 10.5.7 does not build |
Assignee | Daniel Black [ danblack ] |
Attachment | MDEV-24131.patch [ 54751 ] |
Attachment | stacktrace.log [ 54766 ] |
Summary | 10.5.7 does not build | 10.5.7 does not build stacktrace-t (OpenBSD) - |
Summary | 10.5.7 does not build stacktrace-t (OpenBSD) - | 10.5.7 does not build stacktrace-t (OpenBSD) - HAVE_BACKTRACE / HAVE_BACKTRACE_FD missing |
Fix Version/s | 10.2 [ 14601 ] |
Status | Open [ 1 ] | Confirmed [ 10101 ] |
Assignee | Daniel Black [ danblack ] | Robert Bindar [ robertbindar ] |
Status | Confirmed [ 10101 ] | In Review [ 10002 ] |
Assignee | Robert Bindar [ robertbindar ] | Daniel Black [ danblack ] |
Status | In Review [ 10002 ] | Stalled [ 10000 ] |
Attachment | 0001-stacktrace-t.c-make-the-test-conditional.patch [ 55839 ] |
Issue Type | Task [ 3 ] | Bug [ 1 ] |
Affects Version/s | 10.5.7 [ 25019 ] |
Fix Version/s | 10.3 [ 22126 ] | |
Fix Version/s | 10.4 [ 22408 ] | |
Fix Version/s | 10.5 [ 23123 ] |
Component/s | Platform OpenBSD [ 10202 ] | |
Fix Version/s | 10.2.37 [ 25112 ] | |
Fix Version/s | 10.3.28 [ 25111 ] | |
Fix Version/s | 10.4.18 [ 25110 ] | |
Fix Version/s | 10.5.9 [ 25109 ] | |
Fix Version/s | 10.2 [ 14601 ] | |
Fix Version/s | 10.3 [ 22126 ] | |
Fix Version/s | 10.4 [ 22408 ] | |
Fix Version/s | 10.5 [ 23123 ] | |
Resolution | Fixed [ 1 ] | |
Status | Stalled [ 10000 ] | Closed [ 6 ] |
Workflow | MariaDB v3 [ 115434 ] | MariaDB v4 [ 158546 ] |
brad0,
This looks like a lack of backtrace or backtrace_fd function on OpenBSD.
diff --git a/unittest/mysys/stacktrace-t.c b/unittest/mysys/stacktrace-t.c
index 8fa0db15b36..67eb099028e 100644
--- a/unittest/mysys/stacktrace-t.c
+++ b/unittest/mysys/stacktrace-t.c
@@ -22,6 +22,14 @@
char b_bss[10];
+#ifndef HAVE_STACKTRACE
+int my_safe_print_str(const char* val, size_t max_len)
+{
+ printf("%*s\n", (int) max_len, val);
+ return 0;
+}
+#endif
+
void test_my_safe_print_str()
{
char b_stack[10];
Should get it to compile. The unit test probably isn't sufficiently meaningful however.
It was easier than copying the include/my_stacktrace.h HAVE_BACKTRACE logic to a CMakeList defination to exclude this test.