Debug build for arm64 fails upon cross-building using debug build of x64


I have observed that if we try to compile debug build ICU for x64 first and then, cross-compile the debug build for arm64, then, this build fails since ICU Data doesn't get built as it searches for tools like genrb in x64\Release folder. Due to this reason, we need to compile release build of ICU for x64 first inorder to cross-compile the debug build of arm64.

I have been able to find a workaround by making changes in makedata.mak.

I can understand that ultimately icudt66.dll contains no code but still, it would be less confusing if we are able to cross-compile Debug build for arm64 using the tools in x64\Debug itself rather than using the tools in x64\Release.


Shashank Oberoi
September 11, 2020, 4:37 AM

Thanks for your support. It’s heartening to see my PR finally getting merged, culminating in my second contribution to ICU.

Jeff Genovy
September 10, 2020, 7:23 PM
Jeff Genovy
September 10, 2020, 7:23 PM

Thanks !

Shashank Oberoi
September 10, 2020, 10:23 AM

As discussed, I have created a PR to submit my changes in makedata.mak for fixing the above issue. (Link: ).

Shashank Oberoi
September 10, 2020, 5:09 AM

sorry, I saw your comment today since by the time you commented, it was late night in India. As I had mentioned in the description that I had made changes in makedata.mak so that debug cross-build of ARM64 uses tools of x64/Debug, so, my fix is similar to yours. Actually, I was looking forward to creating the PR for the same and contributing to ICU once again due to the time and effort I had invested on this issue.

Your pinned fields
Click on the next to a field label to start pinning.


Jeff Genovy


Shashank Oberoi




Fix versions