You'll need to add the ndkVersion to the android/build.gradle file in buildscript.ext, should look similar to that
buildscript {
ext {
ndkVersion = xxx //<-- Add this
buildToolsVersion = xxx
minSdkVersion = xxx
compileSdkVersion = xxx
targetSdkVersion = xxx
}
...
From my own experience, after migrating 2 very large RN apps (with at least 20 different libraries with linking included) I've concluded that the next solution is the safest but the slowest solution:
So on trying to implement npx react-native upgrade I got warnings/errors which tell that upgrade couldn't succeed - that could happen due to files where I had committed some changes. The solution is to create a brand new React Native project (better to create with the same bundle id/name as your current) and to copy/paste the source code from the previous project into the brand new one and after that to link each library one-by-one and make one-by-one build after each library so you keep track of whole process and don't get a large list of errors coming from any of them on app build.