-
Notifications
You must be signed in to change notification settings - Fork 150
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
rcnn_build() doesn't work in Matlab #2
Comments
This looks like a compile error for liblinear-1.94 which is included in the rcnn/external directory. This is likely a setup dependent issue. I have tested this linux installations with Matlab 2012b (and with mex configured), and it works for me. You can refer to instructions at the liblinear webpage (http://www.csie.ntu.edu.tw/~cjlin/liblinear/) for known issues specific to your setup. There may also be pointers to other ways to compiling it, which may also be useful. |
I remember having this issue and I resolved it by compiling it outside of Matlab.
|
Thanks for pitching in @varun-nagaraja. @alexgbelov: if you end up debugging this in your setup it will be great if you can reply back here with what worked for you. |
Could you please explain how to download liblinear from your Github page? Also, I feel that this should be posted in the Readme. |
Hi @alexgbelov Liblinear code is already available in the github code at: https://github.com/s-gupta/rcnn-depth/tree/master/rcnn/external/liblinear-1.94 . It is same as the code that is available on the liblinear website (http://www.csie.ntu.edu.tw/~cjlin/liblinear/#download) except that it does not have the pre-compiled binaries for windows (if you want those please go to the liblinear website). For installation on linux an alternative to rcnn_build() is to follow the instructions at https://github.com/s-gupta/rcnn-depth/blob/master/rcnn/external/liblinear-1.94/README and https://github.com/s-gupta/rcnn-depth/blob/master/rcnn/external/liblinear-1.94/matlab/README Thanks for your feedback, I will update the project readme to indicate these instructions. |
@varun-nagaraja, thank you, that fixed the issue. |
If somebody have same problem, try to build() with matlab 2012 version. |
I tried to compile the liblinear but even than it doesnt work. Is there any solution to use it with Matlab2014b in linux. Will be thankful. |
Issue with compiling lib-linear can be solved by doing the make from outside of the Matlab console as rightly pointed out by @varun-nagaraja. At least it worked for me. I am using R2014b and Ubuntu 12.04. More precisely do the following three changes in your 'MakeFile' inside the rcnn-depth/eccv14-code/rcnn/external/liblinear-1.94/matlab/
run the make from the console. It will build the train.mexa64 predit.mexa64 correctly for you. In order to compile the desired liblinear_train.mexa64 (as rcnn_build.m is doing) you can do 'make' outside from the matlab similarly. |
When I try to build 'rcnn_build();', I have an error like below Error using mex Error in rcnn_build (line 8) I want to know why this error was returned. Please let me know. Thank you |
@Sanggeun-Ahn As for as i remember, there is an issue with liblinear in the code. I dont remember the exact file where to change, but i think you have to change the name of liblinear-1.94 to exactly what is installed on your computer. or change the installed name to the one given in the code. |
Hi @s-gupta @Sanggeun-Ahn did you manage to resolve this problem? I am getting a similar issue, but this time while building liblinear 1.5 dense
|
I tried running rcnn_build in the matlab terminal after following all directions in the readme. I got the following error:
Error using mex
/tmp/mex_17165510705607_10154/tron.o: In function
TRON::trcg(double, double*, double*, double*)': tron.cpp:(.text+0x1d9): undefined reference to
dnrm2_'tron.cpp:(.text+0x1fc): undefined reference to
ddot_' tron.cpp:(.text+0x218): undefined reference to
dnrm2_'tron.cpp:(.text+0x251): undefined reference to
ddot_' tron.cpp:(.text+0x279): undefined reference to
daxpy_'tron.cpp:(.text+0x289): undefined reference to
dnrm2_' tron.cpp:(.text+0x2d8): undefined reference to
daxpy_'tron.cpp:(.text+0x2ee): undefined reference to
ddot_' tron.cpp:(.text+0x309): undefined reference to
ddot_'tron.cpp:(.text+0x324): undefined reference to
ddot_' tron.cpp:(.text+0x3c5): undefined reference to
daxpy_'tron.cpp:(.text+0x3f5): undefined reference to
daxpy_' tron.cpp:(.text+0x426): undefined reference to
daxpy_'tron.cpp:(.text+0x43c): undefined reference to
ddot_' tron.cpp:(.text+0x45f): undefined reference to
dscal_'tron.cpp:(.text+0x479): undefined reference to
daxpy_' /tmp/mex_17165510705607_10154/tron.o: In function
TRON::tron(double*)':tron.cpp:(.text+0x585): undefined reference to
dnrm2_' tron.cpp:(.text+0x799): undefined reference to
dnrm2_'tron.cpp:(.text+0x924): undefined reference to
daxpy_' tron.cpp:(.text+0x93a): undefined reference to
ddot_'tron.cpp:(.text+0x959): undefined reference to
ddot_' tron.cpp:(.text+0x9a6): undefined reference to
dnrm2_'collect2: error: ld returned 1 exit status
The text was updated successfully, but these errors were encountered: