Jak na razie zrobiłem dołączanie dynamiczne i wszystko działa. Ogólnie wielkie podziękowania za obrazy Backfire dla AT91 i przygotowane pliki dla MMnet1000 !
Strony 1
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
eko.one.pl → Posty przez Czaro
Strony 1
Jak na razie zrobiłem dołączanie dynamiczne i wszystko działa. Ogólnie wielkie podziękowania za obrazy Backfire dla AT91 i przygotowane pliki dla MMnet1000 !
Posiadam platformę MMnet1002. Ostatnio wgrałem sobie obrazy z eko.one.pl żeby chodził na niej Backfire. Zainstalowałem sobie od razu mysql-server oraz libmysqlclient. Wszystko działa - można obsługiwać bazy. Chciałbym jednak na kompie z Ubuntu móc kompilować programy w C (korzystając z MySQL API C) i wrzucać je na MMnet1002. Skompilowałem sobie toolchain linaro: arm-openwrt-linux-uclibcgnueabi, normalnie programy się kompilują i działają , ale chcąc skompilować programy z MySQL (który korzysta z biblioteki lmysqlclient) niestety dostaje komunikat, że nie można zlinkować funkcji mysql'a, gdyż nie można ich znaleźć (dodam, że kompilacja przy pomocy GCC działa). Domyślam się, że biblioteka lmysqlclient musi być skompilowana pod Linaro - i tutaj moje pytanie, czy muszę kompilować całego mysql'a ? Po instalacji mysql na MMnecie znalazłem tam w katalogu /usr/lib dwa pliki libmysqlclient.so.16 oraz libmysqlclient.so.16.0.0 czy mogę z nich skorzystać wrzucając na hosta i próbując skompilować ?
Dzięki za odpowiedzi. Coś tam będę kombinował.
Jak ściągam jakiekolwiek OpenWrt to muszę dogrywać swoją platformę (target/linux/at91). No a oryginalny soft, który dostałem z MMnetem kompiluje się tylko z jądrem 2.6.25.20. Jak próbuje wybrać inne to mi wyskakują te błędy o których pisałem w pierwszym poście i nie pomaga czyszczenie. Menuconfig się uruchamia, ale już Kernel_menuconfig nie. Obawiam się, że chodzi o te patchy. Gdzie oprócz katalogu /target/arch/platform mogą się znajdować jakieś wpisy, które sprawiają, że jądro z inną wersją nie chce się kompilować ?
Może i tak być, szczególnie że mi trochę wiedzy jeszcze brakuje, ale staram się nadrabiać cały czas.
Na tym module MMnet1002 co mam to okazało się, że OpenWrt i jego biblioteki zostały zbudowane na jądrze 2.6.25.20, zaś jądro na którym sam moduł pracuje to 2.6.29.3. No i mam problem. Chciałem oba dostosować do tej samej wersji 2.6.30. Patchów jako takich nie mam, więc pewnie zostawie OpenWrt taki jaki jest, a na module zmienie jądro na niższe (2.6.25.20).
Ok. Kompilacje już opanowałem, ale niestety muszę zmienić jądro na wyższe. Robię to poprzez odpowiedni wpis w /target/arm9/Makefile (LINUX_VERSION). Problem w tym, że całość się kompiluje do czasu kiedy nie jest budowany kernel (podobnie w przypadku próby skonfigurowania kernela). Próbowałem nawet wybrać inną platformę np. Atheros AR71XX i Kernela w postaci 2.6.30.2. Jeśli chodzi o OpenWrt to wersja 8.09 RC2. Kompilacja (lub konfiguracja) trwa i dostaje coś takiego:
.................
touch /home/cezary/Czaro/NewOpen/8.09/build_dir/linux-ar71xx/linux-2.6.30.2/.prepared
[ -e "/home/cezary/Czaro/NewOpen/8.09/target/linux/ar71xx/config-default" ] || touch "/home/cezary/Czaro/NewOpen/8.09/target/linux/ar71xx/config-default"
/home/cezary/Czaro/NewOpen/8.09/scripts/kconfig.pl + /home/cezary/Czaro/NewOpen/8.09/target/linux/ar71xx/config-default > /home/cezary/Czaro/NewOpen/8.09/build_dir/linux-ar71xx/linux-2.6.30.2/.config
Parse error at /home/cezary/Czaro/NewOpen/8.09/scripts/kconfig.pl line 119, <FILE> line 259.
make[2]: *** [menuconfig] Error 255
make[2]: Leaving directory `/home/cezary/Czaro/NewOpen/8.09/target/linux/ar71xx'
make[1]: *** [menuconfig] Error 2
make[1]: Leaving directory `/home/cezary/Czaro/NewOpen/8.09/target/linux'
make: *** [kernel_menuconfig] Błąd 2Jeśli nie zmieniam Kernela i zostawiam taki jaki jest fabrycznie wpisany w Makefile to wszystko działa tak jak trzeba.
Chciałem przy pomocy taniego dongla 3d sound z alledrogo odtwarzać dźwięki na małej platformie z OpenWrt.
Niestety w paczkach, które posiadam (http://www.propox.com/download/linux/at … s/Packages) nie ma kmod-usb-audio. Korzystałem z opisu Cezarego dotyczącego odtwarzania w OpenWrt. Mpd się zainstalował reszta też, no ale nie pojawia mi się wpis w /dev/snd (jak mniemam przez brak wspomnianego modułu).
Moja platforma jest nieco dziwna i różni się od standardowych ruterów, w związku z tym mam pytanie, czy da się jakoś dodać ten moduł (kmod-usb-audio) do mojego systemu ? Przekompilować etc.?
Dziękuję za odpowiedź.
Znalazłem (chyba) rozwiązanie, jeszcze nie wiem jak użyteczne na stronie:
http://www.at91.com/forum/viewtopic.php/f,12/t,18543/
Witam.
Próbuję z dużym trudem (ze względu na linuksowe braki) pracować z platformą MMnet1002 (ARM9+64MB RAM etc.). Mam problem z funkcją hwclock, mianowicie:
root@MMnet:/ hwclock -w
RTC_RD_TIME: Invalid or incomplete multibyte or wide character
ioctl() to /dev/rtc to read the time failed.Podobnie z innymi parametrami hwclock. W systemie mam niby /dev/rtc0, normalnie funkcja date działa i ustawia się data i czas, ale po restarcie muszę od początku ją ustawiać, dlatego chciałem wykorzystać hwclock.
Wiem, że trochę stare mam to Kamikaze, ale jeszcze nie jestem na tyle biegły żeby to uaktualnić. Jeśli ten błąd to jakiś błąd jądra no to już trudno poświęcę czas na postawienie wszystkiego od początku, ale jeśli się to da zrobić jakoś łatwo to lepiej dla mnie (ze względu na brak czasu).
Dziękuję bardzo Cezary !
Gratuluje wiedzy i dziękuję za pomoc. Wstukałem te polecenie do konsoli wyeksportowałem i wpisałem do /etc/config/httpd. Wszystko teraz działa, ale pewnie już niedługo znów pojawi się dla mnie problem nie do przeskoczenia ![]()
Nie chcąc zamykać jeszcze tematu, chciałbym jeszcze spytać o ewentualną możliwość autostartu innych programów. Mam na przykład program który miga diodą (nie jest to żaden moduł do jądra). Jak mógłbym to łatwo zrobić żeby w autostarcie się to włączyło ? Jeszcze raz dziękuję.
Wiedziałem, że coś sknociłem. Swoją drogą wpisując to w konsoli, dostaje:
root@MMnet:/# uci add httpd httpd
uci: Parse error (invalid command) at line 1, byte 0Czyli coś nie tak (?)
uci add httpd httpd
uci set httpd.@httpd[-1].port=8080
uci set httpd.@httpd[-1].home=/czaro
uci commit httpd
/etc/init.d/httpd startNiestety nie.
Po pierwsze dziękuję za odpowiedzi. Poczytałem Twoich artykułów i spróbowałem wklepać (przekleić) coś takiego do pliku /etc/config/httpd
uci add httpd httpd
uci set httpd.@httpd[-1].port=8080
uci set httpd.@httpd[-1].home=/czaro
uci commit httpd
/etc/init.d/httpd startNo i wywołując stronkę to nie działa. Dodam, że poniższe wywołanie za to działa dobrze i strona, którą dałem do katalogu /czaro ładuje się
httpd -h /czaro -p 8080Być może robię jakiś głupi uczniowski błąd, zatem proszę ewentualnie o wybaczenie. A pisząc o "enable" to chodziło o /etc/init.d/httpd enable ? Dzięki za poświęcony czas.
Tak mam ten plik /etc/config/httpd.
A oto co dostałem po wywołaniu poleceń:
root@MMnet:/# cat /etc/banner
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
KAMIKAZE (bleeding edge, r13340) -------------------
Propox MMnet1000
www.propox.com
---------------------------------------------------
root@MMnet:/# opkg list_installed
base-files-atUBI: scrubbed PEB 14, data moved to PEB 172
91 - 13-r13340 -
busybox - 1.11.3-2 -
dropbear - 0.51-2 -
hotplug2 - 0.9+r102-2 -
hwclock - 2.13.0.1-2 -
kernel - 2.6.25.20-at91-1 -
kmod-crc-ccitt - 2.6.25.20-at91-1 -
kmod-ppp - 2.6.25.20-at91-1 -
kmod-pppoe - 2.6.25.20-at91-1 -
libgcc - 4.1.2-13 -
libiw - 29-2 -
libnl - 1.1-1 -
libuci - 0.6.4-1 -
opkg - 4564-1 -
uci - 0.6.4-1 -
uclibc - 0.9.29-13 -
udevtrigger - 106-1 -
wireless-tools - 29-2 -
zlib - 1.2.3-5 - Witam.
Na wstępie chciałem powiedzieć, że jestem bardzo początkujący jeśli chodzi o Linuxa. Zawodowo zajmuje się elektroniką i dotychczas nie musiałem korzystać z niego. Obecnie za zadanie mam rozkminić ewentualne użycie Embedded Linuxa na platformie MMnet1002. Czytałem trochę o Linuxie, ale taki zastrzyk wiedzy jaki dostałem w 2 tygodnie tak mi namieszał w głowie, że już nic nie wiem.
Przejdę może do rzeczy. Na początek chciałbym stworzyć prosty serwerek WWW. MMnet1002 ma wgranego OpenWrt, z uruchomieniem serwera przez usługę httpd nie mam problemu. Jednak chciałbym, żeby system po restarcie od razu skonfigurował sobie taki serwer. Ogólnie wszędzie zaleca się korzystanie z wpisów w pliku rc.local, ale ja takiego nie mam. Mam pliki w katalogu /etc/rc.d i jak mniemam one służą do inicjacji przy starcie. Jest tam np. plik S50httpd i zawiera "jakąś tam" konfigurację i widocznie jest to już wywoływane (jeśli będzie potrzeba to go zamieszczę). Podsumowując chciałbym żeby po starcie systemu uruchamiany był httpd z moimi parametrami, a nie wiem czy w ogóle dobry kierunek poszukiwań obrałem. Przepraszam wszystkich czytających ten post. Wiem, że najpierw powinienem przeczytać kilka książek i poczekać aż wiedza się ułoży, ale nie mam na to niestety czasu...
Strony 1
eko.one.pl → Posty przez Czaro
Forum oparte o PunBB, wspierane przez Informer Technologies, Inc