mhoopmann / mstoolkit

Automatically exported from code.google.com/p/mstoolkit
27 stars 10 forks source link

Compiling mstoolkit fails on Ubuntu 18.04 #16

Closed sampie closed 6 years ago

sampie commented 6 years ago

Hi,

Trying to compile mstoolkit under ubuntu 18.04 with make -command gives following errors. It seems that library needs to be placed to the end of the compile command. See attached diff.txt for the fix.

g++ -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DGCC -DHAVE_EXPAT_CONFIG_H -I./include -lm -lpthread -ldl -L. -lmstoolkitlite MSSingleScan/MSSingleScan.cpp -o msSingleScan.shared /tmp/cccdX1XP.o: In function main': MSSingleScan.cpp:(.text+0x33): undefined reference toMSToolkit::MSReader::MSReader()' MSSingleScan.cpp:(.text+0x42): undefined reference to MSToolkit::Spectrum::Spectrum()' MSSingleScan.cpp:(.text+0x81): undefined reference toMSToolkit::MSReader::setFilter(MSToolkit::MSSpectrumType)' MSSingleScan.cpp:(.text+0x95): undefined reference to MSToolkit::MSReader::addFilter(MSToolkit::MSSpectrumType)' MSSingleScan.cpp:(.text+0xa9): undefined reference toMSToolkit::MSReader::addFilter(MSToolkit::MSSpectrumType)' MSSingleScan.cpp:(.text+0xbd): undefined reference to MSToolkit::MSReader::addFilter(MSToolkit::MSSpectrumType)' MSSingleScan.cpp:(.text+0xf9): undefined reference toMSToolkit::MSReader::readFile(char const, MSToolkit::Spectrum&, int)' MSSingleScan.cpp:(.text+0x10d): undefined reference to MSToolkit::Spectrum::getScanNumber(bool)' MSSingleScan.cpp:(.text+0x13e): undefined reference toMSToolkit::Spectrum::getNativeID(char, int)' MSSingleScan.cpp:(.text+0x156): undefined reference to MSToolkit::Spectrum::getScanNumber(bool)' MSSingleScan.cpp:(.text+0x18b): undefined reference toMSToolkit::Spectrum::getScanNumber(bool)' MSSingleScan.cpp:(.text+0x1ad): undefined reference to MSToolkit::Spectrum::sizeMZ()' MSSingleScan.cpp:(.text+0x1de): undefined reference toMSToolkit::Spectrum::getNativeID(char*, int)' MSSingleScan.cpp:(.text+0x201): undefined reference to MSToolkit::Spectrum::getScanNumber(bool)' MSSingleScan.cpp:(.text+0x217): undefined reference toMSToolkit::Spectrum::getScanNumber(bool)' MSSingleScan.cpp:(.text+0x245): undefined reference to MSToolkit::Spectrum::sizeMZ()' MSSingleScan.cpp:(.text+0x26d): undefined reference toMSToolkit::Spectrum::getMZ(int)' MSSingleScan.cpp:(.text+0x2ad): undefined reference to MSToolkit::Spectrum::getRTime()' MSSingleScan.cpp:(.text+0x2cd): undefined reference toMSToolkit::Spectrum::getRTime()' MSSingleScan.cpp:(.text+0x300): undefined reference to MSToolkit::Spectrum::sizeZ()' MSSingleScan.cpp:(.text+0x32a): undefined reference toMSToolkit::Spectrum::atZ(int const&)' MSSingleScan.cpp:(.text+0x347): undefined reference to MSToolkit::Spectrum::atZ(int const&)' MSSingleScan.cpp:(.text+0x39d): undefined reference toMSToolkit::Spectrum::size()' MSSingleScan.cpp:(.text+0x3cb): undefined reference to MSToolkit::Spectrum::at(int const&)' MSSingleScan.cpp:(.text+0x3f5): undefined reference toMSToolkit::Spectrum::at(int const&)' MSSingleScan.cpp:(.text+0x448): undefined reference to MSToolkit::Spectrum::~Spectrum()' MSSingleScan.cpp:(.text+0x457): undefined reference toMSToolkit::MSReader::~MSReader()' MSSingleScan.cpp:(.text+0x47c): undefined reference to MSToolkit::Spectrum::~Spectrum()' MSSingleScan.cpp:(.text+0x490): undefined reference toMSToolkit::MSReader::~MSReader()' collect2: error: ld returned 1 exit status Makefile:52: recipe for target 'solib' failed make[1]: [solib] Error 1 make[1]: Leaving directory '/home/sami/src/mstoolkit' Makefile:36: recipe for target 'all' failed make: [all] Error 2

fix.txt

mhoopmann commented 6 years ago

Thanks, I'll get this cleaned up next chance I get. The libraries probably built fine, but the linking to the demo application (MSSingleScan) seems to cause the problem. Linking the libraries to your application shouldn't be a problem.