如何获取共享库和头文件来安装 Zita-at1

如何获取共享库和头文件来安装 Zita-at1

我正在尝试安装一个名为 Zita-at1 的程序。安装指南中写道:

要安装,请 cd 到源目录,make,sudo make install,make clean。

要构建此版本,您需要共享库

libclthreads-2.4.0   libclxclient-3.9.0       

以及相应的头文件。它们位于

http://kokkinizita.linuxaudio.org/linuxaudio/downloads

安装到Makefile 中/usr而不是/usr/local修改“PREFIX”的定义。

我不知道“make、make install 或 make clean”是什么意思。也不知道如何“获取”我需要的共享库。这些是使用终端命令安装的吗?

我已经下载了头文件,但不知道把它们放在哪里或如何处理它们。我基本上需要帮助来解码这些指令

答案1

搜索以查找哪个 Ubuntu 软件包提到了所需的库

apt-file search libclthreads

它回应

libclthreads-dev: /usr/lib/x86_64-linux-gnu/libclthreads.so
libclthreads-dev: /usr/share/doc/libclthreads-dev/changelog.Debian.gz
libclthreads-dev: /usr/share/doc/libclthreads-dev/copyright
libclthreads2: /usr/lib/x86_64-linux-gnu/libclthreads.so.2
libclthreads2: /usr/lib/x86_64-linux-gnu/libclthreads.so.2.4.0
libclthreads2: /usr/share/doc/libclthreads2/changelog.Debian.gz
libclthreads2: /usr/share/doc/libclthreads2/copyright

以 结尾的软件包-dev表示它们包含头文件,因此使用

sudo apt-get install libclthreads-dev

其回应包括

Preparing to unpack .../libclthreads2_2.4.0-5_amd64.deb ...

这确认了匹配的版本...其他库也类似

apt-file search  libclxclient

你可以看到它提到了-dev所以选那个

sudo apt-get install libclxclient-dev 

现在下载并展开 Zita-at1 后,进入其源代码目录并进行编译

cd zita-at1-0.4.0/source 
make

它失败了

stens@bodhisattva ~/other_src/zita-at1-0.4.0/source $ make
g++ -O2 -ffast-math -Wall -MMD -MP -march=native -MMD -MP -DVERSION=\"0.4.0\" -DSHARED=\"/usr/local/share/zita-at1\" -I/usr/X11R6/include `freetype-config --cflags`  -c -o zita-at1.o zita-at1.cc
In file included from jclient.h:28:0,
                 from zita-at1.cc:29:
retuner.h:27:38: fatal error: zita-resampler/resampler.h: No such file or directory
compilation terminated.
<builtin>: recipe for target 'zita-at1.o' failed
make: *** [zita-at1.o] Error 1

所以我刚刚发现缺失的标题位于 zita-resampler 中,它列在您提供的同一链接中,所以让我们首先安装它...下载并展开后即可进行编译

cd zita-resampler-1.6.0/libs 
make

给出输出

g++ -Wall -fPIC -O2 -ffast-math -march=native -I. -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS  -c -o resampler.o resampler.cc
g++ -Wall -fPIC -O2 -ffast-math -march=native -I. -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS  -c -o vresampler.o vresampler.cc
g++ -Wall -fPIC -O2 -ffast-math -march=native -I. -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS  -c -o resampler-table.o resampler-table.cc
g++ -Wall -fPIC -O2 -ffast-math -march=native -I. -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS  -c -o cresampler.o cresampler.cc
g++ -shared  -Wl,-soname,libzita-resampler.so.1 -o libzita-resampler.so.1.6.0 resampler.o vresampler.o resampler-table.o cresampler.o 

现在安装它

cd zita-resampler-1.6.0/libs
sudo make install

所以最后回到我们原来的失败make并重试,因为它的上游库已经安装

cd zita-at1-0.4.0/source 
make

生成可执行文件

zita-at1

完成...如果当你发出时make说没有找到,那么通过发出以下命令安装你的编译工具

sudo apt-get install build-essential 

这将为你提供 make 以及其他编译工具

相关内容