Do you mean compiling software from sources?
It is really not difficult.
When difficulties arise, it's usually because there are unmet dependencies. Then you have to go out and find the dependencies and install them. Sometimes, meeting one dependency reveals another. This is referred to as "dependency hell