amueller / damascene-python-and-matlab-bindings

Python and matlab bindings for the Damascene CUDA implementation of gPB
13 stars 12 forks source link

Help building matlab bindings #9

Open dkunsberg opened 5 years ago

dkunsberg commented 5 years ago

Hi there,

I know that this repository is depreciated, but I have sincerely been trying to build this, and I think there is hope. I've been trying to build the matlab bindings and have run into some struggles documented here: https://stackoverflow.com/questions/53734092/expected-or-before-token-while-building-a-mex-file/53736962#53736962 . The responses, and your 7 year old blog post suggest that I am am to use the makefile within the bindings folder to make the mex. Since you removed some of the key components from each folder, the makefile aborts. How should I approach this? can you provide any clue to how to correctly build a 64bit functional program? Any guidance at all would be hugely appreciated!

amueller commented 5 years ago

Hey. What key components are you talking about? I didn't remove anything from the folder. And yes, you have to use the makefile in the bindings directory to make the mex file.

dkunsberg commented 5 years ago

For example, when I build the make file in the bindings territory, it refers to the common.mk in the master branch, which iterates through the common.mk of each individual folder. I believe you removed some extraneous libraries (i.e. main.cu from stencilMatrixMultiply), but the make file still references them. Its no big deal, I can either extract them from the original Damascene repository or build each one manually.

However, one big question: the final line of the makefile in the bindings directory calls a -lcutil_i386, which i believe is a depreciated CUDA library. Can I just remove this or do you have any suggestions for a work around? Thank you so much.

amueller commented 5 years ago

I don't know of the status of cutil but I know functions in there are called. So just removing it is unlikely to work. I don't remember removing any files (but this has been a while), you can check against the main repo. The repo that's here definitely built at the time and was self-contained and used by several people. So if anything is missing now that is probably a misconfiguration somewhere or an update broke something.