Skip to content
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

How to get 64bit dll for python in windows by Makefile.win #19

Open
simsong opened this issue Jan 22, 2018 · 5 comments
Open

How to get 64bit dll for python in windows by Makefile.win #19

simsong opened this issue Jan 22, 2018 · 5 comments

Comments

@simsong
Copy link

simsong commented Jan 22, 2018

From @CharlesMei on July 25, 2015 19:1

I want to use python interface for 64bit python in windows, but the liblinear.dll in the /windows directory seems to be 32bit one. And i can not generate 64bit dll by "nmake -f Makefile.win clean all" , this just generate exe file in /windows directory. So how can i do that?

Copied from original issue: cjlin1#12

@simsong
Copy link
Author

simsong commented Jan 22, 2018

From @infwinston on July 26, 2015 5:13

You should try "nmake -f Makefile.win lib" to generate .dll file.

@simsong
Copy link
Author

simsong commented Jan 22, 2018

From @CharlesMei on July 26, 2015 8:28

@infwinston Thank you! It works! But when i use "from liblinearutil import *", it throws "AttributeError: function 'find_parameter_C' not found".When i comment "fillprototype(liblinear.find_parameter_C, None, [POINTER(problem), POINTER(parameter), c_int, c_double, c_double, POINTER(c_double), POINTER(c_double)])" in the liblinear.py, it throws no errors. But what should i do if i want to use find_parameter_C

@simsong
Copy link
Author

simsong commented Jan 22, 2018

From @infwinston on July 26, 2015 18:7

Hi, @CharlesMei
I find the problem is the authors forget to add somethings in linear.def,
Here is one of the solutions for now,
in linear.def, add a line of code:

"find_parameter_C @20"

then re-compile the dll file, you may use the function successfully.
Hope this helps.

@simsong
Copy link
Author

simsong commented Jan 22, 2018

From @infwinston on July 27, 2015 5:20

BTW, I think the dll file in liblinear-2.01 is already 64-bit version, why do you need to re-generate the dll?

@simsong
Copy link
Author

simsong commented Jan 22, 2018

From @CharlesMei on July 27, 2015 13:11

Hi, @infwinston Thank you! It works well! You're right, it's already 64-bit version. When i use the original dll in liblinear-2.01, it throws errors when i use "from liblinearutil import *", and it is because of the find_parameter_C problem. When i use libsvm-3.20, it needs to re-generate the dll for 64bit to solve the import error, so i thought it may need to do the same in liblinear-2.01. I'm sorry for that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant