I could use some help getting SOX installed on an EC2 server. My EC2 server is completely "vanilla" and is using the Amazon Linux AMI (3.4.37-40.44.amzn1.x86_64).
Most of the SOX installation instructions I could find use apt-get, which is not available on the Amazon Linux EC2 server. Since I cannot find any 'yum' instructions for installing SOX, I decided to try to compile the source myself. Here are the steps that I took:
1) I already had Git installed, so I was able to skip that step.
2) I cloned the sox repository using:
sudo git clone git://sox.git.sourceforge.net/gitroot/sox/sox
Going into the sox directory, I can see these files:
3) Next, I installed the development tools on the EC2 server:
sudo yum groupinstall "Development Tools"
4) I read the instructions in the INSTALL file, which say:
To compile and install SoX (executables, libraries, manual pages) with
a default configuration for your platform, run the following commands:./configure make -s make install
Following those instructions, I typed:
sudo ./configure
And got the error:
(Bash: ./install: No such file or directory)
Any help would be much appreciated.
=== UPDATE ====
In response to Michael Hampton's comment, I had tried "yum install sox". Sorry, I had forgotten to mention it. But it doesn't work. Here are the results:
Best Answer
You're missing a few requirements in order for sox to be usable, mainly libmad. This is what I use to install sox in an EC2:
[NOTES]
In FAAC you need to delete a line making a deprecated call or it won't compile.
LIBMAD needs a patch in order to compile.
I run ldconfig after each build, it may be overkill but a couple of times I didn't do it the install chain failed.
Don't && the build commands for sox, for some reason it fails when chained.
If you don't run ldconfig after building sox, it won't be able to find it's own shared libraries and error out.
The order is important, for example, twolame will not build before libsndfile.
These are not all the required plugins for sox, just the ones I use, check the INSTALL file inside the tarball on how to get any others you might need; the process is the same, build them (enable shared explicitly if needed) and run ldconfig after the build.
These are the sox capabilities after building this way: