Build fails on Centos7 with make: *** [all] Error 2
envgap__ggml-org__ggml-569
01 / FAILURE SIGNATURE
As reported upstream
/usr/local/lib/gcc/x86_64-pc-linux-gnu/13.2.0/include/avxintrin.h:524:1: error: inlining failed in call to ‘always_inline’ ‘_mm256_extractf128_ps’: target specific option mismatch
Not a benchmark task.
- The project already builds and runs before the fix, so there is nothing to repair.
02 / ENVIRONMENT RECIPE
- Base commit
6549d12f2e3176050040a86334f17c001e170f13- Manifest
tests/CMakeLists.txt- Reproduce
Awaiting issue-specific recipe- Run under trace
Awaiting a meaningful runtime command
03 / ORIGINAL ISSUE TEXT
ggml-org/ggml #569 · read the original issue
When I try to follow the instructions building ggml to use mpt here: https://github.com/ggerganov/ggml/tree/79ea7a41a388e9e7c85e426e912ab38399c44bfa/examples/mpt
distro: Centos7
gcc: 13.2.0
g++: 13.2.0
command for "cmake": `cmake -D CMAKE_C_COMPILER=/usr/local/bin/gcc -D CMAKE_CXX_COMPILER=/usr/local/bin/g++ ..`
command for "make": `make -j 4 CC=/usr/local/bin/gcc CXX=/usr/local/bin/g++`
I get the following error:
```
[ 48%] Linking CXX executable ../bin/test-quantize-fns
repos/ggml/tests/test-vec1.c: In function ‘reduce_vector8_0’:
repos/ggml/tests/test-vec1.c:38:7: note: the ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
38 | float reduce_vector8_0(__m256 v) {
| ^~~~~~~~~~~~~~~~
repos/ggml/tests/test-vec1.c: In function ‘mul_mat_vec_f32_1’:
repos/ggml/tests/test-vec1.c:60:16: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
60 | __m256 sum = _mm256_setzero_ps();
| ^~~
In file included from /usr/local/lib/gcc/x86_64-pc-linux-gnu/13.2.0/include/immintrin.h:43,
from repos/ggml/tests/test-vec1.c:10:
/usr/local/lib/gcc/x86_64-pc-linux-gnu/13.2.0/include/avxintrin.h: In function ‘reduce_vector8_0’:
/usr/local/lib/gcc/x86_64-pc-linux-gnu/13.2.0/include/avxintrin.h:524:1: error: inlining failed in call to ‘always_inline’ ‘_mm256_extractf128_ps’: target specific option mismatch
524 | _mm256_extractf128_ps (__m256 __X, const int __N)
| ^~~~~~~~~~~~~~~~~~~~~
repos/ggml/tests/test-vec1.c:40:17: note: called from here
40 | __m128 v2 = _mm256_extractf128_ps(v, 1);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/lib/gcc/x86_64-pc-linux-gnu/13.2.0/include/avxintrin.h:524:1: error: inlining failed in call to ‘always_inline’ ‘_mm256_extractf128_ps’: target specific option mismatch
524 | _mm256_extractf128_ps (__m256 __X, const int __N)
| ^~~~~~~~~~~~~~~~~~~~~
repos/ggml/tests/test-vec1.c:39:17: note: called from here
39 | __m128 v1 = _mm256_extractf128_ps(v, 0);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [tests/CMakeFiles/test-vec1.dir/test-vec1.c.o] Error 1
make[1]: *** [tests/CMakeFiles/test-vec1.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 48%] Built target test-quantize-fns
[ 49%] Linking C executable ../bin/test-mul-mat2
[ 50%] Linking CXX executable ../../bin/mnist-cnn
[ 51%] Linking CXX executable ../../bin/mnist-cpu
[ 51%] Built target test-mul-mat2
[ 51%] Built target mnist-cnn
[ 51%] Built target mnist-cpu
[ 52%] Linking CXX executable ../../bin/mnist
[ 52%] Built target mnist
[ 54%] Linking CXX executable ../bin/test-grad0
[ 54%] Built target test-grad0
[ 55%] Linking CXX executable ../bin/test-quantize-perf
[ 55%] Built target test-quantize-perf
[ 56%] Linking CXX static library libcommon-ggml.a
[ 56%] Built target common-ggml
[ 57%] Linking CXX executable ../../bin/sam
[ 57%] Built target sam
[ 58%] Linking CXX static library libwhisper-cpp.a
[ 58%] Built target whisper-cpp
make: *** [all] Error 2`
```
04 / LABELS
Labels from the report text only; not yet run
No supported category has been assigned.
Label rules and the text that matched
[]