在 EC2 服务器上安装 SOX?

在 EC2 服务器上安装 SOX?

我需要一些帮助萨班斯安装在 EC2 服务器上。我的 EC2 服务器完全是“原始”的,并且使用 Amazon Linux AMI (3.4.37-40.44.amzn1.x86_64)。

我能找到的大多数 SOX 安装说明都使用 apt-get,但 Amazon Linux EC2 服务器上没有这个功能。由于我找不到任何用于安装 SOX 的“yum”说明,因此我决定尝试自己编译源代码。以下是我采取的步骤:

1)我已经安装了 Git,因此可以跳过该步骤。

2)我使用以下命令克隆了 sox 存储库:

sudo git clone git://sox.git.sourceforge.net/gitroot/sox/sox 

进入 sox 目录,我可以看到这些文件:

SOX 源文件的文件列表

3)接下来,我在EC2服务器上安装了开发工具:

sudo yum groupinstall "Development Tools"

4)我阅读了INSTALL文件中的说明,其中说:

要使用适合您平台的默认配置编译和安装 SoX(可执行文件、库、手册页),请运行以下命令:

    ./configure
    make -s
    make install

按照这些说明,我输入了:

sudo ./configure

并收到错误:

Bash:./install:没有那个文件或目录

(Bash:./install:没有此文件或目录)

任何帮助将非常感激。

=== 更新 ====

回应 Michael Hampton 的评论,我试过“yum install sox”。抱歉,我忘了提这件事了。但是它不起作用。结果如下:

在此处输入图片描述

答案1

您缺少一些使 sox 可用的要求,主要是 libmad。这是我在 EC2 中安装 sox 时使用的方法:

[笔记]

在 FAAC 中,您需要删除发出弃用调用的一行,否则它将无法编译。

LIBMAD 需要补丁才能编译。

我运行 ldconfig 之后每个构建,它可能有点过度,但有几次我没有这样做,安装链就失败了。

不要 && sox 的构建命令,由于某种原因,它在链接时会失败。

如果在构建 sox 后不运行 ldconfig,它将无法找到自己的共享库并出现错误。

顺序很重要,例如,twolame 不会在 libsndfile 之前构建。

这些都是不是sox 所需的所有插件,仅是我使用的插件,检查 tarball 中的 INSTALL 文件以了解如何获取您可能需要的其他插件;过程是相同的,构建它们(如果需要,明确启用共享)并在构建后运行 ldconfig。

yum install pkgconfig

cd /usr/local/src
wget http://sourceforge.net/projects/mad/files/madplay/0.15.2b/madplay-0.15.2b.tar.gz
wget http://sourceforge.net/projects/mad/files/libmad/0.15.1b/libmad-0.15.1b.tar.gz
wget http://sourceforge.net/projects/mad/files/libid3tag/0.15.1b/libid3tag-0.15.1b.tar.gz
wget http://sourceforge.net/projects/sox/files/sox/14.4.1/sox-14.4.1.tar.gz
wget http://downloads.xiph.org/releases/ao/libao-1.2.0.tar.gz
wget http://downloads.sourceforge.net/twolame/twolame-0.3.13.tar.gz
wget http://www.mega-nerd.com/libsndfile/files/libsndfile-1.0.25.tar.gz
wget http://www.wavpack.com/wavpack-4.70.0.tar.bz2
wget http://www.linuxfromscratch.org/patches/blfs/svn/libmad-0.15.1b-fixes-1.patch
wget http://downloads.xiph.org/releases/ogg/libogg-1.3.2.tar.gz
wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.4.tar.gz
wget http://downloads.xiph.org/releases/theora/libtheora-1.1.1.tar.gz
wget http://downloads.sourceforge.net/project/opencore-amr/opencore-amr/opencore-amr-0.1.3.tar.gz
wget http://downloads.sourceforge.net/faac/faac-1.28.tar.gz
wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz

tar xf madplay-0.15.2b.tar.gz
tar xf libmad-0.15.1b.tar.gz
tar xf libid3tag-0.15.1b.tar.gz
tar xf sox-14.4.1.tar.gz
tar xf libao-1.2.0.tar.gz
tar xf twolame-0.3.13.tar.gz
tar xf libsndfile-1.0.25.tar.gz
tar jxf wavpack-4.70.0.tar.bz2
tar zxf libogg-1.3.2.tar.gz
tar zxf libvorbis-1.3.4.tar.gz
tar zxf libtheora-1.1.1.tar.gz
tar zxf opencore-amr-0.1.3.tar.gz
tar zxf faac-1.28.tar.gz
tar zxf lame-3.99.5.tar.gz

[LIBOGG]
    cd /usr/local/src/libogg-1.3.2
    ./configure && make clean && make && make install
    ldconfig
[LIBVORBIS]
    cd /usr/local/src/libvorbis-1.3.4
    ./configure && make clean && make && make install
    ldconfig
[LIBTHEORA]
    cd /usr/local/src/libtheora-1.1.1
    ./configure && make clean && make && make install
    ldconfig
[AMR]
    cd /usr/local/src/opencore-amr-0.1.3
    ./configure && make clean && make && make install
    ldconfig
[FAAC]
    cd /usr/local/src/faac-1.28
    vi /usr/local/src/faac-1.28/common/mp4v2/mpeg4ip.h
        [DELETE]:char *strcasestr(const char *haystack, const char *needle);
    ./configure && make && make install
    ldconfig
[LAME]
    cd /usr/local/src/lame-3.99.5
    ./configure && make clean && make && make install
    ldconfig
[LIBAO]
    cd /usr/local/src/libao-1.2.0
    ./configure && make && make install
    ldconfig
[LIBSNDFILE]
    cd /usr/local/src/libsndfile-1.0.25
    ./configure && make && make install
    ldconfig
[TWOLAME]
    cd /usr/local/src/twolame-0.3.13
    ./configure && make && make install
    ldconfig
[WAVPACK]
    cd /usr/local/src/wavpack-4.70.0
    ./configure && make && make install
    ldconfig
[LIBMAD]
    cd /usr/local/src/libmad-0.15.1b
    patch -Np1 -i ../libmad-0.15.1b-fixes-1.patch
    sed "s@AM_CONFIG_HEADER@AC_CONFIG_HEADERS@g" -i configure.ac
    touch NEWS AUTHORS ChangeLog
    autoreconf -fi
    ./configure --enable-shared && make && make install
    ldconfig
[LIBID3]
    cd /usr/local/src/libid3tag-0.15.1b
    ./configure --enable-shared && make && make install
    ldconfig
[MADPLAY]
    cd /usr/local/src/madplay-0.15.2b
    ./configure --enable-shared && make && make install
    ldconfig
[SOX]
    cd /usr/local/src/sox-14.4.1
    ./configure
    make -s
    make install
    ldconfig

这些是通过这种方式构建后的 sox 功能:

BUILD OPTIONS
Debugging build............no
Distro name ...............not specified!
Dynamic loading support....no
Pkg-config location........$(libdir)/pkgconfig
Play and rec symlinks......yes
Symlinks enabled...........yes

OPTIONAL DEVICE DRIVERS
ao (Xiph)..................yes
alsa (Linux)...............no
coreaudio (Mac OS X).......no
sndio (OpenBSD)............no
oss........................yes
pulseaudio.................no
sunaudio...................no
waveaudio (MS-Windows).....no

OPTIONAL FILE FORMATS
amrnb......................yes
    dlopen amrnb..............no
amrwb......................yes
    dlopen amrwb..............no
ffmpeg.....................no
flac.......................no
gsm........................yes (in-tree)
lpc10......................yes (in-tree)
mp2/mp3....................yes
id3tag....................yes
lame......................yes
    lame id3tag...............yes
    dlopen lame...............no
mad.......................yes
    dlopen mad................no
twolame...................yes
    dlopen twolame............no
oggvorbis..................yes
sndfile....................yes
dlopen sndfile............no
wavpack....................yes

OTHER OPTIONS
ladspa effects.............no
magic support..............no
png support................no
GOMP support...............yes

相关内容