pjsip / pjproject

PJSIP project
http://www.pjsip.org
GNU General Public License v2.0
2.07k stars 786 forks source link

Fix build failure on RISC-V architecture #4173

Open imguoguo opened 1 day ago

imguoguo commented 1 day ago

The issue was due to missing architectural definitions in WebRTC’s typedefs.h. After applying the provided patch, the package successfully compiles on Fedora using the pjproject.spec file from the Fedora rawhide repository.

Error messages are as follows without this patch:

../../webrtc/src/webrtc/typedefs.h:65:2: error: #error Please add support for your architecture in typedefs.h
../../webrtc/src/webrtc/typedefs.h:69:2: error: #error Define either WEBRTC_ARCH_LITTLE_ENDIAN or WEBRTC_ARCH_BIG_ENDIAN

The package was compiled successfully on Fedora Rawhide for the RISC-V architecture using the updated pjproject.spec(with this patch).

WebRTC Patch Source: Link

CLAassistant commented 1 day ago

CLA assistant check
All committers have signed the CLA.

sauwming commented 8 hours ago

Thanks, it seems in line with WebRTC AEC3 check here: https://github.com/pjsip/pjproject/blob/c239fc89e97f50e9ef83021bdaf83cee95130afc/third_party/webrtc_aec3/src/rtc_base/system/arch.h#L70-L75

But just to confirm, can you please check if WebRTC AEC3 is also able to build successfully on RISC-V? (you need to enable it using ./configure --enable-libwebrtc-aec3 and rebuild PJSIP).

trengginas commented 4 hours ago

Could you please add the changes in (arch.h) https://github.com/imguoguo/pjproject/blob/master/third_party/webrtc_aec3/PJSIP_NOTES

sauwming commented 4 hours ago

The notes should be in: https://github.com/imguoguo/pjproject/blob/master/third_party/webrtc/PJSIP_NOTES