12 Maja 2025 23:09:24
Nawigacja
· Strona Główna
· Forum

· Tomato by Shibby
· FreshTomato


Wątki na forum
Najnowsze dyskusje
· Promise VessRAID 184...
· r6400v2 bład przy u...
· drukarka drukuje tyl...
· [S] sprzęt sieciowy...
· Router do światłow...
· [sprzedam] Asus RT-A...
· Netia IPv6
· Multiroom N z wykorz...
· [S] Ubiquity Edgerou...
· [MOD] FreshTomato-AR...
· Nowe routery: UX, UC...
· asus rt-ax86u pro z ...
· Zmiana OpenVPN na wi...
· [S]UBIQUITI EdgeRout...
· Zaawansowana konfigu...
· ByPass VPN dla wybra...
· [MOD] FreshTomato-MI...
· Komputer Serwer
· Ciągle rozłączani...
· Wersje Freshtomato d...
Najpopularniejsze obecnie wątki
· r6400v2 bład prz... [16]
· Promise VessRAID ... [2]
Ankieta
Jaki procesor posiada twój router?

Broadcom MIPSEL
Broadcom MIPSEL
36% [152 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: 420
Musisz zalogować się, aby móc zagłosować.
Rozpoczęto: 02/02/2015 09:38
Twoje IP
3.17.162.15
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: 63

· Użytkowników online: 0

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

servee
24-01-2025 18:18
Światłowód + mediakonwenter. Ekranowana skrętka nie jest wymagana, taką sytuację już zastałem. Zamierzam ją wymienić na zwykłą. Da to coś?

shibby
17-01-2025 07:45
a ta skrętka ekranowana o której piszesz to jakiś wkopany przewód do bramy/furtki/kamer
y zewn? Jak tak to jego też przez zabezpieczenie podepnij.

shibby
17-01-2025 07:43
no to pora zabezpieczyć kable LAN zabezpieczeniami przeciwprzepięciow
ymi - tanio nie będzie. Jak przychodzi ci internet? Skrętką czy światłem? Jak skrętką to zacząłbym od tego.

servee
12-01-2025 12:52
Ponownie padły mi wszystkie porty sieciowe w routerze - to już 3-ci w 6 m-cy. Podejrzany to ekranowana, nieuziemiona skrętka - 12mb. Czy jest to możliwe?

dawidt
21-12-2024 01:09
siema Grin

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.

116,777,824 unikalnych wizyt