kamailio icon indicating copy to clipboard operation
kamailio copied to clipboard

Kamailio 5.6.1, fail to build app_python3 for Fedora Rawhide

Open amessina opened this issue 3 years ago • 6 comments

Description

Version 5.6.1 build of app_python3 in Fedora Copr fails for Rawhide (gcc-12.1 and python-3.11)

Build Log Messages

Full build log: https://download.copr.fedorainfracloud.org/results/amessina/mss/fedora-rawhide-x86_64/04633995-kamailio/build.log.gz

make[2]: Entering directory '/builddir/build/BUILD/kamailio-5.6.1/src/modules/app_python3'
gcc -fPIC -DPIC -g -funroll-loops -Wcast-align -m64 -minline-all-stringops -falign-loops -ftree-vectorize -fno-strict-overflow -mtune=generic -pthread -DKSR_PTHREAD_MUTEX_SHARED -Wall    -DNAME='"kamailio"' -DVERSION='"5.6.1-1.fc37"' -DARCH='"x86_64"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 12.1.1"' -D__CPU_x86_64 -D__OS_linux -DVERSIONVAL=5006001 -DCFG_DIR='"/etc/kamailio/"' -DSHARE_DIR='"/usr/share/kamailio/"' -DRUN_DIR='"/run/kamailio/"' -DPKG_MALLOC -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLOCKLIST -DUSE_NAPTR -DWITH_XAVP -DMEM_JOIN_FREE -DF_MALLOC -DQ_MALLOC -DTLSF_MALLOC -DDBG_SR_MEMORY -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS -DMALLOC_STATS -DUSE_SCTP -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DHAVE_SCHED_SETSCHEDULER -DHAVE_IP_MREQN -DUSE_RAW_SOCKS -DHAVE_EPOLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT  -I/usr/include/python3.11 -I/usr/include/python3.11 -DMOD_NAME='"app_python3"' -c apy_kemi.c -o apy_kemi.o -MMD -MP
make[2]: Leaving directory '/builddir/build/BUILD/kamailio-5.6.1/src/modules/app_python3'
apy_kemi.c: In function 'sr_apy_kemi_exec_func':
apy_kemi.c:1835:55: error: 'PyThreadState' {aka 'struct _ts'} has no member named 'frame'; did you mean 'cframe'?
 1835 |                         if (pstate != NULL && pstate->frame != NULL) {
      |                                                       ^~~~~
      |                                                       cframe
apy_kemi.c:1836:50: error: 'PyThreadState' {aka 'struct _ts'} has no member named 'frame'; did you mean 'cframe'?
 1836 |                                 pframe = pstate->frame;
      |                                                  ^~~~~
      |                                                  cframe
In file included from apy_kemi.c:28:
apy_kemi.c:1844:58: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1844 |                                         (pframe && pframe->f_code)?PyBytes_AsString(pframe->f_code->co_filename):"",
      |                                                          ^~
../../core/dprint.h:317:80: note: in definition of macro 'LOG_FX'
  317 |                                                 _ksr_slog_func(&__kld, fmt, ## args); \
      |                                                                                ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1844:91: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1844 |                                         (pframe && pframe->f_code)?PyBytes_AsString(pframe->f_code->co_filename):"",
      |                                                                                           ^~
../../core/dprint.h:317:80: note: in definition of macro 'LOG_FX'
  317 |                                                 _ksr_slog_func(&__kld, fmt, ## args); \
      |                                                                                ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1845:58: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1845 |                                         (pframe && pframe->f_code)?PyBytes_AsString(pframe->f_code->co_name):"",
      |                                                          ^~
../../core/dprint.h:317:80: note: in definition of macro 'LOG_FX'
  317 |                                                 _ksr_slog_func(&__kld, fmt, ## args); \
      |                                                                                ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1845:91: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1845 |                                         (pframe && pframe->f_code)?PyBytes_AsString(pframe->f_code->co_name):"",
      |                                                                                           ^~
../../core/dprint.h:317:80: note: in definition of macro 'LOG_FX'
  317 |                                                 _ksr_slog_func(&__kld, fmt, ## args); \
      |                                                                                ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1846:58: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1846 |                                         (pframe && pframe->f_code)?PyCode_Addr2Line(pframe->f_code, pframe->f_lasti):0);
      |                                                          ^~
../../core/dprint.h:317:80: note: in definition of macro 'LOG_FX'
  317 |                                                 _ksr_slog_func(&__kld, fmt, ## args); \
      |                                                                                ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1846:91: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1846 |                                         (pframe && pframe->f_code)?PyCode_Addr2Line(pframe->f_code, pframe->f_lasti):0);
      |                                                                                           ^~
../../core/dprint.h:317:80: note: in definition of macro 'LOG_FX'
  317 |                                                 _ksr_slog_func(&__kld, fmt, ## args); \
      |                                                                                ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1846:107: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1846 |                                         (pframe && pframe->f_code)?PyCode_Addr2Line(pframe->f_code, pframe->f_lasti):0);
      |                                                                                                           ^~
../../core/dprint.h:317:80: note: in definition of macro 'LOG_FX'
  317 |                                                 _ksr_slog_func(&__kld, fmt, ## args); \
      |                                                                                ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1844:58: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1844 |                                         (pframe && pframe->f_code)?PyBytes_AsString(pframe->f_code->co_filename):"",
      |                                                          ^~
../../core/dprint.h:326:99: note: in definition of macro 'LOG_FX'
  326 |                                                                 LOGV_FUNCSUFFIX_STR(funcname), ## args); \
      |                                                                                                   ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1844:91: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1844 |                                         (pframe && pframe->f_code)?PyBytes_AsString(pframe->f_code->co_filename):"",
      |                                                                                           ^~
../../core/dprint.h:326:99: note: in definition of macro 'LOG_FX'
  326 |                                                                 LOGV_FUNCSUFFIX_STR(funcname), ## args); \
      |                                                                                                   ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1845:58: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1845 |                                         (pframe && pframe->f_code)?PyBytes_AsString(pframe->f_code->co_name):"",
      |                                                          ^~
../../core/dprint.h:326:99: note: in definition of macro 'LOG_FX'
  326 |                                                                 LOGV_FUNCSUFFIX_STR(funcname), ## args); \
      |                                                                                                   ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1845:91: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1845 |                                         (pframe && pframe->f_code)?PyBytes_AsString(pframe->f_code->co_name):"",
      |                                                                                           ^~
../../core/dprint.h:326:99: note: in definition of macro 'LOG_FX'
  326 |                                                                 LOGV_FUNCSUFFIX_STR(funcname), ## args); \
      |                                                                                                   ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1846:58: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1846 |                                         (pframe && pframe->f_code)?PyCode_Addr2Line(pframe->f_code, pframe->f_lasti):0);
      |                                                          ^~
../../core/dprint.h:326:99: note: in definition of macro 'LOG_FX'
  326 |                                                                 LOGV_FUNCSUFFIX_STR(funcname), ## args); \
      |                                                                                                   ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1846:91: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1846 |                                         (pframe && pframe->f_code)?PyCode_Addr2Line(pframe->f_code, pframe->f_lasti):0);
      |                                                                                           ^~
../../core/dprint.h:326:99: note: in definition of macro 'LOG_FX'
  326 |                                                                 LOGV_FUNCSUFFIX_STR(funcname), ## args); \
      |                                                                                                   ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1846:107: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1846 |                                         (pframe && pframe->f_code)?PyCode_Addr2Line(pframe->f_code, pframe->f_lasti):0);
      |                                                                                                           ^~
../../core/dprint.h:326:99: note: in definition of macro 'LOG_FX'
  326 |                                                                 LOGV_FUNCSUFFIX_STR(funcname), ## args); \
      |                                                                                                   ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1844:58: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1844 |                                         (pframe && pframe->f_code)?PyBytes_AsString(pframe->f_code->co_filename):"",
      |                                                          ^~
../../core/dprint.h:337:99: note: in definition of macro 'LOG_FX'
  337 |                                                                 LOGV_FUNCSUFFIX_STR(funcname), ## args); \
      |                                                                                                   ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1844:91: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1844 |                                         (pframe && pframe->f_code)?PyBytes_AsString(pframe->f_code->co_filename):"",
      |                                                                                           ^~
../../core/dprint.h:337:99: note: in definition of macro 'LOG_FX'
  337 |                                                                 LOGV_FUNCSUFFIX_STR(funcname), ## args); \
      |                                                                                                   ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1845:58: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1845 |                                         (pframe && pframe->f_code)?PyBytes_AsString(pframe->f_code->co_name):"",
      |                                                          ^~
../../core/dprint.h:337:99: note: in definition of macro 'LOG_FX'
  337 |                                                                 LOGV_FUNCSUFFIX_STR(funcname), ## args); \
      |                                                                                                   ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1845:91: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1845 |                                         (pframe && pframe->f_code)?PyBytes_AsString(pframe->f_code->co_name):"",
      |                                                                                           ^~
../../core/dprint.h:337:99: note: in definition of macro 'LOG_FX'
  337 |                                                                 LOGV_FUNCSUFFIX_STR(funcname), ## args); \
      |                                                                                                   ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1846:58: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1846 |                                         (pframe && pframe->f_code)?PyCode_Addr2Line(pframe->f_code, pframe->f_lasti):0);
      |                                                          ^~
../../core/dprint.h:337:99: note: in definition of macro 'LOG_FX'
  337 |                                                                 LOGV_FUNCSUFFIX_STR(funcname), ## args); \
      |                                                                                                   ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1846:91: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1846 |                                         (pframe && pframe->f_code)?PyCode_Addr2Line(pframe->f_code, pframe->f_lasti):0);
      |                                                                                           ^~
../../core/dprint.h:337:99: note: in definition of macro 'LOG_FX'
  337 |                                                                 LOGV_FUNCSUFFIX_STR(funcname), ## args); \
      |                                                                                                   ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
apy_kemi.c:1846:107: error: invalid use of incomplete typedef 'PyFrameObject' {aka 'struct _frame'}
 1846 |                                         (pframe && pframe->f_code)?PyCode_Addr2Line(pframe->f_code, pframe->f_lasti):0);
      |                                                                                                           ^~
../../core/dprint.h:337:99: note: in definition of macro 'LOG_FX'
  337 |                                                                 LOGV_FUNCSUFFIX_STR(funcname), ## args); \
      |                                                                                                   ^~~~
../../core/dprint.h:351:25: note: in expansion of macro 'LOG_FL'
  351 |                         LOG_FL(facility, level, NULL, prefix, fmt, ## args)
      |                         ^~~~~~
../../core/dprint.h:354:25: note: in expansion of macro 'LOG_FP'
  354 |                         LOG_FP(DEFAULT_FACILITY, (level), LOC_INFO, fmt, ## args)
      |                         ^~~~~~
apy_kemi.c:1839:25: note: in expansion of macro 'LOG'
 1839 |                         LOG(cfg_get(core, core_cfg, latency_log),
      |                         ^~~
make[2]: *** [../../Makefile.rules:100: apy_kemi.o] Error 1

amessina avatar Jul 14 '22 15:07 amessina

Try with the master or the patch from the commit referenced above -- it's a long shot trying to fix based on docs, without any Fedora around.

miconda avatar Jul 21 '22 18:07 miconda

Try with the mater or the patch from the commit referenced above -- it's a long shot trying to fix based on docs, without any Fedora around.

Thanks @miconda. I'll try the patch and report back on the build.

Not sure if the Kamailio project is interested, but Fedora Copr allows builds to be generated with commit hooks, etc. if GitHub doesn't have any of those automated compile after commit options for Fedora.

amessina avatar Jul 22 '22 22:07 amessina

Unfortunately no change for the build: https://download.copr.fedorainfracloud.org/results/amessina/mss/fedora-rawhide-x86_64/04678543-kamailio/build.log.gz

Any app_python3 users out there? I package, but no longer use app_python3 so I would only be able to test build, not app function.

amessina avatar Jul 22 '22 23:07 amessina

@amessina I had a similar issue with ubuntu22 building rtp engine, in the end i found a work around by installing a newer version of the python3.10 packages than was in the ubuntu package repositories, i dont follow python3 development but seems like recent releases have deprecated various things, and in ubuntu's case the packages are a complete mess at the moment for a supposed LTS edition of the OS. I would suggest manually installing the latest packages and see if that fixes it, although if your packaging thats probably not a viable work around for you

nakchak avatar Jul 31 '22 09:07 nakchak

@amessina I had a similar issue with ubuntu22 building rtp engine, in the end i found a work around by installing a newer version of the python3.10 packages than was in the ubuntu package repositories, i dont follow python3 development but seems like recent releases have deprecated various things, and in ubuntu's case the packages are a complete mess at the moment for a supposed LTS edition of the OS. I would suggest manually installing the latest packages and see if that fixes it, although if your packaging thats probably not a viable work around for you

Thanks @nakchak. I'll give that a whirl to see if it helps the build. Mostly I reported the issue so app_python3 developers have some time to work on it. I don't use app_python3 anymore so I can't test it, but getting it to build is a step in the right direction.

amessina avatar Jul 31 '22 16:07 amessina

I have tested the build using python3-devel.x86_64 3.11.0~rc2-1.fc38 (Fedora dist) and have the same issue.

sergey-safarov avatar Sep 17 '22 08:09 sergey-safarov

Should be fixed in master. Reopen if still happens and add new compile error messages.

miconda avatar Jan 13 '23 11:01 miconda

Build tested on Fedora 37. Build successful.

sergey-safarov avatar Jan 15 '23 02:01 sergey-safarov

Not for me in Debian sid with python3 3.11

Get: 5 http://deb.debian.org/debian sid/main amd64 libpython3.11-minimal amd64 3.11.1-2 [812 kB]
[...]
Get: 7 http://deb.debian.org/debian sid/main amd64 python3.11-minimal amd64 3.11.1-2 [2065 kB]
Get: 8 http://deb.debian.org/debian sid/main amd64 python3-minimal amd64 3.11.1-3 [25.9 kB]
[...]
Get: 15 http://deb.debian.org/debian sid/main amd64 libpython3.11-stdlib amd64 3.11.1-2 [1712 kB]
Get: 16 http://deb.debian.org/debian sid/main amd64 python3.11 amd64 3.11.1-2 [567 kB]
Get: 17 http://deb.debian.org/debian sid/main amd64 libpython3-stdlib amd64 3.11.1-3 [8960 B]
Get: 18 http://deb.debian.org/debian sid/main amd64 python3 amd64 3.11.1-3 [25.9 kB]

kamailio 5.6.3 + b8bf86e

gcc -fPIC -DPIC -funroll-loops -Wcast-align -m64 -minline-all-stringops -falign-loops -ftree-vectorize -fno-strict-overflow -mtune=generic -pthread -DKSR_PTHREAD_MUTEX_SHARED -Wall -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kamailio-5.6.3=. -fstack-protector-s
trong -Wformat -Werror=format-security -DVERSION_NODATE   -DNAME='"kamailio"' -DVERSION='"5.6.3"' -DARCH='"x86_64"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 12.2.0"' -D__CPU_x86_64 -D__OS_linux -DVERSIONVAL=5006003 -DCFG_DIR='"/etc/kamailio/"' -DSHARE_DIR='"/usr/share/
kamailio/"' -DRUN_DIR='"/var/run/kamailio/"' -DPKG_MALLOC -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLOCKLIST -DUSE_NAPTR -DWITH_XAVP -DMEM_JOIN_FREE -DF_MALLOC -DQ_MALLOC -DTLSF_MALLOC -DDBG_SR_ME
MORY -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS -DMALLOC_STATS -DUSE_SCTP -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DH
AVE_TIMEGM -DHAVE_SCHED_SETSCHEDULER -DHAVE_IP_MREQN -DUSE_RAW_SOCKS -DHAVE_EPOLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT  -I/usr/include/python3.11 -I/usr/include/python3.11 -DMOD_NAME='"app_python3"' -c app_python3_mod.c -o app_python3_mod.o -MMD -MP
gcc -fPIC -DPIC -funroll-loops -Wcast-align -m64 -minline-all-stringops -falign-loops -ftree-vectorize -fno-strict-overflow -mtune=generic -pthread -DKSR_PTHREAD_MUTEX_SHARED -Wall -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kamailio-5.6.3=. -fstack-protector-strong -Wformat -Werror=format-security -DVERSION_NODATE   -DNAME='"kamailio"' -DVERSION='"5.6.3"' -DARCH='"x86_64"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 12.2.0"' -D__CPU_x86_64 -D__OS_linux -DVERSIONVAL=5006003 -DCFG_DIR='"/etc/kamailio/"' -DSHARE_DIR='"/usr/share/kamailio/"' -DRUN_DIR='"/var/run/kamailio/"' -DPKG_MALLOC -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLOCKLIST -DUSE_NAPTR -DWITH_XAVP -DMEM_JOIN_FREE -DF_MALLOC -DQ_MALLOC -DTLSF_MALLOC -DDBG_SR_MEMORY -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS -DMALLOC_STATS -DUSE_SCTP -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DHAVE_SCHED_SETSCHEDULER -DHAVE_IP_MREQN -DUSE_RAW_SOCKS -DHAVE_EPOLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT  -I/usr/include/python3.11 -I/usr/include/python3.11 -DMOD_NAME='"app_python3"' -c apy_kemi.c -o apy_kemi.o -MMD -MP
apy_kemi.c: In function 'sr_apy_kemi_exec_func':
apy_kemi.c:1845:50: error: 'PyThreadState' {aka 'struct _ts'} has no member named 'frame'; did you mean 'cframe'?
 1845 |                                 pframe = pstate->frame;
      |                                                  ^~~~~
      |                                                  cframe
In file included from apy_kemi.c:28:

linuxmaniac avatar Jan 31 '23 11:01 linuxmaniac

Sorry for the noise, I just found the other fixes in master.

linuxmaniac avatar Jan 31 '23 11:01 linuxmaniac