|
From: | B . KRiSTóF |
Subject: | [Linphone-developers] [linphone-desktop] [Compiling procedure] |
Date: | Wed, 7 Mar 2018 21:40:54 +0000 |
Hello!
Today (2018-03-07) I was compiling the linphone-desktop project (commit 732a5b7e5e9fa64a4ac34453385153b3d3c12f57) from the GitHub repository.
LINPHONE/submodules/mswebrtc/webrtc/webrtc/modules/audio_processing/aec/aec_core_sse2.c:61:7: error: called from here
That occoured only in the MSWEBRTC submodule. The problem is that it claims that the CPU does not support SSE2 instructions.
_mm_storeu_ps(&yf[1][j], h); ^ In file included from /usr/lib/gcc/i686-linux-gnu/5/include/emmintrin.h:31:0, from LINPHONE/submodules/mswebrtc/webrtc/webrtc/modules/audio_processing/aec/aec_core_sse2.c:15: /usr/lib/gcc/i686-linux-gnu/5/include/xmmintrin.h:978:1: error: inlining failed in call to always_inline ‘_mm_storeu_ps’: target specific option mismatch _mm_storeu_ps (float *__P, __m128 __A) ^ However, it does support.
To fix this issue, please follow the steps below.
In the following file
"LINPHONE-DIRECTORY/submodules/mswebrtc/CMakeLists.txt" add the lines set(CMAKE_C_FLAGS ${CMAKE_C_FLAGS} "-msse -msse2 -msse3") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse -msse2 -msse3") after the statements like set(ISAC_FLAVOUR "fix" CACHE STRING "ISAC audio codec flavour.") set_property(CACHE ISAC_FLAVOUR PROPERTY STRINGS "fix" "main") around line 43-44. It now enables 32 bit builds. I don't know if it is necessary for the 64 bit builds but it would be appreciated if the 32 bit builds can be built easier. I have no knowledge on CMake. If it is only a 32-bit issue please wrap it in a conditional. LINPHONE and LINPHONE-DIRECTORY denotes a path where the dowloaded repository is located. Also, if technically possible, take into consideration that the compiled output has hardcoded paths in binaries and shared objects. Since the compilation creates a reasonable hierarchy of directories, it would be so simple to move to another machine the entire output directory. It seems to me that it is carrying its important dependencies. (Excluding Qt, but it is okay.) To clarify this issue, I'm talking about the Linux build. (There's no option to create any kind of installable package on this platform.) Best Regards |
[Prev in Thread] | Current Thread | [Next in Thread] |