[sldev] cannot open file 'OpenJPEG.lib'

Erik Anderson odysseus654 at gmail.com
Sun Nov 18 21:13:33 PST 2007


You know, whenever I've received these "conflicting library versions", using
"ignoredefaultlib" has been precisely the WRONG method to try.  Yes I know
it seems obvious, but it is probably leading to a heck of a lot of other
issues.

The problem here is that the libraries that you compile with need to match.
You are wanting to go into the "code generation" tab of your project and
take a very close look as to what each of the options in there does.  There
is a single switch that moves you from "single threaded", "single threaded
dll", "single threaded debug", "single threaded debug dll", "multithreaded",
"multithreaded dll", "multithreaded debug", "multithreaded debug dll".  Each
of these options links against a different variation of the runtime library,
of which msvcrt.dll and msvcrtd.dll are two.

I recognize that this prevents you from linking debug applications against
release static libs, but there can only be one version of the runtime dll
loaded.  You can enable other debug aspects of your application, such as
turning off optimizations, turning on local variable debugging, and so on,
so your application is *almost* a debug app, except without the extra debug
functionality that a debug runtime gives you.

I must say that when linking two libs together going through and making sure
that this one switch is the same in all the components is one of the biggest
timesinks I have.  Not doing it means that the link will never succeed
though...

On 11/18/07, Kelly Linden <kelly at lindenlab.com> wrote:
>
> Ryan Williams (Which) wrote:
> > Anna Gulaev wrote:
> >> On 11/18/07, *Anna Gulaev* <annagulaev at gmail.com
> >> <mailto:annagulaev at gmail.com>> wrote:
> >>
> >>     I am not having these troubles building the release version.
> >>
> >>
> >> Perhaps I was building the wrong version. Apparently,
> >> ReleaseForDownload has some debug info and ReleaseNoOpt has more, and
> >> both of these build okay. Debug is something else and has its own
> >> build requirements.
> >>
> > You know, I've never successfully built in Debug.  I assumed that
> > someone else used that mode for great justice, or something, but
> > ReleaseNoOpt has always been good enough for me.
> >
> > Has anyone gotten any use out of Debug, or is it just a vestige/trap
> > for the unwary?  Could we nuke it?
> >
> > -RYaN
> >
> Debug is most useful when you need debug versions of 3rd party libs.
> You don't really want to mix debug libs with release libs for the reason
> of all the link errors already mentioned.  While maybe rarely used it is
> probably worth maintaining for this reason.
>
> - Kelly
>
> _______________________________________________
> Click here to unsubscribe or manage your list subscription:
> /index.html
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.secondlife.com/pipermail/sldev/attachments/20071118/ecbad77b/attachment.htm


More information about the SLDev mailing list