24 Listopada 2024 04:39:38
Nawigacja
· Strona Główna
· Forum

· Tomato by Shibby
· FreshTomato


Wątki na forum
Najnowsze dyskusje
· [S] Asus RT-AC56U
· DIR868l OFW asus vs ...
· Szukam zaproszenia n...
· [MOD] FreshTomato-AR...
· Asus RT-AC5300 ,prob...
· archer c6 v3.20
· [S] Nighthawk R7000P...
· [S]Asus RT-AC5300 - ...
· Tanie N100 na promce...
· net z telefonu wifi+...
· Tomato - bugi/proble...
· HUAWEI z światłowodem
· Asus TUF-AX3000_V2 p...
· rt-ax88upro częste ...
· [Howto] Xpenology na...
· Jaki router pod Open...
· Ruter z tomato
· Czy to jeszcze NAS?
· RT AC66U B1
· Wireguard na FreshTo...
Najpopularniejsze obecnie wątki
· DIR868l OFW asus ... [8]
· [S] Asus RT-AC56U [0]
Ankieta
Jaki procesor posiada twój router?

Broadcom MIPSEL
Broadcom MIPSEL
36% [151 głosów]

Broadcom ARM
Broadcom ARM
52% [219 głosów]

Atheros
Atheros
5% [22 głosów]

Marvell
Marvell
1% [4 głosów]

Ralink
Ralink
1% [3 głosów]

Intel/AMD/VIA
Intel/AMD/VIA
1% [5 głosów]

Żaden z powyższych
Żaden z powyższych
4% [15 głosów]

Ogółem głosów: 419
Musisz zalogować się, aby móc zagłosować.
Rozpoczęto: 02/02/2015 09:38
Twoje IP
3.144.45.187
Zobacz wątek
OpenLinksys » :: OPROGRAMOWANIE :: » Tomato - firmware
 Drukuj wątek
Kompilacja programów na routerze
mackowiakp
Posiadam router Asus RT-AC68R/U z Tomato w najnowszej wersji. Do portu USB podłączyłem pena 32GB i zamontowałem go do /opt. Następnie wgrałem entware (nie optware), kilka aplikacji z entware oraz kompilator gcc + wszystkie zależności jakie opkg uznało za stosowane dograć.
Mam dziwną sytuację. Próbuję skompilować najprostszy z możliwych programów, dla testów. Czyli:


#include

int main()
{
    printf("Hello World");
}


Robię to za pomocą polecenia - gcc -o test test.c - gdzie test.c to powyższy program.
następnie próbuję uruchomić ten program i otrzymuję poniższy komunikat:


root@asus:/opt/FTDI# ./test
-sh: ./test: not found
root@asus:/opt/FTDI# ls -la test
-rwxr-xr-x    1 root     root          5580 Sep 10 09:33 test


shell mówi mi że nie ma takiego programu mimo że jak widać takowy jest i jest wykonywalny dla wszystkich.

Nie mam zielonego pojęcia czym to może być spowodowane. Może ktoś mi pomoże?
Poniżej kilka dodatrkowych informacji prosto z Asusa:


root@asus:/opt/FTDI# echo $PATH
/opt/bin:/opt/sbin:/opt/bin:/opt/sbin:/bin:/usr/bin:/sbin:/usr/sbin:/home/root:/mmc/sbin:/mmc/bin:/mmc/usr/sbin:/mmc/usr/bin:/opt/sbin:/opt/bin:/opt/usr/sbin:/opt/usr/bin:
root@asus:/opt/FTDI# echo $LD_LIBRARY_PATH
/lib:/usr/lib:/usr/local/lib:/opt/lib:/opt/usr/lib:/opt/include
root@asus:/opt/FTDI# opkg list-installed|grep gcc
gcc - 5.4.0-1
libgcc - 5.4.0-5


Dziwne zjawisko....
UWAGA ! Administrator ma prawo do odmowy instalacji WINDOWS, powołując się na klauzulę sumienia
WARNING ! The administrator has the right to refuse to install WINDOWS, invoking the conscience clause
 
Steel_Rat
tu masz odpowiedź
https://github.com/Entware-ng/Entware...mpilation)
Musiałem ręcznie wpisać:

gcc -Wl,-rpath=/opt/lib -Wl,--dynamic-linker=/opt/lib/ld-linux.so.3 -L/opt/lib -O2 -pipe -march=armv7-a -mtune=cortex-a9 -fno-caller-saves -mfloat-abi=soft test.c -o test

Nie wiem dlaczego nie chcą się eksportować zmienne z pliku gcc_env ale nie chcą się eksportować. Jak wpisuje

 echo $CFLAGS 
echo $LDFLAGS

to jest pusto ....
WRT3200ACN (WRT32X) + OpenWRT 18.06+światełko 150/150 Mb/s
Asus RT-AC68UvE1 + RMerlin + Entware
Netgear WNR3500Lv2 + DDWRT
 
mackowiakp

Cytat

Steel_Rat napisał(a):
Musiałem ręcznie wpisać:

gcc -Wl,-rpath=/opt/lib -Wl,--dynamic-linker=/opt/lib/ld-linux.so.3 -L/opt/lib -O2 -pipe -march=armv7-a -mtune=cortex-a9 -fno-caller-saves -mfloat-abi=soft test.c -o test



Dzięki za odpowiedź. POMOGŁO !!!

Teraz problemów ciąg dalszy. Ale to w innym topiku. Dziękując jeszcze raz za pomoc Kolegom liczę na pomoc także i w następnym problemie !
UWAGA ! Administrator ma prawo do odmowy instalacji WINDOWS, powołując się na klauzulę sumienia
WARNING ! The administrator has the right to refuse to install WINDOWS, invoking the conscience clause
 
Steel_Rat
Cieszę się, że mogłem pomóc.
Można to trochę uprościć. Na przykład:
W pliku "/opt/etc/profile" dopisać


export LDFLAGS="-Wl,-rpath=/opt/lib -Wl,--dynamic-linker=/opt/lib/ld-linux.so.3 -L/opt/lib"
export CFLAGS="-O2 -pipe -march=armv7-a -mtune=cortex-a9 -fno-caller-saves -mfloat-abi=soft "

zresetować terminal
Potem to można wywołać kompilację poleceniem


gcc $CFLAGS $LDFLAGS test.c -o test

Można też stworzyć skrypt w katalogu "/opt/bin/" np pod nazwą "gcccp". Zawartość skryptu


gcc $CFLAGS $LDFLAGS $1 -o $2

wywołania scryptu


gcccp test.c test

WRT3200ACN (WRT32X) + OpenWRT 18.06+światełko 150/150 Mb/s
Asus RT-AC68UvE1 + RMerlin + Entware
Netgear WNR3500Lv2 + DDWRT
 
Przejdź do forum
Zaloguj
Wprowadź adres e-mail lub nazwę użytkownika

Hasło



Nie masz jeszcze konta? Zarejestruj się.

Zapomniałeś/aś hasła?
Aktualnie online
· Gości online: 89

· Użytkowników online: 0

· Łącznie użytkowników: 24,115
· Najnowszy użytkownik: Ja
Czat
Musisz się zalogować, aby opublikować wiadomość.

Maniek91PL
06-11-2024 22:37
dzięki !Grin

maxikaaz
29-10-2024 14:27
@Maniek91PL - Administration=> Admin Access, i tam masz "Allow Wireless Access" do zaznaczenia

Maniek91PL
26-10-2024 22:07
siemka! ktoś przypomni co się ustawiało jeśli nie mogę wejść od strony wifi do tomato? od lan działa

overflow2
04-10-2024 17:34
Kupowałem Asusy n10u albo n12d1 ale nie widzę ich, chyba już nie produkują, Chodzi o coś nowego i taniego. Transfery niewielkie.

maxikaaz
04-10-2024 09:38
@overflow2 patrząc po dostępności funkcji w nowych kompilacjach, to chyba nawet WRT54G/GL jeszcze ma OpenVPN, albo jakiś odpowiednik... zależy, na jakie transfery liczysz.

overflow2
30-09-2024 20:53
Jaki aktualnie najtańszy router do tomato do openvpn?

maxikaaz
27-07-2024 15:07
@servee - na początek router do rozebrania i obejrzenia, ciężko wróżyć tak tylko po objawach

maxikaaz
27-07-2024 14:55
@servee - cały kontroler nie pada tak sobie z powodu "zbiegu okoliczności",
więc prawdopodobnie gdzieś przepięcie.

servee
25-07-2024 13:33
@maxikaaz: działało, aż pewnego pięknego dnia przestało działać. W tym dniu była też burza, ale to raczej zbieg okoliczności.

maxikaaz
25-07-2024 11:38
@servee - o ile problem jest w obrębie samych wyjść (dławiki, warystory), to naprawialne, ale jeśli w samym SoC - to nienaprawialne ze względu na koszta. A co było przyczyną?

95,520,149 unikalnych wizyt