发现 WaoN 可以将声音文件转换为 midi,我克隆了 git 存储库https://github.com/kichiki/WaoN并尝试编译它。
我遇到了一些错误,并安装了必要的(或者我认为是的)库:
https://i.stack.imgur.com/7ymlw.jpg
+
https://i.stack.imgur.com/Rm0hy.jpg
然后运行:
make -f Makefile.waon
但出现了一些错误。我进行了搜索并运行:
sudo apt-get install libc6-dev-i386
这解决了一些错误,但是当我运行
make -f Makefile.waon
我的输出仍然是:
gcc -Wall -m32 -O3 -ffast-math `pkg-config --cflags fftw3`
`pkg-config --cflags sndfile` -o waon main.o notes.o midi.o
analyse.o fft.o hc.o snd.o -L/usr/local/lib `pkg-config --libs fftw3`
`pkg-config --libs sndfile` -lm
/usr/bin/ld: cannot find -lfftw3
/usr/bin/ld: cannot find -lsndfile
collect2: error: ld returned 1 exit status
Makefile.waon:39: recipe for target 'waon' failed
make: *** [waon] Error 1
当我运行 make clean 时输出是:
user@user:~/Music/waon/WaoN$ make clean
rm -f *.o *~ *.core \
waon \
pv \
gwaon
user@user:~/Music/waon/WaoN$ make -f Makefile.waon
gcc -Wall -m32 -O3 -ffast-math `pkg-config --cflags fftw3` `pkg-config
--cflags sndfile` -c -o main.o main.c
gcc -Wall -m32 -O3 -ffast-math `pkg-config --cflags fftw3` `pkg-config
--cflags sndfile` -c -o notes.o notes.c
gcc -Wall -m32 -O3 -ffast-math `pkg-config --cflags fftw3` `pkg-config
--cflags sndfile` -c -o midi.o midi.c
gcc -Wall -m32 -O3 -ffast-math `pkg-config --cflags fftw3` `pkg-config
--cflags sndfile` -c -o analyse.o analyse.c
gcc -Wall -m32 -O3 -ffast-math `pkg-config --cflags fftw3` `pkg-config
--cflags sndfile` -c -o fft.o fft.c
gcc -Wall -m32 -O3 -ffast-math `pkg-config --cflags fftw3` `pkg-config
--cflags sndfile` -c -o hc.o hc.c
gcc -Wall -m32 -O3 -ffast-math `pkg-config --cflags fftw3` `pkg-config
--cflags sndfile` -c -o snd.o snd.c
gcc -Wall -m32 -O3 -ffast-math `pkg-config --cflags fftw3` `pkg-config
--cflags sndfile` -o waon main.o notes.o midi.o analyse.o fft.o hc.o
snd.o -L/usr/local/lib `pkg-config --libs fftw3` `pkg-config --libs
sndfile` -lm
/usr/bin/ld: cannot find -lfftw3
/usr/bin/ld: cannot find -lsndfile
collect2: error: ld returned 1 exit status
Makefile.waon:39: recipe for target 'waon' failed
make: *** [waon] Error 1
所以我有点困惑。
我认为最重要的部分是:
/usr/bin/ld: cannot find -lfftw3
/usr/bin/ld: cannot find -lsndfile
对我来说,这些库似乎已经安装好了,或者根据突触的图片来看这是不正确的?
任何帮助深表感谢!
编辑1:
我阅读了一些有关符号链接的内容,并尝试使用 find 来查找 lfftw3,但我不明白下一步该做什么:
user@user:~/Music/waon/WaoN$ sudo find / -name *fftw3*
[sudo] password for user:
find: ‘/run/user/1000/gvfs’: Permission denied
/usr/include/fftw3-mpi.h
/usr/include/fftw3q.f03
/usr/include/fftw3-mpi.f03
/usr/include/fftw3.f
/usr/include/fftw3.f03
/usr/include/fftw3.h
/usr/include/fftw3l.f03
/usr/include/fftw3l-mpi.f03
/usr/share/doc/libfftw3-dev
/usr/share/doc/libfftw3-mpi-dev
/usr/share/doc/libfftw3-bin
/usr/share/doc/libfftw3-mpi3
/usr/share/doc/libfftw3-single3
/usr/share/doc/libfftw3-quad3
/usr/share/doc/libfftw3-double3
/usr/share/doc/libfftw3-dbg
/usr/share/doc/libfftw3-long3
/usr/share/doc/libfftw3-3
/usr/lib/x86_64-linux-gnu/libfftw3f.so.3
/usr/lib/x86_64-linux-gnu/libfftw3l_omp.so.3.4.4
/usr/lib/x86_64-linux-gnu/libfftw3.so
/usr/lib/x86_64-linux-gnu/libfftw3_omp.so.3.4.4
/usr/lib/x86_64-linux-gnu/libfftw3q_omp.so.3.4.4
/usr/lib/x86_64-linux-gnu/libfftw3_mpi.a
/usr/lib/x86_64-linux-gnu/libfftw3f_mpi.so
/usr/lib/x86_64-linux-gnu/libfftw3_omp.so.3
/usr/lib/x86_64-linux-gnu/libfftw3f_omp.a
/usr/lib/x86_64-linux-gnu/libfftw3f_threads.so.3
/usr/lib/x86_64-linux-gnu/libfftw3.so.3.4.4
/usr/lib/x86_64-linux-gnu/libfftw3f_threads.so
/usr/lib/x86_64-linux-gnu/libfftw3f.so
/usr/lib/x86_64-linux-gnu/libfftw3_mpi.so.3.3.2
/usr/lib/x86_64-linux-gnu/libfftw3_threads.so
/usr/lib/x86_64-linux-gnu/libfftw3.so.3
/usr/lib/x86_64-linux-gnu/libfftw3f_omp.so.3
/usr/lib/x86_64-linux-gnu/libfftw3q_threads.so.3
/usr/lib/x86_64-linux-gnu/libfftw3_threads.a
/usr/lib/x86_64-linux-gnu/libfftw3l.so.3.4.4
/usr/lib/x86_64-linux-gnu/libfftw3q_threads.a
/usr/lib/x86_64-linux-gnu/libfftw3q_omp.so.3
/usr/lib/x86_64-linux-gnu/libfftw3_threads.so.3
/usr/lib/x86_64-linux-gnu/libfftw3l_omp.so
/usr/lib/x86_64-linux-gnu/libfftw3l_mpi.so.3
/usr/lib/x86_64-linux-gnu/libfftw3l_mpi.so.3.3.2
/usr/lib/x86_64-linux-gnu/libfftw3_mpi.so.3
/usr/lib/x86_64-linux-gnu/libfftw3l_threads.so.3.4.4
/usr/lib/x86_64-linux-gnu/libfftw3q_threads.so.3.4.4
/usr/lib/x86_64-linux-gnu/libfftw3f_omp.so
/usr/lib/x86_64-linux-gnu/libfftw3f_mpi.so.3.3.2
/usr/lib/x86_64-linux-gnu/libfftw3l_threads.a
/usr/lib/x86_64-linux-gnu/libfftw3q.so
/usr/lib/x86_64-linux-gnu/libfftw3l.so
/usr/lib/x86_64-linux-gnu/libfftw3f_mpi.a
/usr/lib/x86_64-linux-gnu/libfftw3_mpi.so
/usr/lib/x86_64-linux-gnu/libfftw3l_omp.so.3
/usr/lib/x86_64-linux-gnu/libfftw3q_omp.so
/usr/lib/x86_64-linux-gnu/libfftw3l.a
/usr/lib/x86_64-linux-gnu/libfftw3l_mpi.so
/usr/lib/x86_64-linux-gnu/libfftw3q.a
/usr/lib/x86_64-linux-gnu/libfftw3q.so.3.4.4
/usr/lib/x86_64-linux-gnu/libfftw3l_threads.so
/usr/lib/x86_64-linux-gnu/pkgconfig/fftw3f.pc
/usr/lib/x86_64-linux-gnu/pkgconfig/fftw3q.pc
/usr/lib/x86_64-linux-gnu/pkgconfig/fftw3l.pc
/usr/lib/x86_64-linux-gnu/pkgconfig/fftw3.pc
/usr/lib/x86_64-linux-gnu/libfftw3.a
/usr/lib/x86_64-linux-gnu/libfftw3l_threads.so.3
/usr/lib/x86_64-linux-gnu/libfftw3f_omp.so.3.4.4
/usr/lib/x86_64-linux-gnu/libfftw3f_mpi.so.3
/usr/lib/x86_64-linux-gnu/libfftw3_omp.so
/usr/lib/x86_64-linux-gnu/libfftw3f.so.3.4.4
/usr/lib/x86_64-linux-gnu/libfftw3l.so.3
/usr/lib/x86_64-linux-gnu/libfftw3l_mpi.a
/usr/lib/x86_64-linux-gnu/libfftw3f_threads.a
/usr/lib/x86_64-linux-gnu/libfftw3f_threads.so.3.4.4
/usr/lib/x86_64-linux-gnu/libfftw3l_omp.a
/usr/lib/x86_64-linux-gnu/libfftw3f.a
/usr/lib/x86_64-linux-gnu/libfftw3q_threads.so
/usr/lib/x86_64-linux-gnu/libfftw3_omp.a
/usr/lib/x86_64-linux-gnu/libfftw3q_omp.a
/usr/lib/x86_64-linux-gnu/libfftw3_threads.so.3.4.4
/usr/lib/x86_64-linux-gnu/libfftw3q.so.3
/var/cache/apt/archives/libfftw3-3_3.3.4-2ubuntu1_amd64.deb
/var/cache/apt/archives/libfftw3-dev_3.3.4-2ubuntu1_amd64.deb
/var/cache/apt/archives/libfftw3-dbg_3.3.4-2ubuntu1_amd64.deb
/var/cache/apt/archives/libfftw3-mpi-dev_3.3.3-2ubuntu3_amd64.deb
/var/cache/apt/archives/libfftw3-bin_3.3.4-2ubuntu1_amd64.deb
/var/cache/apt/archives/libfftw3-mpi3_3.3.3-2ubuntu3_amd64.deb
/var/cache/apt/archives/libfftw3-quad3_3.3.4-2ubuntu1_amd64.deb
/var/cache/apt/archives/libfftw3-long3_3.3.4-2ubuntu1_amd64.deb
/var/lib/dpkg/info/libfftw3-single3:amd64.shlibs
/var/lib/dpkg/info/libfftw3-double3:amd64.postrm
/var/lib/dpkg/info/libfftw3-long3:amd64.md5sums
/var/lib/dpkg/info/libfftw3-single3:amd64.postinst
/var/lib/dpkg/info/libfftw3-mpi3:amd64.shlibs
/var/lib/dpkg/info/libfftw3-quad3:amd64.shlibs
/var/lib/dpkg/info/libfftw3-long3:amd64.postrm
/var/lib/dpkg/info/libfftw3-bin.list
/var/lib/dpkg/info/libfftw3-quad3:amd64.postinst
/var/lib/dpkg/info/libfftw3-bin.md5sums
/var/lib/dpkg/info/libfftw3-3:amd64.md5sums
/var/lib/dpkg/info/libfftw3-dbg:amd64.md5sums
/var/lib/dpkg/info/libfftw3-mpi3:amd64.triggers
/var/lib/dpkg/info/libfftw3-long3:amd64.list
/var/lib/dpkg/info/libfftw3-long3:amd64.postinst
/var/lib/dpkg/info/libfftw3-mpi3:amd64.md5sums
/var/lib/dpkg/info/libfftw3-dev:amd64.list
/var/lib/dpkg/info/libfftw3-dbg:amd64.list
/var/lib/dpkg/info/libfftw3-quad3:amd64.list
/var/lib/dpkg/info/libfftw3-quad3:amd64.postrm
/var/lib/dpkg/info/libfftw3-long3:amd64.shlibs
/var/lib/dpkg/info/libfftw3-double3:amd64.list
/var/lib/dpkg/info/libfftw3-double3:amd64.shlibs
/var/lib/dpkg/info/libfftw3-quad3:amd64.md5sums
/var/lib/dpkg/info/libfftw3-single3:amd64.md5sums
/var/lib/dpkg/info/libfftw3-single3:amd64.postrm
/var/lib/dpkg/info/libfftw3-single3:amd64.list
/var/lib/dpkg/info/libfftw3-mpi-dev.list
/var/lib/dpkg/info/libfftw3-double3:amd64.postinst
/var/lib/dpkg/info/libfftw3-mpi3:amd64.list
/var/lib/dpkg/info/libfftw3-double3:amd64.md5sums
/var/lib/dpkg/info/libfftw3-dev:amd64.md5sums
/var/lib/dpkg/info/libfftw3-mpi-dev.md5sums
/var/lib/dpkg/info/libfftw3-3:amd64.list
答案1
您应该安装一些带有标头和 pc 文件的开发包:
sudo apt-get install libfftw3-dev libsndfile1-dev \
libao-dev libsamplerate0-dev libgtk2.0-dev libncurses5-dev
然后克隆存储库并运行make
:
git clone https://github.com/kichiki/WaoN.git
cd WaoN
make
完成这些步骤waon
并gwaon
创建可执行文件后。