Coder Social home page Coder Social logo

pjsip's People

Contributors

cbanta avatar chebur avatar hung-hsun avatar imapheven avatar joseexposito avatar slangley avatar welljsjs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pjsip's Issues

Can't compile on version 2.6.0

I have a very small and isolated project that makes use of pjsip. I can compile perfectly using this pod, except on version 2.6.0. The error is:

Undefined symbols for architecture x86_64:
  "_SSL_is_server", referenced from:
      _create_ssl in libpj-apple-darwin_ios.a(ssl_sock_ossl.o)
  "_EC_curve_nid2nist", referenced from:
      _init_openssl in libpj-apple-darwin_ios.a(ssl_sock_ossl.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

With version 2.5.5.2 and lower, I have no problems.

linking issue after adding in your project

Undefined symbols for architecture arm64:
"_WebRtcAec_Process", referenced from:
_webrtc_aec_cancel_echo in libpjmedia-apple-darwin_ios.a(echo_webrtc.o)
"_WebRtcAec_BufferFarend", referenced from:
_webrtc_aec_cancel_echo in libpjmedia-apple-darwin_ios.a(echo_webrtc.o)
"_WebRtcNs_Process", referenced from:
_webrtc_aec_cancel_echo in libpjmedia-apple-darwin_ios.a(echo_webrtc.o)
"_WebRtcAec_Create", referenced from:
_webrtc_aec_create in libpjmedia-apple-darwin_ios.a(echo_webrtc.o)
"_WebRtcAec_Init", referenced from:
_webrtc_aec_create in libpjmedia-apple-darwin_ios.a(echo_webrtc.o)
_webrtc_aec_reset in libpjmedia-apple-darwin_ios.a(echo_webrtc.o)
"_WebRtcAec_aec_core", referenced from:
_webrtc_aec_create in libpjmedia-apple-darwin_ios.a(echo_webrtc.o)
"_WebRtcNs_Free", referenced from:
_webrtc_aec_create in libpjmedia-apple-darwin_ios.a(echo_webrtc.o)
_webrtc_aec_destroy in libpjmedia-apple-darwin_ios.a(echo_webrtc.o)
"_ABGRToARGB", referenced from:
_conv_to_bgra in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_I422ToARGB", referenced from:
_conv_to_bgra in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_RGB24ToI420", referenced from:
_conv_to_i420 in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_WebRtcAec_set_config", referenced from:
_set_config in libpjmedia-apple-darwin_ios.a(echo_webrtc.o)
"_ARGBToI420", referenced from:
_conv_from_bgra in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
_conv_to_i420 in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_YUY2ToI420", referenced from:
_conv_to_i420 in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_UYVYToI420", referenced from:
_conv_to_i420 in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_WelsCreateSVCEncoder", referenced from:
oh264_alloc_codec(pjmedia_vid_codec_factory*, pjmedia_vid_codec_info const*, pjmedia_vid_codec**) in libpjmedia-codec-apple-darwin_ios.a(openh264.o)
"_I420ToABGR", referenced from:
_conv_from_i420 in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_ARGBToRGB24", referenced from:
_conv_from_bgra in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_WebRtcAec_Free", referenced from:
_webrtc_aec_create in libpjmedia-apple-darwin_ios.a(echo_webrtc.o)
_webrtc_aec_destroy in libpjmedia-apple-darwin_ios.a(echo_webrtc.o)
"_YUY2ToARGB", referenced from:
_conv_to_bgra in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_UYVYToARGB", referenced from:
_conv_to_bgra in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_ARGBToYUY2", referenced from:
_conv_from_bgra in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_ARGBToUYVY", referenced from:
_conv_from_bgra in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_WebRtcNs_Analyze", referenced from:
_webrtc_aec_cancel_echo in libpjmedia-apple-darwin_ios.a(echo_webrtc.o)
"_ABGRToI420", referenced from:
_conv_to_i420 in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_ARGBScale", referenced from:
_conv_from_bgra in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_I420ToRGB24", referenced from:
_conv_from_i420 in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_WelsDestroySVCEncoder", referenced from:
oh264_alloc_codec(pjmedia_vid_codec_factory*, pjmedia_vid_codec_info const*, pjmedia_vid_codec**) in libpjmedia-codec-apple-darwin_ios.a(openh264.o)
oh264_dealloc_codec(pjmedia_vid_codec_factory*, pjmedia_vid_codec*) in libpjmedia-codec-apple-darwin_ios.a(openh264.o)
"_pjmedia_vid_dev_subsys_shutdown", referenced from:
_pjsua_vid_subsys_destroy in libpjsua-apple-darwin_ios.a(pjsua_vid.o)
"_ARGBToI422", referenced from:
_conv_from_bgra in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_I420ToYUY2", referenced from:
_conv_from_i420 in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_I420ToUYVY", referenced from:
_conv_from_i420 in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_I420ToARGB", referenced from:
_conv_from_i420 in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
_conv_to_bgra in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_WebRtcAec_get_error_code", referenced from:
_print_webrtc_aec_error in libpjmedia-apple-darwin_ios.a(echo_webrtc.o)
"_I420ToI422", referenced from:
_conv_from_i420 in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_I420Scale", referenced from:
_conv_from_i420 in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_WebRtcAec_enable_delay_agnostic", referenced from:
_webrtc_aec_create in libpjmedia-apple-darwin_ios.a(echo_webrtc.o)
"_ARGBToABGR", referenced from:
_conv_from_bgra in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_WebRtcNs_Create", referenced from:
_webrtc_aec_create in libpjmedia-apple-darwin_ios.a(echo_webrtc.o)
"_RGB24ToARGB", referenced from:
_conv_to_bgra in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_WelsCreateDecoder", referenced from:
oh264_alloc_codec(pjmedia_vid_codec_factory*, pjmedia_vid_codec_info const*, pjmedia_vid_codec**) in libpjmedia-codec-apple-darwin_ios.a(openh264.o)
oh264_codec_open(pjmedia_vid_codec*, pjmedia_vid_codec_param*) in libpjmedia-codec-apple-darwin_ios.a(openh264.o)
"_I422ToI420", referenced from:
_conv_to_i420 in libpjmedia-apple-darwin_ios.a(converter_libyuv.o)
"_pjmedia_vid_dev_subsys_init", referenced from:
_pjsua_vid_subsys_init in libpjsua-apple-darwin_ios.a(pjsua_vid.o)
"_WebRtcNs_Init", referenced from:
_webrtc_aec_create in libpjmedia-apple-darwin_ios.a(echo_webrtc.o)
"_WelsDestroyDecoder", referenced from:
oh264_alloc_codec(pjmedia_vid_codec_factory*, pjmedia_vid_codec_info const*, pjmedia_vid_codec**) in libpjmedia-codec-apple-darwin_ios.a(openh264.o)
oh264_dealloc_codec(pjmedia_vid_codec_factory*, pjmedia_vid_codec*) in libpjmedia-codec-apple-darwin_ios.a(openh264.o)
ld: symbol(s) not found for architecture arm64

Unknown selected data source for Port iPhone Microphone (type: MicrophoneBuiltIn)

Hello,

I use 'pod pjsip' and register successfully.
However, as I "makeCall", it will get error and its log as follow:
ERROR: [AVAudioSession Notify Thread] AVAudioSessionPortImpl.mm:52: ValidateRequiredFields: Unknown selected data source for Port iPhone Microphone (type: MicrophoneBuiltIn)

I find out there are some modify of pjmedia.
"https://trac.pjsip.org/repos/changeset/5142"

Will this project do any update about this modification?

Thank you very much!

Lipo doesn't produce FAT libraries

Hi!
Thanks for your great work with building pjsip for iOS, this saves hours of time.

I've found an issue with build script: build.sh produces libraries for different iOS architectures and not FAT libraries that include them. I'm not an expert in scripting, but looks like it grep incorrect filename in temp file, searching files like libpj-armv7-apple-darwin_ios.a instead of something like libpj-*, and this way EXISTS path never executes.

Linking Error

My project, which includes pjsip compiles well for all possible simulators but I have linking issue when try compile it for real device target.

Here is my error message:

clang: error: linker command failed with exit code 1 (use -v to see invocation)

Anybody knows something about what I can do?

pjsip libs

Hi !

During my attempt to upgrade to the latest version, I’m getting the issue of "Undefined symbols for architecture" for both x86_64 and arm64.

After some digging I figured out that compiled libs are missing in the folder "build > pjproject > src > pjsip". I tried the manual compilation, but they are still not generated.

Did something particular change with the upgrade ? Or did I miss something new?

Want to enable G729 codec in PJSIP

Hi,
I want to enable G729 codec in PJSIP for iOS architectures like armv7, armv7s and x64.
Your help will be much appreciated. I am struggling from last like 2 weeks.

Regards,
Arslan

App crash on exit from background

Hi there,

The library works fine for me. But if a device is in a background mode more then about 60min (I don't know exactly after how much time it begins happens), and I press Home button, I see in app console (see bold text):

--end msg--
12:27:30.152 pjsua_acc.c ....SIP outbound status for acc 0 is not active
12:27:30.153 pjsua_acc.c ....sip:sip.ХХХХХХХ@ХХХХХХХ:5090: registration success, status=200 (OK), will re-register in 300 seconds
12:27:30.153 pjsua_acc.c ....Keep-alive timer started for acc 0, destination:34.200.47.37:5090, interval:15s

14:01:48.130 ioq_select Attempting to replace UDP socket 6
14:02:06.417 ioq_select Error replacing socket: Invalid argument

After this I let the device go into the background and press Home again, I see:

14:02:15.139 udp0x104134e50 Warning: pj_ioqueue_recvfrom: [err 120009] Bad file descriptor
14:02:15.139 udp0x104134e50 Warning: pj_ioqueue_recvfrom: [err 120009] Bad file descriptor
14:02:15.139 udp0x104134e50 Warning: pj_ioqueue_recvfrom: [err 120009] Bad file descriptor

If I open the app, it crashes with output:

14:05:31.888 pjsua_acc.c Error sending keep-alive packet: Bad file descriptor [status=120009]
2018-01-22 14:05:31.933126+0200 OneCall[686:338791] [] nw_socket_get_input_frames recvmsg(fd 7, 1024 bytes): [57] Socket is not connected
2018-01-22 14:05:31.940869+0200 OneCall[686:362287] dnssd_clientstub write_all(8) DEFUNCT
2018-01-22 14:05:31.940918+0200 OneCall[686:362287] dnssd_clientstub deliver_request ERROR: write_all(8, 57 bytes) failed
2018-01-22 14:05:31.940958+0200 OneCall[686:362287] dnssd_clientstub write_all(8) DEFUNCT
14:05:32.291 pjsua_core.c .TX 547 bytes Request msg REGISTER/cseq=29669 (tdta0x104867600) to UDP 34.200.47.37:5090:
REGISTER sip:XXXXXXXXXi:5090 SIP/2.0

Via: SIP/2.0/UDP 81.218.78.4:65506;rport;branch=z9hG4bKPj2YM3brijDW.QXvxrE2gQ03VoH56EUUZc

Max-Forwards: 70

From: sip:sip.XXXXXXX@rXXXXXXX;tag=PnT4O2Z9SEhGW9BYA2NSDHoF3qrHT2am

To: sip:sip.XXXXXXX@XXXXXXXXX

Call-ID: XXXXXXXXXXXXXXXXXXXXXxvcHv

CSeq: 29669 REGISTER

Contact: sip:sip.XXXXXXXXXXX@XXXXXXXXX;ob

Expires: 300

Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, INFO, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS

Content-Length: 0

--end msg--
14:05:32.291 tsx0x104861ea8 .Failed to send Request msg REGISTER/cseq=29669 (tdta0x104867600)! err=120009 (Bad file descriptor)
14:05:32.291 pjsua_acc.c ...SIP registration failed, status=503 (Bad file descriptor)
14:05:32.291 pjsua_acc.c ...Scheduling re-registration retry for acc 0 in 0 seconds..
14:05:32.292 sip_reg.c Error sending request, status=120009
Assertion failed: (a->addr.sa_family == PJ_AF_INET || a->addr.sa_family == PJ_AF_INET6), function pj_sockaddr_get_addr, file ../src/pj/sock_common.c, line 314.
2018-01-22 14:07:13.359484+0200 OneCall[686:338778] Task .<7> finished with error - code: -1001

So do you have any idea about it? The app supports only iOS 11.2. I checked it on two devices.
Thank you,
Igor.

PS I found this issue, it's looks like the same bug: https://www.spinics.net/lists/pjsip/msg20352.html
Maybe needed set PJ_ACTIVESOCK_TCP_IPHONE_OS_BG to 0 in pjsip/build/pjproject/src/pjlib/include/pj/compat/os_auto.h?
Can you help me? Please.

Unable to find a specification for `OpenSSL-Universal

Update all pods
Analyzing dependencies
Pre-downloading: pjsip from https://github.com/chebur/pjsip.git
[!] Unable to find a specification for OpenSSL-Universal (= 1.0.1.j-2) depended upon by pjsip (2.3.0.6).

Any ideas how to resolve this?

真机运行 报错 arm64

pod 版本 log打印是 2.6, 不是更新到 2.7.1 了吗?
真机运行报错,模拟器可以运行。是版本的问题吗?
Showing All Issues
ld: '/Users/weci/Desktop/MyDemo/PJSIPSwiftDemo/Pods/pjsip/build/pjproject/src/pjmedia/lib/libpjmedia-videodev-apple-darwin_ios.a(ios_opengl_dev.o)' does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. file '/Users/weci/Desktop/MyDemo/PJSIPSwiftDemo/Pods/pjsip/build/pjproject/src/pjmedia/lib/libpjmedia-videodev-apple-darwin_ios.a' for architecture arm64

UI API called on a background thread when video call starts

I'm stuck on this issue since I started implementing the video features. I'm using a simple flow.

Here is the account configuration I use for my endpoint :

    acc_cfg.vid_in_auto_show = PJ_FALSE;
    acc_cfg.vid_out_auto_transmit = PJ_FALSE;
    acc_cfg.vid_wnd_flags = PJMEDIA_VID_DEV_WND_BORDER | PJMEDIA_VID_DEV_WND_RESIZABLE;
    acc_cfg.vid_cap_dev = PJMEDIA_VID_DEFAULT_CAPTURE_DEV;
    acc_cfg.vid_rend_dev = PJMEDIA_VID_DEFAULT_RENDER_DEV;
    acc_cfg.reg_retry_interval = 100;
    acc_cfg.reg_first_retry_interval = 10;

And I am only setting to vid_cnt = 1 in the reinvite method.

My call starts, the video is transmitted to the callee, and I receive the video. But everytime a call is confirmed (the callee answer the call) I got two Main Thread Checker messages :

Main Thread Checker: UI API called on a background thread: -[UIView initWithFrame:]
PID: 29256, TID: 7292045, Thread name: (none), Queue name: com.apple.root.default-qos.overcommit, QoS: 21
Backtrace:
4   APPNAME                          0x0000000101178970 darwin_init_view + 216
5   APPNAME                          0x0000000101177f10 darwin_stream_set_cap + 576
6   APPNAME                          0x00000001011600cc pjmedia_vid_dev_stream_set_cap + 204
7   APPNAME                          0x00000001012346b0 create_vid_win + 1688
8   APPNAME                          0x0000000101233e9c pjsua_vid_channel_update + 1452
9   APPNAME                          0x0000000101223220 pjsua_media_channel_update + 3112
10  APPNAME                          0x000000010120a420 pjsua_call_on_media_update + 372
11  APPNAME                          0x00000001011f12b4 inv_negotiate_sdp + 268
12  APPNAME                          0x00000001011f1018 inv_check_sdp_in_incoming_msg + 1532
13  APPNAME                          0x00000001011f20fc inv_on_state_early + 704
14  APPNAME                          0x00000001011f0900 mod_inv_on_tsx_state + 116
15  APPNAME                          0x00000001011da8f0 pjsip_dlg_on_tsx_state + 244
16  APPNAME                          0x00000001011dcc74 mod_ua_on_tsx_state + 88
17  APPNAME                          0x00000001011d0f58 tsx_set_state + 664
18  APPNAME                          0x00000001011d2bcc tsx_on_state_proceeding_uac + 596
19  APPNAME                          0x00000001011d1748 pjsip_tsx_recv_msg + 232
20  APPNAME                          0x00000001011d21a0 mod_tsx_layer_on_rx_response + 236
21  APPNAME                          0x00000001011b757c pjsip_endpt_process_rx_data + 724
22  APPNAME                          0x00000001011b6a90 endpt_on_rx_msg + 576
23  APPNAME                          0x00000001011c1f0c pjsip_tpmgr_receive_packet + 1872
24  APPNAME                          0x00000001011c4d2c udp_on_read_complete + 272
25  APPNAME                          0x00000001010dbb64 ioqueue_dispatch_read_event + 976
26  APPNAME                          0x00000001010de6a0 pj_ioqueue_poll + 1268
27  APPNAME                          0x00000001011b7078 pjsip_endpt_handle_events2 + 360
28  APPNAME                          0x000000010121824c pjsua_handle_events + 72
29  APPNAME                          0x0000000101217778 worker_thread + 52
30  APPNAME                          0x00000001010e0b18 thread_main + 188
31  libsystem_pthread.dylib             0x0000000181d61220 <redacted> + 272
32  libsystem_pthread.dylib             0x0000000181d61110 <redacted> + 0
33  libsystem_pthread.dylib             0x0000000181d5fb10 thread_start + 4

I looked for a UIView init but I could not find any.

Thanks for your help

Can't find pjsib on CocoaPod

➜ LunaIphone git:(master) ✗ pod --version
0.18.1
➜ LunaIphone git:(master) ✗ pod search pjsip
[!] Unable to find a pod with name matching pjsip

#include <pjsua-lib/pjsua.h> file not found

I'm using cocoapods to install pjsip. When finish I call #include <pjsua-lib/pjsua.h> in my owen file to start pjsip. But when build, xcode getting an error :
"pjsua-lib/pjsua.h file not found" in my include. How can I solve this error.
Thanks

openh265 build script not working as expected

Unarchiving /Users/alan/work/Wickr/vanilla/pjsip/build/openh264/src.download...
Builing for armv7...
Builing for armv7s...
Builing for arm64...
Builing for i386...
asm_inc.asm:63: error: parser: instruction expected
codec/common/x86/cpuid.asm:196: error: symbol XGETBV' redefined make: *** [codec/common/x86/cpuid.o] Error 1 asm_inc.asm:63: error: parser: instruction expected make: *** [codec/encoder/core/x86/coeff.o] Error 1 Builing for x86_64... nasm: fatal: unrecognised output formatmacho64' - use -hf for a list
type nasm -h' for help make: *** [codec/common/x86/cpuid.o] Error 1 nasm: fatal: unrecognised output formatmacho64' - use -hf for a list
type `nasm -h' for help
make: *** [codec/encoder/core/x86/coeff.o] Error 1
Lipo libs to /Users/alan/work/Wickr/vanilla/pjsip/build/openh264/lib...
fatal error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/lipo: can't open input file: /Users/alan/work/Wickr/vanilla/pjsip/build/openh264/build/i386/lib/libopenh264.a (No such file or directory)

拨打电话 崩溃

真机:
20:28:50.661 coreaudio_dev. !...core audio stream started
CRMSystemClient(2611,0x1b5977b80) malloc: *** mach_vm_map(size=4295065600) failed (error code=3)
*** error: can't allocate region
*** set a breakpoint in malloc_error_break to debug
20:28:50.673 except.c .!!!FATAL: unhandled exception PJLIB/No memory!

模拟器
probably re-registering existing thread IOS

Podfile issue

As per your instructions we added pod 'pjsip' in the Podfile.

After running pod install, we get this error:

[!] The dependency pjsip is not used in any concrete target.

linker command failed with exit code 1 (use -v to see invocation)

I have compiled and built openssl, openh264 and pjsip. And I have included all libraries.

Now I am receiving linker errors

ld: warning: directory not found for option '-L../../../../../video/ffmpeg-iphone/build/built/armv7/lib'
ld: warning: directory not found for option '-L/Users/jriyaazpashapasha/Shuhaib/pjsip/build/openh264-new/lib-arm64'
ld: warning: directory not found for option '-L/Users/jriyaazpashapasha/Shuhaib/pjsip/build/openh264-new/lib-armv7'
ld: warning: directory not found for option '-L/Users/jriyaazpashapasha/Shuhaib/pjsip/build/openh264-new/lib-armv7s'
ld: warning: directory not found for option '-L/Users/jriyaazpashapasha/Shuhaib/pjsip/build/openh264-new/lib-i386'
ld: warning: directory not found for option '-L/Users/jriyaazpashapasha/Shuhaib/pjsip/build/openh264-new/lib-x86_64'
ld: warning: ignoring file /Users/jriyaazpashapasha/Shuhaib/pjsip/build/pjproject/src/libyuv-lib/libavfilter.a, file was built for archive which is not the architecture being linked (i386): /Users/jriyaazpashapasha/Shuhaib/pjsip/build/pjproject/src/libyuv-lib/libavfilter.a
ld: warning: ignoring file /Users/jriyaazpashapasha/Shuhaib/pjsip/build/pjproject/src/libyuv-lib/libavresample.a, file was built for archive which is not the architecture being linked (i386): /Users/jriyaazpashapasha/Shuhaib/pjsip/build/pjproject/src/libyuv-lib/libavresample.a
ld: warning: ignoring file /Users/jriyaazpashapasha/Shuhaib/pjsip/build/pjproject/src/libyuv-lib/libavformat.a, file was built for archive which is not the architecture being linked (i386): /Users/jriyaazpashapasha/Shuhaib/pjsip/build/pjproject/src/libyuv-lib/libavformat.a
ld: warning: ignoring file /Users/jriyaazpashapasha/Shuhaib/pjsip/build/pjproject/src/libyuv-lib/libavcodec.a, file was built for archive which is not the architecture being linked (i386): /Users/jriyaazpashapasha/Shuhaib/pjsip/build/pjproject/src/libyuv-lib/libavcodec.a
ld: warning: ignoring file /Users/jriyaazpashapasha/Shuhaib/pjsip/build/pjproject/src/libyuv-lib/libavdevice.a, file was built for archive which is not the architecture being linked (i386): /Users/jriyaazpashapasha/Shuhaib/pjsip/build/pjproject/src/libyuv-lib/libavdevice.a
ld: warning: ignoring file /Users/jriyaazpashapasha/Shuhaib/pjsip/build/pjproject/src/libyuv-lib/libswscale.a, file was built for archive which is not the architecture being linked (i386): /Users/jriyaazpashapasha/Shuhaib/pjsip/build/pjproject/src/libyuv-lib/libswscale.a
ld: warning: ignoring file /Users/jriyaazpashapasha/Shuhaib/pjsip/build/pjproject/src/libyuv-lib/libavutil.a, file was built for archive which is not the architecture being linked (i386): /Users/jriyaazpashapasha/Shuhaib/pjsip/build/pjproject/src/libyuv-lib/libavutil.a
Undefined symbols for architecture i386:
"vtable for __cxxabiv1::__class_type_info", referenced from:
typeinfo for ISVCDecoder in libopenh264.a(welsDecoderExt.o)
typeinfo for ISVCEncoder in libopenh264.a(welsEncoderExt.o)
typeinfo for WelsDec::IWelsTrace in libopenh264.a(welsCodecTrace.o)
typeinfo for WelsSVCEnc::CMemoryAlign in libopenh264.a(memory_align.o)
typeinfo for WelsSVCEnc::CWelsPreProcess in libopenh264.a(wels_preprocess.o)
typeinfo for IWelsVP in libopenh264.a(WelsFrameWork.o)
typeinfo for IWelsVP in libopenh264.a(downsample.o)
...
NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
"vtable for __cxxabiv1::_si_class_type_info", referenced from:
typeinfo for WelsDec::CWelsDecoder in libopenh264.a(welsDecoderExt.o)
typeinfo for WelsSVCEnc::CWelsH264SVCEncoder in libopenh264.a(welsEncoderExt.o)
typeinfo for WelsDec::CWelsTraceBase in libopenh264.a(welsCodecTrace.o)
typeinfo for WelsDec::CWelsTraceFile in libopenh264.a(welsCodecTrace.o)
typeinfo for WelsDec::CWelsCodecTrace in libopenh264.a(welsCodecTrace.o)
typeinfo for nsWelsVP::CVpFrameWork in libopenh264.a(WelsFrameWork.o)
typeinfo for nsWelsVP::CDownsampling in libopenh264.a(downsample.o)
...
NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
"operator delete(void
)", referenced from:
WelsDec::CWelsDecoder::~CWelsDecoder() in libopenh264.a(welsDecoderExt.o)
WelsCreateDecoder in libopenh264.a(welsDecoderExt.o)
WelsSVCEnc::CWelsH264SVCEncoder::InitEncoder() in libopenh264.a(welsEncoderExt.o)
WelsSVCEnc::CWelsH264SVCEncoder::~CWelsH264SVCEncoder() in libopenh264.a(welsEncoderExt.o)
WelsSVCEnc::CWelsH264SVCEncoder::~CWelsH264SVCEncoder() in libopenh264.a(welsEncoderExt.o)
WelsSVCEnc::CWelsH264SVCEncoder::~CWelsH264SVCEncoder() in libopenh264.a(welsEncoderExt.o)
WelsCreateSVCEncoder in libopenh264.a(welsEncoderExt.o)
...
"operator new(unsigned long)", referenced from:
WelsCreateDecoder in libopenh264.a(welsDecoderExt.o)
WelsSVCEnc::CWelsH264SVCEncoder::InitEncoder() in libopenh264.a(welsEncoderExt.o)
WelsCreateSVCEncoder in libopenh264.a(welsEncoderExt.o)
WelsSVCEnc::WelsInitEncoderExt(WelsSVCEnc::TagWelsEncCtx
, WelsSVCEnc::TagWelsSvcCodingParam
) in libopenh264.a(encoder_ext.o)
WelsDec::CreateWelsTrace(WelsDec::EWelsTraceType, void
) in libopenh264.a(welsCodecTrace.o)
CreateVpInterface in libopenh264.a(WelsFrameWork.o)
nsWelsVP::CreateSpecificVpInterface(IWelsVP
*) in libopenh264.a(WelsFrameWork.o)
...
"___cxa_pure_virtual", referenced from:
vtable for WelsDec::CWelsTraceBase in libopenh264.a(welsCodecTrace.o)
"___gxx_personality_v0", referenced from:
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsDecoderExt.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsEncoderExt.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(encoder_ext.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsCodecTrace.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(memory_align.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(wels_preprocess.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(WelsFrameWork.o)
...
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsDecoderExt.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsEncoderExt.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(encoder_ext.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsCodecTrace.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(memory_align.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(wels_preprocess.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(WelsFrameWork.o)
...
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsDecoderExt.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsEncoderExt.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(encoder_ext.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsCodecTrace.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(memory_align.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(wels_preprocess.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(WelsFrameWork.o)
...
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsDecoderExt.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsEncoderExt.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(encoder_ext.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsCodecTrace.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(memory_align.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(wels_preprocess.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(WelsFrameWork.o)
...
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsDecoderExt.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsEncoderExt.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(encoder_ext.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsCodecTrace.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(memory_align.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(wels_preprocess.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(WelsFrameWork.o)
...
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsDecoderExt.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsEncoderExt.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(encoder_ext.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsCodecTrace.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(memory_align.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(wels_preprocess.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(WelsFrameWork.o)
...
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsDecoderExt.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsEncoderExt.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(encoder_ext.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(welsCodecTrace.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(memory_align.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(wels_preprocess.o)
Dwarf Exception Unwind Info (__eh_frame) in libopenh264.a(WelsFrameWork.o)
...
...
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

cocoapods

hi!

couldn't find how to send the direct message so writing here. could you please push the latest version 2.3 to the cocoapods. thanks.

openh264 header reference broken

when following build instructions (downloading and running build.sh) I get the following error:

../src/pjmedia-codec/openh264.cpp:35:10: fatal error: 'wels/codec_api.h' file not found

include <wels/codec_api.h>

from the project root, codec_api.h lives here: .//src/codec/api/svc/codec_api.h and not under the wels/ directory.

Linking error with v2.6

I use Cocoapods to update this pod to v2.6, and build with Xcode8.3.2 in OSX10.12.4, and got the following error:

Undefined symbols for architecture armv7:
"_SSL_is_server", referenced from:
_set_curves_list in libpj-apple-darwin_ios.a(ssl_sock_ossl.o)
"_EC_curve_nid2nist", referenced from:
_init_openssl in libpj-apple-darwin_ios.a(ssl_sock_ossl.o)
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Can anyone tell me how to fix this? Thank you very much!

Liking error FFMPEG

I'm using XCode 8.3.2, IOS version 10.3 building v2.6 and having issue when calling pjmedia_codec_ffmpeg_vid_init().

Undefined symbols for architecture armv7:
"_pjmedia_codec_ffmpeg_vid_init", referenced from:
-[AppDelegate registeration] in AppDelegate.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Opus as default codec

Hi Thanks a lot for this, it saves a lot of time.
I can see that Opus is enabled. But what setup do I need to make to make PJSIP to offer Opus as available codec on invitation ?
Tnx

getting linker errors in 2.3.0.7

I wasn't sure if this is the correct place for this. I'm getting a few linker errors when trying to move to 2.3.0.7 (2.3.0.6 works great but I'd like to add video to my app).

Undefined symbols for architecture arm64:
"operator new(unsigned long)", referenced from:
WelsCreateDecoder in libopenh264.a(welsDecoderExt.o)
WelsSVCEnc::CWelsH264SVCEncoder::InitEncoder() in libopenh264.a(welsEncoderExt.o)
WelsCreateSVCEncoder in libopenh264.a(welsEncoderExt.o)
WelsSVCEnc::WelsInitEncoderExt(WelsSVCEnc::TagWelsEncCtx**, WelsSVCEnc::TagWelsSvcCodingParam
) in libopenh264.a(encoder_ext.o)
WelsDec::CreateWelsTrace(WelsDec::EWelsTraceType, void
) in libopenh264.a(welsCodecTrace.o)
_CreateVpInterface in libopenh264.a(WelsFrameWork.o)
nsWelsVP::CreateSpecificVpInterface(IWelsVP**) in libopenh264.a(WelsFrameWork.o)
...
"vtable for __cxxabiv1::__class_type_info", referenced from:
typeinfo for ISVCDecoder in libopenh264.a(welsDecoderExt.o)
typeinfo for ISVCEncoder in libopenh264.a(welsEncoderExt.o)
typeinfo for WelsDec::IWelsTrace in libopenh264.a(welsCodecTrace.o)
typeinfo for WelsSVCEnc::CMemoryAlign in libopenh264.a(memory_align.o)
typeinfo for WelsSVCEnc::CWelsPreProcess in libopenh264.a(wels_preprocess.o)
typeinfo for IWelsVP in libopenh264.a(downsample.o)
typeinfo for nsWelsVP::CSceneChangeDetectorVideo in libopenh264.a(SceneChangeDetection.o)

Xcode 7 - Bitcode , How to ?

When i try to run the app from Xcode 7 it gives me an error, Pjsip is not build with Bitcode.

How can i enable the Bitcode ?

Need G729 codec

This is not actually an issue. Your lib works pretty well except it doesn't support G729 codec. Could you please guide me on how can I patch the code to include that codec and compile it and create lib files? I'm totally lost here :( I found a patch file here but I don't know how to use it. https://code.google.com/p/siphon/downloads/list

Can't find pjsip on CocoaPod

I don't what is the reason.

➜ LunaIphone git:(master) ✗ pod --version
0.18.1
➜ LunaIphone git:(master) ✗ pod search pjsip
[!] Unable to find a pod with name matching pjsip

PJSIP_EUNSUPTRANSPORT

在iOS上登录sipServer 的时候, 遇到PJSIP_EUNSUPTRANSPORT错误,
Unable to generate suitable Contact header for registration: Unsupported transport (PJSIP_EUNSUPTRANSPORT)
试过 tcp /udp 都不行 ,
编译的最新 2.7.2 的版本;
请问有什么好的建议么, 谢谢了

2.7.1 release?

When I use Cocoapods, the latest version is 2.6
When will 2.7.1 be released?

armv7 compilation error

Compilation on OS X fails with error
../src/pjmedia-audiodev/alsa_dev.c:37:10: fatal error: 'alsa/asoundlib.h' file not found #include <alsa/asoundlib.h> ^ 1 error generated.

Build process debug build settings

Because the build scripts download and unpack PJSIP, overwriting any previously unpacked pjproject directory, you are unable to modify preprocessor defines that are not directly manipulated by the build script, such as PJ_LOG_MAX_LEVEL in pjproject/src/pjlib/include/pj/config_site_sample.h

It would be great if the build script had a flag to build pjsip with debug symbols enabled and expanded macros (CFLAGS += -g3) and raised the PJ_LOG_MAX_LEVEL to 6. Currently during runtime the max log level is capped at 3 because the runtime setting cannot exceed the value set at build time.

ability to compile for x86_64

Just wondering if you knew if this was possible, I tried duplicating the arm64 lines and changing them to x86_64 but when running the script I get an error like this:

fatal error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/lipo: specifed architecture type (x86_64) for file (third_party/lib-x86_64/libsrtp-arm-apple-darwin9.a) does not match its cputype (16777228) and cpusubtype (0) (should be cputype (16777223) and cpusubtype (3))

example demo 运行 崩溃

example demo pod install 后,运行 崩溃。
2018-01-04 14:17:23.916596+0800 ipjsystest[38600:425988] +[CATransaction synchronize] called within transaction
2018-01-04 14:17:24.359006+0800 ipjsystest[38600:425988] *** Assertion failure in -[UIApplication _runWithMainScene:transitionContext:completion:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit_Sim/UIKit-3698.33.6/UIApplication.m:3529
2018-01-04 14:17:24.366856+0800 ipjsystest[38600:425988] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Application windows are expected to have a root view controller at the end of application launch'
*** First throw call stack:
(
0 CoreFoundation 0x00000001053d312b __exceptionPreprocess + 171
1 libobjc.A.dylib 0x0000000104a67f41 objc_exception_throw + 48
2 CoreFoundation 0x00000001053d82f2 +[NSException raise:format:arguments:] + 98
3 Foundation 0x0000000101c2ad69 -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 193
4 UIKit 0x00000001021ae051 -[UIApplication _runWithMainScene:transitionContext:completion:] + 3102
5 UIKit 0x00000001025776f8 __111-[__UICanvasLifecycleMonitor_Compatability _scheduleFirstCommitForScene:transition:firstActivation:completion:]_block_invoke + 924
6 UIKit 0x000000010294d4c8 +[_UICanvas _enqueuePostSettingUpdateTransactionBlock:] + 153
7 UIKit 0x00000001025772f1 -[__UICanvasLifecycleMonitor_Compatability _scheduleFirstCommitForScene:transition:firstActivation:completion:] + 249
8 UIKit 0x0000000102577b6b -[__UICanvasLifecycleMonitor_Compatability activateEventsOnly:withContext:completion:] + 696
9 UIKit 0x0000000102ef5a69 __82-[_UIApplicationCanvas _transitionLifecycleStateWithTransitionContext:completion:]_block_invoke + 262
10 UIKit 0x0000000102ef5922 -[_UIApplicationCanvas _transitionLifecycleStateWithTransitionContext:completion:] + 444
11 UIKit 0x0000000102bd29c8 __125-[_UICanvasLifecycleSettingsDiffAction performActionsForCanvas:withUpdatedScene:settingsDiff:fromSettings:transitionContext:]_block_invoke + 221
12 UIKit 0x0000000102dd1b06 _performActionsWithDelayForTransitionContext + 100
13 UIKit 0x0000000102bd288b -[_UICanvasLifecycleSettingsDiffAction performActionsForCanvas:withUpdatedScene:settingsDiff:fromSettings:transitionContext:] + 231
14 UIKit 0x000000010294cb25 -[_UICanvas scene:didUpdateWithDiff:transitionContext:completion:] + 392
15 UIKit 0x00000001021ac36a -[UIApplication workspace:didCreateScene:withTransitionContext:completion:] + 523
16 UIKit 0x0000000102787605 -[UIApplicationSceneClientAgent scene:didInitializeWithEvent:completion:] + 369
17 FrontBoardServices 0x000000010b58acc0 -[FBSSceneImpl _didCreateWithTransitionContext:completion:] + 338
18 FrontBoardServices 0x000000010b5937b5 __56-[FBSWorkspace client:handleCreateScene:withCompletion:]_block_invoke_2 + 235
19 libdispatch.dylib 0x0000000105c3b33d _dispatch_client_callout + 8
20 libdispatch.dylib 0x0000000105c409f3 _dispatch_block_invoke_direct + 592
21 FrontBoardServices 0x000000010b5bf498 FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK + 24
22 FrontBoardServices 0x000000010b5bf14e -[FBSSerialQueue _performNext] + 464
23 FrontBoardServices 0x000000010b5bf6bd -[FBSSerialQueue _performNextFromRunLoopSource] + 45
24 CoreFoundation 0x0000000105376101 CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION + 17
25 CoreFoundation 0x0000000105415f71 __CFRunLoopDoSource0 + 81
26 CoreFoundation 0x000000010535aa19 __CFRunLoopDoSources0 + 185
27 CoreFoundation 0x0000000105359fff __CFRunLoopRun + 1279
28 CoreFoundation 0x0000000105359889 CFRunLoopRunSpecific + 409
29 GraphicsServices 0x0000000107b469c6 GSEventRunModal + 62
30 UIKit 0x00000001021af5d6 UIApplicationMain + 159
31 ipjsystest 0x0000000100277fa1 main + 97
32 libdyld.dylib 0x0000000105cb7d81 start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException
(lldb)

Are wmme_dev thread safe?

Hi!

We use pjsip 2.6 in c# wpf softphone.
Our softphone calls pjmedia_aud_dev_refresh(); each 1 second for refresh
list of record and player devices.
Sometimes when incoming call apears this method conflicts
with init_player_stream and we got next errors:
Error retrieving default audio device parameters: Invalid audio device
or
Error opening sound device: Invalid value or argument

We have tried to log pjisp and found next:

...
13:32:12.980 pjsua_call.c Answering call 1: code=200
...
13:32:12.981 pjsua_aud.c .....Opening sound device (speaker + mic)
PCM at 16000/1/20ms
13:32:12.992 wmme_dev.c ...... WaveAPI Sound player "Динамики
(Plantronics .Audio 628 USB)" initialized (format=PCM, clock_rate=16000,
channel_count=1, samples_per_frame=320 (20ms))
13:32:12.996 wmme_dev.c ...... WaveAPI Sound recorder "Микрофон
(Plantronics .Audio 628 USB)" initialized (format=PCM, clock_rate=16000,
channel_count=1, samples_per_frame=320 (20ms))
...
13:42:04.756 pjsua_call.c Answering call 2: code=200
...
13:42:04.757 pjsua_aud.c .....Opening sound device (speaker + mic)
PCM at 16000/1/20ms
<--------------->
13:42:04.765 Calls pjmedia_aud_dev_refresh();
<--------------->
13:42:04.769 wmme_dev.c !...... WaveAPI Sound player "" initialized
(format=PCM, clock_rate=16000, channel_count=1, samples_per_frame=320
(20ms))
13:42:04.769 wmme_dev.c ......Stopped WMME playback stream
...

As we understand method pjmedia_aud_dev_refresh makes aud_subsys.dev_cnt =
0;
and after this another thread can't initialize sound....

Is it bug of pjsip? Perhaps wmme_dev methods should be thread safe? Or we
need change logic for stop calling pjmedia_aud_dev_refresh() when
incomming call appears?

Best regards, Alex

build.sh throwing openh264 build error

Hi,

While I'm running manual build, I got openh264 install error in all ARCH.log files (armv7, armv7s, arm64,i386,x86_x64). Though, at the end all libraries are generated except libopenh264. The build folder of openh264 only contains libopenh264.a library which was there before making the build. Now while using your build command I got error like this

../src/pjmedia-codec/openh264.cpp
../src/pjmedia-codec/openh264.cpp:35:10: fatal error: 'wels/codec_api.h' file not found
#include <wels/codec_api.h>
         ^
1 error generated.
make[2]: *** [output/pjmedia-codec-arm-apple-darwin9/openh264.o] Error 1
make[1]: *** [libpjmedia-codec-arm-apple-darwin9.a] Error 2
make: *** [all] Error 1

This only code I changed was the PJSIP_URL. I changed it to http://www.pjsip.org/release/2.4.5/pjproject-2.4.5.tar.bz2 accodring the latest version.

Now if I build openh264 library separately for any ARCH, I got lib folder with a .dylib file and the library file and also a include folder where all 3 header files exist in the Wels folder.

linker error while building

Hi, I got following error while testing on my IPad

Undefined symbols for architecture armv7:
"_pjsua_call_get_vid_stream_idx", referenced from:
-[CallView loadView:withType:] in CallView.o
"_pjsua_vid_win_get_info", referenced from:
-[CallView loadView:withType:] in CallView.o
"_pjsua_vid_win_set_show", referenced from:
-[CallView loadView:withType:] in CallView.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

can anyone tell me how to fix this?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.