Re: [asterisk-users] Compile of smsq.c failed on Ubuntu Xenial (16.04LTS)

2016-07-14 Thread Ernie Dunbar

On 2016-07-13 17:09, Ernie Dunbar wrote:

Hi everyone.

I'm trying to compile Asterisk with the smsq utility on Ubuntu 16.04
LTS, and while most things are compiling fine, smsq fails with the
following output:

root@test25:/usr/src/asterisk-certified-13.1-cert7/utils# make smsq
   [CC] smsq.c -> smsq.o
   [LD] smsq.o strcompat.o -> smsq
strcompat.o: In function `_ast_malloc':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:535:
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:535:
undefined reference to `ast_log'
strcompat.o: In function `_ast_calloc':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:559:
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:559:
undefined reference to `ast_log'
strcompat.o: In function `_ast_realloc':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:596:
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:596:
undefined reference to `ast_log'
strcompat.o: In function `_ast_strdup':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:624:
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:624:
undefined reference to `ast_log'
strcompat.o: In function `_ast_strndup':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:654:
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:654:
undefined reference to `ast_log'
strcompat.o: In function `_ast_vasprintf':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:694:
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:694:
undefined reference to `ast_log'
strcompat.o: In function `_ast_calloc':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:559:
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:559:
undefined reference to `ast_log'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:559:
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:559:
undefined reference to `ast_log'
strcompat.o: In function `_ast_realloc':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:596:
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:596:
undefined reference to `ast_log'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:596:
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:596:
undefined reference to `ast_log'
strcompat.o: In function `_ast_calloc':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:559:
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:559:
undefined reference to `ast_log'
strcompat.o: In function `ast_str_set_va':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/strings.h:1014:
undefined reference to `__ast_str_helper'
strcompat.o: In function `ast_str_append_va':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/strings.h:1032:
undefined reference to `__ast_str_helper'
strcompat.o: In function `ast_str_set_va':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/strings.h:1014:
undefined reference to `__ast_str_helper'
strcompat.o: In function `ast_str_append_va':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/strings.h:1032:
undefined reference to `__ast_str_helper'
strcompat.o: In function `ast_str_set_substr':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/strings.h:1039:
undefined reference to `__ast_str_helper2'
strcompat.o: In function `ast_str_append_substr':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/strings.h:1046:
undefined reference to `__ast_str_helper2'
strcompat.o: In function `ast_str_set_escapecommas':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/strings.h:1053:
undefined reference to `__ast_str_helper2'
strcompat.o: In function `ast_str_append_escapecommas':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/strings.h:1060:
undefined reference to `__ast_str_helper2'
collect2: error: ld returned 1 exit status
../Makefile.rules:163: recipe for target 'smsq' failed
make: *** [smsq] Error 1


Years and years of installing binary packages have made my make-fu
weak, but I've surmised that it's having trouble loading the
asterisk.h library. To get this far, I modified smsq.h to specify the
path of asterisk.h to say:

 #include "../include/asterisk.h"

But now I get the output we see above. Perhaps there's an easier way
to make it find the include files it needs?


Through trial and error, I've found the solution 

[asterisk-users] Compile of smsq.c failed on Ubuntu Xenial (16.04LTS)

2016-07-13 Thread Ernie Dunbar

Hi everyone.

I'm trying to compile Asterisk with the smsq utility on Ubuntu 16.04 
LTS, and while most things are compiling fine, smsq fails with the 
following output:


root@test25:/usr/src/asterisk-certified-13.1-cert7/utils# make smsq
   [CC] smsq.c -> smsq.o
   [LD] smsq.o strcompat.o -> smsq
strcompat.o: In function `_ast_malloc':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:535: 
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:535: 
undefined reference to `ast_log'

strcompat.o: In function `_ast_calloc':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:559: 
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:559: 
undefined reference to `ast_log'

strcompat.o: In function `_ast_realloc':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:596: 
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:596: 
undefined reference to `ast_log'

strcompat.o: In function `_ast_strdup':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:624: 
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:624: 
undefined reference to `ast_log'

strcompat.o: In function `_ast_strndup':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:654: 
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:654: 
undefined reference to `ast_log'

strcompat.o: In function `_ast_vasprintf':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:694: 
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:694: 
undefined reference to `ast_log'

strcompat.o: In function `_ast_calloc':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:559: 
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:559: 
undefined reference to `ast_log'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:559: 
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:559: 
undefined reference to `ast_log'

strcompat.o: In function `_ast_realloc':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:596: 
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:596: 
undefined reference to `ast_log'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:596: 
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:596: 
undefined reference to `ast_log'

strcompat.o: In function `_ast_calloc':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:559: 
undefined reference to `_ast_mem_backtrace_buffer'
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/utils.h:559: 
undefined reference to `ast_log'

strcompat.o: In function `ast_str_set_va':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/strings.h:1014: 
undefined reference to `__ast_str_helper'

strcompat.o: In function `ast_str_append_va':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/strings.h:1032: 
undefined reference to `__ast_str_helper'

strcompat.o: In function `ast_str_set_va':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/strings.h:1014: 
undefined reference to `__ast_str_helper'

strcompat.o: In function `ast_str_append_va':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/strings.h:1032: 
undefined reference to `__ast_str_helper'

strcompat.o: In function `ast_str_set_substr':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/strings.h:1039: 
undefined reference to `__ast_str_helper2'

strcompat.o: In function `ast_str_append_substr':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/strings.h:1046: 
undefined reference to `__ast_str_helper2'

strcompat.o: In function `ast_str_set_escapecommas':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/strings.h:1053: 
undefined reference to `__ast_str_helper2'

strcompat.o: In function `ast_str_append_escapecommas':
/usr/src/asterisk-certified-13.1-cert7/include/asterisk/strings.h:1060: 
undefined reference to `__ast_str_helper2'

collect2: error: ld returned 1 exit status
../Makefile.rules:163: recipe for target 'smsq' failed
make: *** [smsq] Error 1


Years and years of installing binary packages have made my make-fu weak, 
but I've surmised that it's having trouble loading the asterisk.h 
library. To get this far, I modified smsq.h to specify the path of 
asterisk.h to say:


 #include "../include/asterisk.h"

But now I get the output we see above. Perhaps there's an easier way to 
make it find the include files it needs?


--