dotnet / corert

This repo contains CoreRT, an experimental .NET Core runtime optimized for AOT (ahead of time compilation) scenarios, with the accompanying compiler toolchain.

Home Page:http://dot.net

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Generating native code with Grpc.Core

DenMpei opened this issue · comments

Good day!

I hit the following issue:
dotnet publish -r win-x64 leads to numerous compilation errors

image

Inside the package is used Grpc.Core 2.28.1

image

Сompile with Microsoft.DotNet.ILCompiler 1.0.0-alpha-29408-02

Adding code from this issue doesn't help

I ask to give advice to solve the problem.
Regards.

Adding code from this issue doesn't help

The attribute got renamed to UnmanagedCallersOnly. Try this definition:

[AttributeUsage(AttributeTargets.Method)]
public sealed class UnmanagedCallersOnlyAttribute : Attribute
{
public string EntryPoint;
public CallingConvention CallingConvention;
public UnmanagedCallersOnlyAttribute() { }
}

Didn't work :( I will try to provide a minimal version of the project. But it won't be soon, because reference on Grpc.Core is very deep in real project. :(

Didn't work :( I will try to provide a minimal version of the project. But it won't be soon, because reference on Grpc.Core is very deep in real project. :(

Make sure you put the UnmanagedCallersOnlyAttribute-annotated method in the entrypoint assembly (whatever assembly is the main executable). The compiler doesn't look elsewhere.