Closed benshiffman closed 9 months ago
That just means that function isn't defined and/or exported. You can simply skip those because they are typically not meant for end users.
Feeling silly for skipping over the skip function. Built with no issues. Thank you!
Upon further review, I think skip() may not be what I need here. I assumed it would skip the processing of the extended namespace version of the function and pay attention to only the version in the header. I need to explicitly call the function where I've implemented the library. Is there a way to tell the parser/builder to be aware of the namespace difference?
The sample code above only has one function. If you have multiple functions and something isn't working for some reason, please provide an example of that. I can't fix what isn't broken!
Sorry for the confusion. I need to call libname_function() but skipping it using infoMap.put(new Info("LIBNAME::LibnameCppWrapper::libname_function").skip()) causes it not to be in the generated class. I'm looking to circumvent the unresolved external symbol error without skipping the function wrapping entirely.
Like I said, that's a problem with your native library, not JavaCPP. You'll need to fix your library and export that function.
Update: I'm beyond confused as to what caused this, but somehow mingw64 was using the x86 MSVC compiler, not the x64 version, which is what my library was compiled with. After I started a fresh instance and verified that running "cl" was showing x64 everything built correctly, no skip() needed.
I'm getting a strange linker error (LNK2001, LNK1120) that I haven't been able to resolve with InfoMapping (javaNames, pointerTypes). I'm almost sure it has something to do with namespace discrepancies. Is there a way to remedy this without modifying the c/c++ source code? Any guidance would be greatly appreciated.
Linker error:
This is the code I deem to be relevant from my configuration and library files. I've replaced all instance of the name of my library with appropriate capitalizations of libname/Libname/LIBNAME for privacy. Hopefully the differences are clear. My config class:
Included header mlifc.h:
CPP file mlifc.cpp