I have build and installed Aquila-dsp in the directory aquila
This is the code I am trying to execute:
#include "aquila/source/WaveFile.h"
#include <iostream>
int main(int argc, char *argv[])
{
if (argc < 2)
{
std::cout << "Usage: wave_info <FILENAME>" << std::endl;
return 1;
}
Aquila::WaveFile wav(argv[1]);
std::cout << "Filename: " << wav.getFilename();
std::cout << "\nLength: " << wav.getAudioLength() << " ms";
std::cout << "\nSample frequency: " << wav.getSampleFrequency() << " Hz";
std::cout << "\nChannels: " << wav.getChannelsNum();
std::cout << "\nByte rate: " << wav.getBytesPerSec()/1024 << " kB/s";
std::cout << "\nBits per sample: " << wav.getBitsPerSample() << "b\n";
return 0;
}
The error I am getting:
name@>include$ g++ -std=gnu++11 test.cpp
/tmp/cc1izV5P.o: In function `main':
test.cpp:(.text+0xa7): undefined reference to `Aquila::WaveFile::WaveFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Aquila::StereoChannel)'
test.cpp:(.text+0x120): undefined reference to `Aquila::WaveFile::getAudioLength() const'
test.cpp:(.text+0x23c): undefined reference to `Aquila::WaveFile::~WaveFile()'
test.cpp:(.text+0x2a6): undefined reference to `Aquila::WaveFile::~WaveFile()The error I am getting
collect2: error: ld returned 1 exit status
This is the directory structure and files:
.
├── aquila
│ ├── aquila.h
│ ├── Exceptions.h
│ ├── filter
│ │ ├── MelFilterBank.h
│ │ └── MelFilter.h
│ ├── filter.h
│ ├── functions.h
│ ├── global.h
│ ├── ml
│ │ ├── Dtw.h
│ │ └── DtwPoint.h
│ ├── ml.h
│ ├── source
│ │ ├── Frame.h
│ │ ├── FramesCollection.h
│ │ ├── generator
│ │ │ ├── Generator.h
│ │ │ ├── PinkNoiseGenerator.h
│ │ │ ├── SineGenerator.h
│ │ │ ├── SquareGenerator.h
│ │ │ ├── TriangleGenerator.h
│ │ │ └── WhiteNoiseGenerator.h
│ │ ├── header.h
│ │ ├── PlainTextFile.h
│ │ ├── RawPcmFile.h
│ │ ├── SignalSource.h
│ │ ├── WaveFile.h
│ │ ├── WaveFileHandler.h
│ │ └── window
│ │ ├── BarlettWindow.h
│ │ ├── BlackmanWindow.h
│ │ ├── FlattopWindow.h
│ │ ├── GaussianWindow.h
│ │ ├── HammingWindow.h
│ │ ├── HannWindow.h
│ │ └── RectangularWindow.h
│ ├── source.h
│ ├── synth
│ │ ├── KarplusStrongSynthesizer.h
│ │ ├── SineSynthesizer.h
│ │ └── Synthesizer.h
│ ├── synth.h
│ ├── tools
│ │ └── TextPlot.h
│ ├── tools.h
│ ├── transform
│ │ ├── AquilaFft.h
│ │ ├── Dct.h
│ │ ├── Dft.h
│ │ ├── FftFactory.h
│ │ ├── Fft.h
│ │ ├── Mfcc.h
│ │ ├── OouraFft.h
│ │ └── Spectrogram.h
│ ├── transform.h
│ └── wrappers
│ └── SoundBufferAdapter.h
├── header.h
├── test.c
├── test.cpp
├── tst.c
└── UnitTest++
├── AssertException.h
├── CheckMacros.h
├── Checks.h
├── CompositeTestReporter.h
├── Config.h
├── CurrentTest.h
├── DeferredTestReporter.h
├── DeferredTestResult.h
├── ExceptionMacros.h
├── ExecuteTest.h
├── HelperMacros.h
├── MemoryOutStream.h
├── Posix
│ ├── SignalTranslator.h
│ └── TimeHelpers.h
├── ReportAssert.h
├── ReportAssertImpl.h
├── TestDetails.h
├── Test.h
├── TestList.h
├── TestMacros.h
├── TestReporter.h
├── TestReporterStdout.h
├── TestResults.h
├── TestRunner.h
├── TestSuite.h
├── TimeConstraint.h
├── TimeHelpers.h
├── UnitTest++.h
├── UnitTestPP.h
└── XmlTestReporter.h
12 directories, 82 files
Host:
Linux host 4.2.0-16-generic
#19-Ubuntu SMP Thu Oct 8 15:35:06 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
g++ (Ubuntu 5.2.1-22ubuntu2) 5.2.1 20151010
How to properly compile this?
Hello,
RépondreSupprimerI have the same problem. I've posted it here
https://stackoverflow.com/questions/44317406/undefined-reference-to-aquilawavefile
Best!