[asterisk-bugs] [JIRA] (ASTERISK-30296) Undefined symbol on naive RockyLinux 8 system

George Joseph (JIRA) noreply at issues.asterisk.org
Fri Nov 11 06:05:09 CST 2022


    [ https://issues.asterisk.org/jira/browse/ASTERISK-30296?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=260619#comment-260619 ] 

George Joseph edited comment on ASTERISK-30296 at 11/11/22 6:04 AM:
--------------------------------------------------------------------

I am using the bundled pjproject.
{code}
# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/8/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.rockylinux.org/ --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --with-isl --disable-libmpx --enable-offload-targets=nvptx-none --without-cuda-driver --enable-gnu-indirect-function --enable-cet --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
Thread model: posix
gcc version 8.5.0 20210514 (Red Hat 8.5.0-10) (GCC)
# rpm -qa |grep binutils
binutils-2.30-113.el8.x86_64
binutils-devel-2.30-113.el8.x86_64

./configure --libdir=/usr/lib64 --with-jansson-bundled=yes

gcc -o res_pjsip.o -c res_pjsip.c -MD -MT res_pjsip.o -MF .res_pjsip.o.d -MP -pthread -I/root/asterisk-20.0.0/include    -I/usr/include/libxml2  -pipe -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations   -g3  -O3  -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -march=native -fPIC -DAST_MODULE=\"res_pjsip\" -DAST_MODULE_SELF_SYM=__internal_res_pjsip_self  -DPJ_AUTOCONF=1 -DPJ_IS_BIG_ENDIAN=0 -DPJ_IS_LITTLE_ENDIAN=1 -I/root/asterisk-20.0.0/third-party/pjproject/source/pjlib/include -I/root/asterisk-20.0.0/third-party/pjproject/source/pjlib-util/include -I/root/asterisk-20.0.0/third-party/pjproject/source/pjnath/include -I/root/asterisk-20.0.0/third-party/pjproject/source/pjmedia/include -I/root/asterisk-20.0.0/third-party/pjproject/source/pjsip/include
/root/asterisk-20.0.0/build_tools/make_linker_version_script res_pjsip "" "/root/asterisk-20.0.0"

gcc -o res_pjsip.so -pthread     -shared -Wl,--version-script,res_pjsip.exports,--warn-common  res_pjsip.o res_pjsip/security_events.o res_pjsip/pjsip_options.o res_pjsip/config_global.o res_pjsip/pjsip_transport_events.o res_pjsip/pjsip_message_filter.o res_pjsip/pjsip_resolver.o res_pjsip/config_system.o res_pjsip/config_domain_aliases.o res_pjsip/config_transport.o res_pjsip/pjsip_distributor.o res_pjsip/pjsip_configuration.o res_pjsip/presence_xml.o res_pjsip/pjsip_session.o res_pjsip/location.o res_pjsip/pjsip_global_headers.o res_pjsip/pjsip_transport_management.o res_pjsip/pjsip_cli.o res_pjsip/config_auth.o res_pjsip/pjsip_scheduler.o  
{code}



was (Author: tilghman):
I am using the bundled pjproject.

# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/8/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.rockylinux.org/ --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --with-isl --disable-libmpx --enable-offload-targets=nvptx-none --without-cuda-driver --enable-gnu-indirect-function --enable-cet --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
Thread model: posix
gcc version 8.5.0 20210514 (Red Hat 8.5.0-10) (GCC)
# rpm -qa |grep binutils
binutils-2.30-113.el8.x86_64
binutils-devel-2.30-113.el8.x86_64

./configure --libdir=/usr/lib64 --with-jansson-bundled=yes

gcc -o res_pjsip.o -c res_pjsip.c -MD -MT res_pjsip.o -MF .res_pjsip.o.d -MP -pthread -I/root/asterisk-20.0.0/include    -I/usr/include/libxml2  -pipe -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations   -g3  -O3  -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -march=native -fPIC -DAST_MODULE=\"res_pjsip\" -DAST_MODULE_SELF_SYM=__internal_res_pjsip_self  -DPJ_AUTOCONF=1 -DPJ_IS_BIG_ENDIAN=0 -DPJ_IS_LITTLE_ENDIAN=1 -I/root/asterisk-20.0.0/third-party/pjproject/source/pjlib/include -I/root/asterisk-20.0.0/third-party/pjproject/source/pjlib-util/include -I/root/asterisk-20.0.0/third-party/pjproject/source/pjnath/include -I/root/asterisk-20.0.0/third-party/pjproject/source/pjmedia/include -I/root/asterisk-20.0.0/third-party/pjproject/source/pjsip/include
/root/asterisk-20.0.0/build_tools/make_linker_version_script res_pjsip "" "/root/asterisk-20.0.0"

gcc -o res_pjsip.so -pthread     -shared -Wl,--version-script,res_pjsip.exports,--warn-common  res_pjsip.o res_pjsip/security_events.o res_pjsip/pjsip_options.o res_pjsip/config_global.o res_pjsip/pjsip_transport_events.o res_pjsip/pjsip_message_filter.o res_pjsip/pjsip_resolver.o res_pjsip/config_system.o res_pjsip/config_domain_aliases.o res_pjsip/config_transport.o res_pjsip/pjsip_distributor.o res_pjsip/pjsip_configuration.o res_pjsip/presence_xml.o res_pjsip/pjsip_session.o res_pjsip/location.o res_pjsip/pjsip_global_headers.o res_pjsip/pjsip_transport_management.o res_pjsip/pjsip_cli.o res_pjsip/config_auth.o res_pjsip/pjsip_scheduler.o  


> Undefined symbol on naive RockyLinux 8 system
> ---------------------------------------------
>
>                 Key: ASTERISK-30296
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-30296
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: Resources/res_pjsip
>    Affects Versions: 20.0.0
>            Reporter: Tilghman Lesher
>            Assignee: Unassigned
>
> Optimizations remove the symbol pjsip_tls_transport_restart with a naive install of Asterisk 20.0.0 on RockyLinux 8.  Turning on DONT_OPTIMIZE resolves the problem.
> ERROR[166734]: loader.c:2513 load_modules: Error loading module 'res_pjsip.so': /usr/lib64/asterisk/modules/res_pjsip.so: undefined symbol: pjsip_tls_transport_restart
> # strings main/libasteriskpj.so.2 |grep transport_restart
> pjsip_tcp_transport_restart
> pjsip_udp_transport_restart2
> pjsip_udp_transport_restart
> pjsip_tcp_transport_restart
> pjsip_udp_transport_restart2
> pjsip_udp_transport_restart
> transport_restarted
> pjsip_udp_transport_restart2
> pjsip_udp_transport_restart
> pjsip_tcp_transport_restart
> After turning on DONT_OPTIMIZE:
> # strings main/libasteriskpj.so.2 |grep transport_restart
> pjsip_udp_transport_restart2
> pjsip_tls_transport_restart
> pjsip_tcp_transport_restart
> pjsip_udp_transport_restart
> pjsip_udp_transport_restart
> pjsip_udp_transport_restart2
> pjsip_tcp_transport_restart
> pjsip_tls_transport_restart
> transport_restarted
> pjsip_tls_transport_restart
> pjsip_udp_transport_restart2
> pjsip_udp_transport_restart
> pjsip_tcp_transport_restart



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list