Hello,
I'm using the preview of the UWP library to build my app but I'm having some problems with the .Net Native compiler.
I can build the app in Debug mode and it runs perfectly fine, so I can confirm that this is not a problem with my code.
I posted a question on StackOverflow with the compiler errors I get when building a Store Package (and every time I compile using the .Net Native toolchain) with Visual Studio: .Net Native compiler crash - StackOverflow
I managed to get in contact with a guy from the Microsoft .Net Native team and I sent him a repro of the project, here is his answer:
"So you have a bunch of files in here that are *.rd.xml. I don’t actually think you need any of them except the one that is Properties\Default.rd.xml. The rd.xml files help provide hints to the native compiler about what kinds of things you’d like it to generate. In the case of the Telerik ones, it’s saying please provide Serialization code for all of my Telerik types. This is most likely unnecessary and, in fact, causing the serialization generator to choke and die horribly."
"Those rd.xml files are probably in the Telerik packages VS will only
create a Default.rd.xml for new UWP applications not for class libraries. You
can probably just delete them from the set of stuff you got from Telerik. I’m
happy to talk to any Telerik folks about this if you have a contact you can
point me to."
I tried to manually delete the *rd.xml files from the library folder, but then the app couldn't even compile in debug mode.
I was wondering if you were aware of this issue and/or if it has already been fixed in the upcoming first official release of the Telerik UWP library.
I've been working on an app for more than a month and I haven't been able to release a single beta due to this problem,I hope you guys can help me :)
I'll be happy to forward the email of the .Net Native guy to you if you want to talk to him about this issue.
Let me know if you need any other details and I'll be happy to help
Have a nice day!
Sergio
10 Answers, 1 is accepted
That's an interesting case we have here and I'd love to reach all the way to its roots.
Sergio: Nowhere in our *.rd.xml files serialization policy is mentioned -- neither Serialize nor XmlSerializer. Still, they do include the default:
<
Assembly
Dynamic
=
"Required All"
Name
=
"*Application*"
/>
Can you send us the repro project, so that we can review it? In the meantinme, you might want to try this workaround -- instead of deleting the *.rd.xml files, delete their content. Just leave the required <Directives> element.
Matthew: Thanks for writing here, appreciated. Apart from the problem at hand, I might present a separate question related to runtime directives. Please, let me know if I can contact you in private.
Best regards,
Ves
Telerik
Hello Ves,
thank you for your answer. I tried to remove most of the content from the *rd.xml files, I just left the xml header and the Directives content, here's an example:
<?
xml
version
=
"1.0"
encoding
=
"utf-8"
?>
<
Directives
xmlns
=
"http://schemas.microsoft.com/netfx/2013/01/metadata"
>
<
Library
Name
=
"Map.Utils.UWP"
>
<!-- add directives for your library here -->
</
Library
>
</
Directives
>
I didn't add any library directives in any of those files.
I tried to build the project in Debug mode and it worked fine as usual, but when I built it in Release mode I got "ilc.exe exited with error 1004".
For some reason it looks like I can't get VS to generate a repro zip (Matthew asked me a repro as well), would it be ok for you if I sent a zip with the whole Release bin folder? All the generated files and the compiler material should be there as well.
Also, as I can't post a link to the zip here in the forums, would it be ok for you if I opened a support ticked for the Universal UI library (I still didn't get a UWP library license as it's still in preview), so that I'll be able to send you the link from there to keep it private?
Let me know if there's anything else I can do, thank you again for your help :)
Sergio
Can you please confirm you are using the latest available release -- its version is 2015.3.1117.45, labeled as Beta. It does not include default.rd.xml file for Map.Utils.UWP, so that makes me think you might be using an older version. If the version is correct, please go ahead and send the link in a Windows Universal support ticket. If repro is not possible, we might take a look at the Release folder, but having something to play with is always the best possible scenario.
As a side note, do you experience similar issues when compiling the sample apps included in the package? You can find them in C:\Program Files (x86)\Telerik\UI for Universal Windows Platform Q3 2015\SampleApps.
Best regards,
Ves
Telerik
Hi Ves,
looks like I was using an older version, the early preview that was released back in August.
I downloaded the last beta build (the 2015.3.1117.45) and I tried building a Store package again, but I still didn't manage to get a Release build. This time the ilc.exe process gave me the error code 1200 instead of the 1004.
I'll post a link for the Release obj folder (looks like the repro is inside one of the subfolders in that directory, as well as all the ilc compiler stuff) as a support ticket for the Universal UI.
Thanks again, I hope it won't be too difficult to find out what's causing these problems.
Best regards,
Sergio
Sure thing Ves. You can contact me through this mail: dotnetnative@<mycompanyname>.com. I have a private thread with Sergio going on as well and we'll try to keep everything in sync with the discussion here. Look forward to working out the details and getting everyone back on track.
Matt
Here is how it goes -- Sergio sent the complete project in a support ticket and the issue seems to be caused by a redundant line in the .csproj file, while Telerik assemblies and runtime directives do not seem to be related. This, stands for the latest issue reported, namely failing ilc.exe with error code 1200.
Sergio, can you please confirm this line is not needed and removing it fixes the build for you?
Matt: thanks I'll contact you shortly.
Best regards,
Ves
Telerik
Hello Ves, Matthew,
I fixed that unnecessary line (and the x86/ARM build architecture profile, I have no idea how that configuration line got messed up in the .csproj file) and I finally managed to build the app in Release mode! :)
I think the problem was first caused by those files in the Telerik UWP library, and then I forgot to remove that Repro xml tag from the .csproj file (I originally added it when I tried to generate a repro zip to send to Matthew).
Now that the beta update of the Telerik library fixed those *rd.xml files and those errors in the project file have been removed, everything is working correctly.
Thanks again to the both of you for your help, you really made my day guys :)
Cheers!
Sergio
I am glad to hear it's all working fine now.
Matt: I managed to sort it out, so no need for additional questions for the moment. Thanks, once again.
Best,
Ves
Telerik