pjproject icon indicating copy to clipboard operation
pjproject copied to clipboard

strtok_r in pjsip/src/test/test.c breaks building with mingw

Open ednt opened this issue 3 years ago • 0 comments

Describe the bug

strtok_r in pjsip/src/test/test.c breaks building with mingw because strtok_r is not available in mingw. As a temporary fix I enabled #define strtok_r strtok_s by uncommenting the if which is arround.

Steps to reproduce

use mingw and run ./configure make dep make

PJSIP version

2.12.1

Context

Windows 10 x64 with mingw32

Log, call stack, etc

gcc -o ../bin/pjsip-test-i686-pc-mingw32 \ompat/os_auto.h
config.s     output/pjsip-test-i686-pc-mingw32/main.o  output/pjsip-test-i686-pc-mingw32/dlg_core_test.o  output/pjsip-test-i686-pc-mingw32/dns_test.o  output/pjsip-test-i686-pc-mingw32/msg_err_test.o  output/pjsip-test-i686-pc-mingw32/msg_logger.o  output/pjsip-test-i686-pc-mingw32/msg_test.o  output/pjsip-test-i686-pc-mingw32/multipart_test.o  output/pjsip-test-i686-pc-mingw32/regc_test.o  output/pjsip-test-i686-pc-mingw32/test.o  output/pjsip-test-i686-pc-mingw32/transport_loop_test.o  output/pjsip-test-i686-pc-mingw32/transport_tcp_test.o  output/pjsip-test-i686-pc-mingw32/transport_test.o  output/pjsip-test-i686-pc-mingw32/transport_udp_test.o  output/pjsip-test-i686-pc-mingw32/tsx_basic_test.o  output/pjsip-test-i686-pc-mingw32/tsx_bench.o  output/pjsip-test-i686-pc-mingw32/tsx_uac_test.o  output/pjsip-test-i686-pc-mingw32/tsx_uas_test.o  output/pjsip-test-i686-pc-mingw32/txdata_test.o  output/pjsip-test-i686-pc-mingw32/uri_test.o  output/pjsip-test-i686-pc-mingw32/inv_offer_answer_test.o -lpjsip-i686-pc-mingw32 -lpjsip-ua-i686-pc-mingw32 -lpjsip-simple-i686-pc-mingw32  -lpjmedia-codec-i686-pc-mingw32 -lpjmedia-videodev-i686-pc-mingw32 -lpjmedia-i686-pc-mingw32 -lpjmedia-audiodev-i686-pc-mingw32 -lpjlib-util-i686-pc-mingw32 -lpjnath-i686-pc-mingw32 -lpj-i686-pc-mingw32  -lsrtp-i686-pc-mingw32 -lresample-i686-pc-mingw32 -lgsmcodec-i686-pc-mingw32   -lm -lwinmm -lole32 -lws2_32 -lwsock32 -lpthread    -Lc:/EDNT/entwicklung/PJSIP/build/pjproject/pjlib/lib -Lc:/EDNT/entwicklung/PJSIP/build/pjproject/pjlib-util/lib -Lc:/EDNT/entwicklung/PJSIP/build/pjproject/pjnath/lib -Lc:/EDNT/entwicklung/PJSIP/build/pjproject/pjmedia/lib -Lc:/EDNT/entwicklung/PJSIP/build/pjproject/pjsip/lib -Lc:/EDNT/entwicklung/PJSIP/build/pjproject/third_party/lib
output/pjsip-test-i686-pc-mingw32/test.o:test.c.text+0x257): undefined reference to `strtok_r'
output/pjsip-test-i686-pc-mingw32/test.o:test.c.text+0x2b5): undefined reference to `strtok_r'
collect2.exe: error: ld returned 1 exit statusitten to 'build.mak', and 'os-auto.mak' in various build directories, and pjlib/include/pj/compat/os_auto.h.
make[2]: *** [../bin/pjsip-test-i686-pc-mingw32] Error 1
make[2]: Leaving directory `/c/EDNT/entwicklung/PJSIP/build/pjproject/pjsip/build'
make[1]: *** [pjsip-test-i686-pc-mingw32] Error 2
make[1]: Leaving directory `/c/EDNT/entwicklung/PJSIP/build/pjproject/pjsip/build'
make: *** [all] Error 1

ednt avatar Jun 07 '22 10:06 ednt