I want to use SVM code from vlfeat lib, my main project is c++ and vlfeat lib is c. I copied *.h and *.c files(svm,svmdataset, generic,homkermap, host, random)
Then I included svm *.h file like here http://www.vlfeat.org/gcc.html
extern "C" {
#include "svm.h"
}
but I got
undefined reference to `vl_svm_new'
undefined reference to `vl_svm_train'
undefined reference to `vl_svm_get_model'
undefined reference to `vl_svm_get_bias'
undefined reference to `vl_svm_delete'
my makefile not like this
g++ main.cpp -o vlfeat-test -IVLROOT -LVLROOT/bin/a64/ -lvl
since I don't use full lib.
Seems linker can't find *.c libs, how to fix it?
UPDATE:
Even after I successfully build vlfeat and point to bin and include
VLFEAT_DIR :=/media/vlfeat
-I$(VLFEAT_DIR)
-L$(VLFEAT_DIR)/bin/a64/
extern "C"
{
//#include "svm.h"
#include <vl/svm.h>
}
it's still can't find same referencies.
UPDATE 2:
For me solution is:
-I$(VLFEAT_DIR)
-L$(VLFEAT_DIR)/bin/glnxa64
-lvl