Let's look more closely at this 「音【ね】を上【あ】げない」.
As explained in the bilingual entry for the plain form 「音【ね】を上【あ】げる」 here in Weblio, the basic sense is "to give up".
However, as you note, this meaning is not immediately obvious from its constituent parts -- a closer translation would be "to raise a sound", and this doesn't connect in any clear way to the idiomatic meaning of "to give up".
If you can read Japanese, I've found the 日本国語大辞典【にほんこくごだいじてん】 (NKD) to be an invaluable resource for learning about term etymologies: derivations, historical sense development, and similar information. This dictionary is monolingual, describing Japanese vocabulary for Japanese readers. It's the closest I've found so far to the Oxford English Dictionary (OED) for the level of detail. Not every entry in the NKD is as rich as in the OED, but it's still pretty durn good. :)
The NKD entry for 「音【ね】を上【あ】げる」 is available for free online here via Kotobank. This lists two senses:
(1) When crying, to use one's voice to cry. To emit a crying voice (that is, to cry audibly).
(Not a perfect translation by any means, but hopefully this conveys the basic ideas.)
This one doesn't explicitly say "this is the derivation", but this is basically the derivation -- this is the key to unlocking the idiomatic meaning.
(2) To be unable to bear difficulty or suffering and to make a sound with one's voice. To emit a whimper. To submit.
I suspect this might be where Kanshudo's translation picked up the "confronted with difficulties" bit.
→ At any rate, 「音【ね】を上【あ】げる」 might be best thought of as analogous to the also-non-obvious English phrase, "to cry (or say) uncle".