[Mesa-dev] Problem with LLVM on Windows with MSVC

Predut, Marius marius.predut at intel.com
Fri Apr 10 01:21:07 PDT 2015


Try to make local changes and remove this from file:
#if defined(_MSC_VER)
static double copysign(double x, double y)
…
#endif
It needs because vs 2013 has his own copysign  function as standard api and then back here

marius

From: Shervin Sharifi [mailto:shervin0 at gmail.com]
Sent: Thursday, April 09, 2015 8:45 PM
To: Predut, Marius
Cc: mesa-dev at lists.freedesktop.org
Subject: Re: [Mesa-dev] Problem with LLVM on Windows with MSVC

Thank you.
I have compiled llvm with /MDd options, but Mesa doesn't accept that and asks for /MTd.
So I compiled llvm with /MTd and it worked.
However, I prefer to change Mesa to dynamic option, but I don't know how to do that. I tried the following, but got another error:

The only thing I found is this in the scons\gallium.py:
    if env['platform'] == 'windows' and msvc:
        # Choose the appropriate MSVC CRT
        # http://msdn.microsoft.com/en-us/library/2kzt1wy3.aspx
        if env['build'] in ('debug', 'checked'):
            env.Append(CCFLAGS = ['/MTd'])
            env.Append(SHCCFLAGS = ['/LDd'])
        else:
            env.Append(CCFLAGS = ['/MT'])
            env.Append(SHCCFLAGS = ['/LD'])

I changed the /MTd to /MDd and compiled. I got the following error, so I'm not sure if this is the right way of doing it.

src\glsl\ir_constant_expression.cpp(57) : error C2491: 'copysign' : definition of dllimport function not allowed

Thanks,
    Shervin

P.S. You're right Marius. It was a typo. I missed the i at the end when copying the command line ("gd" instead of "gdi").


On Thu, Apr 9, 2015 at 9:42 AM, Predut, Marius <marius.predut at intel.com<mailto:marius.predut at intel.com>> wrote:

Indeed seems you have some incompatible libraries (one build static and other dynamic –dll)

https://bugzilla.mozilla.org/show_bug.cgi?id=732124

but what suppose `libgl-gd' target? Is this a typo mismatch?

Try to build llvm in a dynamic mode , may be it will solve your problems


marius


From: mesa-dev [mailto:mesa-dev-bounces at lists.freedesktop.org<mailto:mesa-dev-bounces at lists.freedesktop.org>] On Behalf Of Shervin Sharifi
Sent: Thursday, April 09, 2015 2:57 AM
To: mesa-dev at lists.freedesktop.org<mailto:mesa-dev at lists.freedesktop.org>
Subject: [Mesa-dev] Problem with LLVM on Windows with MSVC

Hi,

 I'm trying to build mesa on windows (MSVC) with gles support and with llvm.
 Here are the keys I'm using:
scons.py gles=yes llvm=yes platform=windows libgl-gd

 I'm getting a bunch of errors like this:

LLVMCore.lib(ValueSymbolTable.obj) : error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MDd_DynamicDebug' doesn't match value 'MTd_StaticDebug' in mesa.lib(uniform_query.obj)

I understand that this is due to mismatch between the runtime libraries, but I don't know how to fix it.
Should I change the CRT in llvm or in mesa? How should I do that?

 Thanks,
     Shervin






-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20150410/7fef8b59/attachment-0001.html>


More information about the mesa-dev mailing list