I like some of the answers you got
on reddit, particularly about looking at dependencies, though an important amendment to what Qweesdy said is that those dependencies may not be requirements - OpenCV, for example, can be built without any GPU dependencies (it'll be very slow doing all of its work in software, but it's capable of it!).
Your thought of using
strace I don't think will get you too far.
strace tells you about system calls, but system calls won't tell you very much about what an application needs when it's hidden away behind generic interfaces like device files and sockets. Looking at libraries is far more important, especially if your aim is to answer the question of what your OS needs to port something.