私の目標は、kiss_fft ライブラリをコンパイルして、Android 開発用の JNI で使用することです。ただし、最初は、C の Linux マシンで Kiss_fft ライブラリを使用しようとしています。
Kiss_fft ( Kissfft ) のKiss_fft.c または Kiss_fftr.c を使用し て DFT を計算する場合。ライブラリを自分のファイルにどのくらい正確にコンパイルしますか。ソース C ファイルの先頭に #include kiss_fft.h と #include kiss_fftr.h を追加し、kiss_fft ソース コードをプロジェクトのルート ディレクトリまたは Linux の /usr/include/ に配置してから、これに似たメイクファイル:
#Makefile
#ARGS = -g -ansi -pedantic -Wall -Werror -O1
ARGS = -g -lsndfile -O1 -lm
FILES = spec_subv4.o kiss_fftr.o kiss_fft.o
spec_sub: $(FILES)
gcc $(ARGS) $(FILES) -o spec_sub
spec_subv4.o: spec_subv4.c
gcc -lsndfile $(ARGS) -c spec_subv4.c -o spec_subv4
kiss_fftr.o: kiss_fftr.c kiss_fftr.h kiss_fftr.h _kiss_fft_guts.h
gcc $(ARGS) -c kiss_fftr.c -o kiss_fftr
kiss_fft.o: kiss_fft.c _kiss_fft_guts.h
gcc $(ARGS) -c kiss_fftr.c -o kiss_fft
すべてのkiss_fftソースファイルを調べて、すべての依存関係を構築するためにこのmakeファイルを書きました。しかし、私はまだ得る
undefined reference to kiss_fft
undefined reference to kiss_fft_alloc
これは、kiss_fft ライブラリの内部関数です。
どんな助けでも大歓迎です。ありがとう