Skip to content

Build breakage on Raspberry Pi #52

Description

@dslotter

I'm attaching a build log from the Raspberry Pi which shows the master branch is unable to complete build. Hoping you can fix this issue with the missing symbol:

pi@hampi:~/hamradio/LPCNet $ git checkout master
Previous HEAD position was 7ee18d4 Disable AVX2 by default even on supported machines.
Switched to branch 'master'
Your branch is up to date with 'origin/master'.
pi@hampi:~/hamradio/LPCNet $ git log
pi@hampi:~/hamradio/LPCNet $ git log -1
commit 101d925fcf8929575ee53755db16dcaac8f08daf (HEAD -> master, origin/master, origin/HEAD)
Merge: ae7b359 855b0a6
Author: drowe67 <45574645+drowe67@users.noreply.github.com>
Date:   Sat Dec 17 09:16:33 2022 +1030

    Merge pull request #51 from drowe67/ms-integrate-from-xiph
    
    Integrate latest vec_*.h from xiph/LPCNet
pi@hampi:~/hamradio/LPCNet $ cd build
pi@hampi:~/hamradio/LPCNet/build $ cmake ..
-- The C compiler identification is GNU 10.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- LPCNet version: 0.4
-- freedv-gui current git hash: 101d925
-- Host system arch is: aarch64
-- Looking for available CPU optimizations on Linux/BSD system...
-- Compilation date = XX20221230XX
-- Configuring done
-- Generating done
-- Build files have been written to: /home/pi/hamradio/LPCNet/build
pi@hampi:~/hamradio/LPCNet/build $ make -j1
[  1%] Building C object src/CMakeFiles/lpcnetfreedv.dir/freq.c.o
[  3%] Building C object src/CMakeFiles/lpcnetfreedv.dir/kiss_fft.c.o
[  4%] Building C object src/CMakeFiles/lpcnetfreedv.dir/celt_lpc.c.o
[  6%] Building C object src/CMakeFiles/lpcnetfreedv.dir/pitch.c.o
[  8%] Building C object src/CMakeFiles/lpcnetfreedv.dir/codec2_pitch.c.o
[  9%] Building C object src/CMakeFiles/lpcnetfreedv.dir/mbest.c.o
[ 11%] Building C object src/CMakeFiles/lpcnetfreedv.dir/lpcnet_quant.c.o
[ 12%] Building C object src/CMakeFiles/lpcnetfreedv.dir/lpcnet_dump.c.o
[ 14%] Building C object src/CMakeFiles/lpcnetfreedv.dir/4stage_pred_vq.c.o
[ 16%] Building C object src/CMakeFiles/lpcnetfreedv.dir/4stage_direct_split_vq.c.o
[ 17%] Building C object src/CMakeFiles/lpcnetfreedv.dir/4stage_direct_split_indopt_vq.c.o
[ 19%] Building C object src/CMakeFiles/lpcnetfreedv.dir/lpcnet.c.o
[ 20%] Building C object src/CMakeFiles/lpcnetfreedv.dir/lpcnet_freedv.c.o
[ 22%] Building C object src/CMakeFiles/lpcnetfreedv.dir/nnet.c.o
/home/pi/hamradio/LPCNet/src/nnet.c:51:2: warning: #warning Compiling without any vectorization. This code will be very slow [-Wcpp]
   51 | #warning Compiling without any vectorization. This code will be very slow
      |  ^~~~~~~
[ 24%] Building C object src/CMakeFiles/lpcnetfreedv.dir/__/_deps/lpcnet-src/nnet_data.c.o
[ 25%] Building C object src/CMakeFiles/lpcnetfreedv.dir/from_codec2/sine.c.o
/home/pi/hamradio/LPCNet/src/from_codec2/sine.c: In function ‘__codec2__estimate_amplitudes’:
/home/pi/hamradio/LPCNet/src/from_codec2/sine.c:406:57: warning: unused parameter ‘W’ [-Wunused-parameter]
  406 | void estimate_amplitudes(MODEL *model, COMP Sw[], float W[], int est_phase)
      |                                                   ~~~~~~^~~
[ 27%] Building C object src/CMakeFiles/lpcnetfreedv.dir/from_codec2/nlp.c.o
/home/pi/hamradio/LPCNet/src/from_codec2/nlp.c: In function ‘__codec2__nlp’:
/home/pi/hamradio/LPCNet/src/from_codec2/nlp.c:255:10: warning: unused parameter ‘Sw’ [-Wunused-parameter]
  255 |   COMP   Sw[],                  /* Freq domain version of Sn[]                        */
      |   ~~~~~~~^~~~
/home/pi/hamradio/LPCNet/src/from_codec2/nlp.c:256:10: warning: unused parameter ‘W’ [-Wunused-parameter]
  256 |   float  W[],                   /* Freq domain window                                 */
      |   ~~~~~~~^~~
/home/pi/hamradio/LPCNet/src/from_codec2/nlp.c: In function ‘__codec2__post_process_sub_multiples’:
/home/pi/hamradio/LPCNet/src/from_codec2/nlp.c:431:10: warning: unused parameter ‘pmin’ [-Wunused-parameter]
  431 |      int pmin, int pmax, float gmax, int gmax_bin,
      |      ~~~~^~~~
[ 29%] Building C object src/CMakeFiles/lpcnetfreedv.dir/from_codec2/codec2_fft.c.o
[ 30%] Building C object src/CMakeFiles/lpcnetfreedv.dir/from_codec2/kiss_fft.c.o
[ 32%] Building C object src/CMakeFiles/lpcnetfreedv.dir/from_codec2/kiss_fftr.c.o
[ 33%] Linking C shared library liblpcnetfreedv.so
[ 33%] Built target lpcnetfreedv
[ 35%] Building C object src/CMakeFiles/dump_data.dir/dump_data.c.o
[ 37%] Linking C executable dump_data
[ 37%] Built target dump_data
[ 38%] Building C object src/CMakeFiles/test_lpcnet.dir/test_lpcnet.c.o
[ 40%] Building C object src/CMakeFiles/test_lpcnet.dir/nnet_rw.c.o
[ 41%] Linking C executable test_lpcnet
[ 41%] Built target test_lpcnet
[ 43%] Building C object src/CMakeFiles/test_vec.dir/test_vec.c.o
/home/pi/hamradio/LPCNet/src/test_vec.c: In function ‘test_sgemv_accum16’:
/home/pi/hamradio/LPCNet/src/test_vec.c:81:5: warning: implicit declaration of function ‘sgemv_accum16_fast’; did you mean ‘sgemv_accum16’? [-Wimplicit-function-declaration]
   81 |     sgemv_accum16_fast(out_fast, weights, ROWS, COLS, 1, x);
      |     ^~~~~~~~~~~~~~~~~~
      |     sgemv_accum16
/home/pi/hamradio/LPCNet/src/test_vec.c: In function ‘test_sparse_sgemv_accum16’:
/home/pi/hamradio/LPCNet/src/test_vec.c:115:5: warning: implicit declaration of function ‘sparse_sgemv_accum16_fast’; did you mean ‘sparse_sgemv_accum16’? [-Wimplicit-function-declaration]
  115 |     sparse_sgemv_accum16_fast(out_fast, w, rows, indx, x);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~
      |     sparse_sgemv_accum16
[ 45%] Linking C executable test_vec
/usr/bin/ld: CMakeFiles/test_vec.dir/test_vec.c.o: in function `test_sgemv_accum16':
/home/pi/hamradio/LPCNet/src/test_vec.c:81: undefined reference to `sgemv_accum16_fast'
/usr/bin/ld: CMakeFiles/test_vec.dir/test_vec.c.o: in function `test_sparse_sgemv_accum16':
/home/pi/hamradio/LPCNet/src/test_vec.c:115: undefined reference to `sparse_sgemv_accum16_fast'
collect2: error: ld returned 1 exit status
make[2]: *** [src/CMakeFiles/test_vec.dir/build.make:97: src/test_vec] Error 1
make[1]: *** [CMakeFiles/Makefile2:970: src/CMakeFiles/test_vec.dir/all] Error 2
make: *** [Makefile:166: all] Error 2
pi@hampi:~/hamradio/LPCNet/build $ uname -a
Linux hampi 5.15.76-v8+ #1597 SMP PREEMPT Fri Nov 4 12:16:41 GMT 2022 aarch64 GNU/Linux
pi@hampi:~/hamradio/LPCNet/build $ cat /etc/os-release 
PRETTY_NAME="Raspbian GNU/Linux 11 (bullseye)"
NAME="Raspbian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions