From The Document Foundation Wiki
Jump to: navigation, search
Issues Fixed in MSVC 2015

Precompiled header issue (FIXED)


option doesn't work. The error is that the memory is needed is not sufficient, with the hint to increase the factor with /ZmXXX option:[1]. Even though the option was set to the max. allowed value: /Zm2000 in this change: [2]. This is still failing.

This looks like a compiler bug:

In context of this gerrit patch:

The value was increased from /Zm500 to /Zm2000. It was pointed out on MS's knowledge base, that at least in one case, it helped to remove this option entirely, to get rid of this error.

  • So replace it with this patch:

MS's knowledge base lists this bug reports:

with possible resolution:

  • Use "/Xm" instead of "/Zm" or switch to the 64-bit hosted compiler.
  • I have switched to the 64-bit compiler with <UseNativeEnvironment>true</UseNativeEnvironment> and now the errors are gone. Thank you very much!

.Net is broken (FIXED)

.Net part in unoil is failing to emit:

> error: .NET exception occurred: System.ArgumentException: Der Typ muss ein von der Laufzeit angegebener Typ sein.
Parametername: types
   bei System.DefaultBinder.SelectMethod(BindingFlags bindingAttr, MethodBase[] match, Type[] types, ParameterModifier[] modifiers)
   bei System.RuntimeType.GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers)
   bei System.Type.GetConstructor(BindingFlags bindingAttr, Binder binder, Type[] types, ParameterModifier[] modifiers)
   bei System.Type.GetConstructor(Type[] types)
   bei climaker.TypeEmitter.complete_struct_type(struct_entry entry)
   bei climaker.TypeEmitter.~TypeEmitter()
   bei climaker.TypeEmitter.Dispose(Boolean A_0)
   bei climaker.TypeEmitter.Dispose()
   bei ?A0x48efeb13.sal_main()
> dying abnormally...C:/Users/david/projects/libo/unoil/ recipe for target 'C:/Users/david/projects/libo/instdir/program/cli_oootypes.dll' failed
make[1]: *** [C:/Users/david/projects/libo/instdir/program/cli_oootypes.dll] Error 1


Root cause:

    public override MethodBase SelectMethod(BindingFlags bindingAttr,MethodBase[] match,Type[] types,ParameterModifier[] modifiers)
            int i;
            int j;
            Type[] realTypes = new Type[types.Length];
            for (i=0;i<types.Length;i++) {
                realTypes[i] = types[i].UnderlyingSystemType;
                if (!(realTypes[i] is RuntimeType))
                    throw new ArgumentException(Environment.GetResourceString("Arg_MustBeType"),"types");

LibreOffice window doesn't appear (FIXED)

Fixed with:

Soffice process is starting, but window doesn't appear:

Stack thread:

Info log:

To debug, add

  volatile int i = 1; while (i) {};

to the

int Desktop::Main()

method and change i to 0 once the debugger is attached.

Non supported modules (FIXED)

Module Problem Notes Action Status
graphite compile error Bug upstream: Fixed in
jpeg-turbo hard coded 86 platform Fixed Fixed in
libgltf hard coded 86 platform Fixed Fixed in
odk WError Fixed Fixed in
firebird link error Fixed upstream in 3.0 Fixed in

EH in uno bridge is broken (FIXED)

Uno bridge was fixed as of:

cd testtools && make

Installer is broken (FIXED)

Windows Installer tools

  • msiinfo
  • msidb
  • [...]

cannot be found on x64 bit build[3].

Why? Because Windows SDK bin path is set to:

C:\Program Files (x86)\Windows Kits\8.1\bin\x64

but the msi tools are only available in x86 directory:

C:\Program Files (x86)\Windows Kits\8.1\bin\x86

Fixed in

just works. Great job, Mark!