cv.jit windows error 14001

AmazingRolo's icon

Hello,

I've built some jitter patches on my Mac and now I'm trying to run them on my Windows machine and I'm running into trouble with the cv.jit library.

I've downloaded and installed the latest version of cv.jit (following the directions in the readme) but none of the objects work. When I add one to a patch I get an error in the Max window: Error 14001 loading external cv.jit.faces (for example).

I'm running a fresh install of Windows 7, and Max 5.1.4.

Any help would be great, many thanks!

seejayjames's icon

Some other related postings here:

...though it looks as if it hasn't been completely resolved yet.

AmazingRolo's icon

Yes that thread (and one or two others) just seem to hint that there can be a problem with DLL files, though I haven't figured out how to resolve it in my case. Since this is a fresh install I don't think it has the .NET or Visual Studio frameworks referenced in that thread. Another solution I found was to install Java, which I did to no avail.

Thanks for the tip, though. Anyone have any other suggestions? Cheers!

Jean-Marc Pelletier's icon

Hi,

I'd appreciate if Windows users who are seeing errors would give these objects a try and tell me if they work:

(Just copy the .mxe files to the cv.jit-support/externals/ folder to overwrite the old ones.)

Thanks!

Jean-Marc

AmazingRolo's icon

Hello Jean-Marc,

Many thanks for posting the new versions.

I still can't get cv.jit.faces to work, but I've tried a few of the other objects and they seem to work fine. I'm not sure if they were working before, though!

These are working fine so far: cv.jit.blobs, cv.jit.binedge, cv.jit.dilate and cv.jit.centroids

But these still return the same "error 14001": cv.jit.centroids, cv.jit.faces, cv.jit.canny, cv.jit.features

I'm afraid I don't have time right now to check the rest of them for you, I apologize for the partial (and entirely random) sampling, if it is helpful for you I can test the rest of them tomorrow.

Cheers!

manecante's icon

Hi Jean-Marc,
I tested all your new cv.jit externals on Windows 7, 32 bits.
I still get the "error 14001" with the following externals :
cv.jit.blobs.recon, cv.jit.canny, cv.jit.faces, cv.jit.features, cv.jit.hsflow, cv.jit.learn, cv.jit.shift, cv.jit.lines, cv.jit.lkflow, cv.jit.opticalflow, cv.jit.resize, cv.jit.snake, cv.jit.track, cv.jit.threshold.
Thank's for your work.

Joshua Kit Clayton's icon

A useful utility in tracking down dll dependencies is dependency walker.

Also a likely culprit can be the MS C Runtime libraries. Newer versions require them to be installed by the MS installer. This is one of the reasons we provide maxcrt.dll.

Jean-Marc Pelletier's icon

Yes, I've been using Dependency Walker.

There appears to have been two problems, related to OpenCV, which is why only some externals have problems. One of the external dependencies that might have been causing problems is the OpenMP dll. I thought I had turned OpenMP off when compiling the static OpenCV libs, but there was still a #define that was causing it to be linked.

The other, more problematic culprit was msvcr90.dll. Maxcrt and libcmt/libcpmt were causing multiple definition conflicts, and so I instructed the linker to ignore them. However, a few functions (std::string methods) were left without definitions, and this is what ended up causing the dependency to msvcr90.dll. Since there was no error or warning and the externals ran fine on the machines I tested them on, I assumed everything was ok.

The solution is to specify /nodefaultlibs and manually insert libcpmt.lib and kernel32.lib in the additional dependencies. The order is important: libcmt/libcpmtmust

come after maxcrt.lib, or else conflicts will result.

I uploaded another version that I think should solve the problems:
http://jmpelletier.com/data/externals-win32-test-2.zip

Let me know if this solves the issues.

AmazingRolo's icon

Hello Jean-Marc, sorry for the delay getting back to you.

I'm very happy to say that the latest version works perfectly! I don't pretend to understand what the problem was, but all I know is that now all the cv.jit objects work on my windows machine. That's brilliant, thanks so much for all your hard work.

Yann

Jean-Marc Pelletier's icon

Hi Yann,

Thanks for taking the time to try things out. Don't worry if my last post was a bit over your head! I just posted the info in case another developer was in the same situation.

I'll wait until tomorrow to make the fix official, just in case some people are still having troubles and because I really need to get some sleep!

Jean-Marc

Joshua Kit Clayton's icon

Glad you all were able to figure these dependencies out! Sorry for the CRT nuisance, Jean-Marc.

Les Stuck's icon

There's a brand new build for Mac and Windows that’s 64-bit compatible
and tested on Max 7!

Download the cv.jit Starter Kit at http://www.maxology.club

Leave a comment and let us know how it’s working for you!

Happy patching!