PS2: Problema se impute.
- Am dezinstalat mc si mbed tls din Entware, dar tot nu merge. Pun LD_LIBRARY_PATH - merge.
- Caut pe net despre CMAKE. Aflu ca in executabilele compilate ar trebui sa existe
RPATH si RUNPATH care spun unde se gasesc .so-urile.
- Citesc manualul CMAKE despre RPATH si RUNPATH. Aflu ca se poate.
- Asadar studiez sursele Hiawatha 2 ore. Nimic in neregula. RPATH sunt la locul lor.
- Caut in programul compilat dupa RPATH si /opt/lib/hiawatha - nimic!
- Incep sa banuiesc ceva...
![Hmm :hmm: :hmm:](/smilies/hmm.gif)
Caut pe net banuiala.
- Constat ca uclibc nu foloseste RPATH sau RUNPATH. E batut in cap si cauta doar in LD_LIBRARY_PATH.
- F*CK!!!
Concluzie:
- Nu pot avea Hiawatha cu RPATH daca folosesc toolchain-ul router-ului (uclibc).
- Daca pun mbed TLS cu uclibc in /opt/lib, nu merge, ca mbed incearca sa ia uclibc din /opt/lib prima data (conform ld.so.conf) unde da peste glibc si crapa.
- Si chiar daca puteam pune mbed in /opt/lib, ar crapa hiawatha, ca incearca exact acelasi lucru.
- Nu pot modifica ld.so.conf ca e read-only.
- Nu-mi dau seama cum de programele din firmware merg in configuratia asta.
- Dar si daca mi-as da seama cum de merg, nu ma ajuta ca nu pot pune hiawatha in firmware, ca e read-only
- Deci inca o data: F*CK!!!
![Mad2 :mad2: :mad2:](/smilies/mad2.gif)