Forum: PC-Programmierung Hilfe bei Linux/OpenWRT


von Hans M. (Gast)


Lesenswert?

Hallo zusammen,
da es um grundsätzlichen Umgang mit Linux, Kompilieren und KernelModule, 
geht hoffe ich, das richtige Forum erwischt zu haben. Wenn nicht bitte 
an den richtigen Ort verschieben.

Ok, worum geht es:
Ich würde gern eine FW mit USBIP für ein HLK-RM04 von Hi_Link bauen.
Ein Image mit den unterstützen Feeds bauen ist kein Problem.
Mit make menuconfig kann ich kmod-usbip, kmod-usbip_server und 
kmod-usbip-client auswählen und make baut dann auch ohne Fehler.
Auf das Modul geflasht, sehe ich das die kmods geladen sind, aber es 
gibt keine Binarys zum ausführen ( usbip und usbipd sollten da sein ).

Und da hört es bei mir auch schon auf, komme aus der embedded 
HardwareEcke ;-)

Vielleicht hat ja wer schon mal was mit USBIP und OpenWRT gemacht und 
kann mir einen kleinen Schubs geben!

Auch auf der Gegenseite hat es nicht geklappt:
Ubuntu 12.04 apt-get install usbip funzt, aber diesmal sind die Binarys 
da und die Kernelmodule fehlen :-( Keine Ahnung was da nicht stimmt.

Danke im Vorraus

Hans

von Hans Ulli K. (Gast)


Lesenswert?

Schau mal unter Netzwerk nach.

Da sind die Userspace Programme.
Diese aktivieren auch automaisch die Kernelmodule

ProTip:
Wenn du dann Programm "less" kennst, da gibt es den Tastenbefehl "/", 
damit kann man suchen.
Das gleiche geht auch bei

make menuconfig

Und 16MB RAM ist was wenig, also nur das nötigste nehmen.

Ulli

EDIT
Unter Ubuntu musst du du Userspace Programme selber bauen.

von Hans M. (Gast)


Lesenswert?

Hi und danke für Deine Antwort.
Da ist leider nichts von USBIP drin! Das Feed ist bei dem aktuellen 
Trunk nur noch unter oldpackages zu finden. Aktivier ich die und wähle 
USBIP aus, rennt make in unendlich viele Fehler :(
Hab versucht die mit V=s sichtbar gemachten fehlenden lib zu 
installieren, aber ohne Erfolg.
Die / Suchfunktion kannst ich schon ;)
Hab meine Module schon auf 32 GB umgelötet, das ist kein Problem.

von Hans M. (Gast)


Lesenswert?

Und unter Ubuntu, sind die binäres da, da fehlen die Kernelmodule. Und 
nach langer Googelsuche schein ich nicht der einzige zu sein dem es so 
geht. USBIP ist wohl in linux aufgenommen worden, aber ...

von Hans Ulli K. (Gast)


Lesenswert?

Hans M. schrieb:
> Hi und danke für Deine Antwort.
> Da ist leider nichts von USBIP drin! Das Feed ist bei dem aktuellen
> Trunk nur noch unter oldpackages zu finden. Aktivier ich die und wähle
> USBIP aus, rennt make in unendlich viele Fehler :(
> Hab versucht die mit V=s sichtbar gemachten fehlenden lib zu
> installieren, aber ohne Erfolg.
> Die / Suchfunktion kannst ich schon ;)
> Hab meine Module schon auf 32 GB umgelötet, das ist kein Problem.

Bin gerade am compilen.
Im RootFS von Ramips sind die Userspace Programme drin
1
ls build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/root-ramips/usr/sbin/
2
arping    hostapd            iptables-restore  ntpd           telnetd
3
brctl     insmod             iptables-save     odhcp6c        usbip
4
chroot    ip6tables          iw                odhcpd         usbipd
5
crond     ip6tables-restore  lsmod             odhcpd-update  wpad
6
dnsmasq   ip6tables-save     modinfo           pppd           wpa_supplicant
7
dropbear  iptables           modprobe          rmmod          xtables-multi
Und im Modulverzeichnis auch
1
ls build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/root-ramips/lib/modules/3.14.18
2
arc4.ko                 iptable_raw.ko        nf_nat.ko       x_tables.ko
3
cfg80211.ko             ip_tables.ko          nls_base.ko     xt_comment.ko
4
compat.ko               ipt_MASQUERADE.ko     ppp_async.ko    xt_conntrack.ko
5
crc-ccitt.ko            ipt_REJECT.ko         ppp_generic.ko  xt_CT.ko
6
crc-itu-t.ko            ipv6.ko               pppoe.ko        xt_id.ko
7
crypto_blkcipher.ko     leds-gpio.ko          pppox.ko        xt_limit.ko
8
dwc2.ko                 ledtrig-usbdev.ko     rt2800lib.ko    xt_LOG.ko
9
dwc2_platform.ko        mac80211.ko           rt2800mmio.ko   xt_mac.ko
10
eeprom_93cx6.ko         nf_conntrack_ftp.ko   rt2800soc.ko    xt_mark.ko
11
gpio-button-hotplug.ko  nf_conntrack_ipv4.ko  rt2x00lib.ko    xt_multiport.ko
12
ip6table_filter.ko      nf_conntrack_ipv6.ko  rt2x00mmio.ko   xt_nat.ko
13
ip6table_mangle.ko      nf_conntrack_irc.ko   rt2x00soc.ko    xt_REDIRECT.ko
14
ip6table_raw.ko         nf_conntrack.ko       slhc.ko         xt_state.ko
15
ip6_tables.ko           nf_defrag_ipv4.ko     usb-common.ko   xt_TCPMSS.ko
16
ip6t_REJECT.ko          nf_defrag_ipv6.ko     usbcore.ko      xt_tcpudp.ko
17
iptable_filter.ko       nf_nat_ftp.ko         usbip-core.ko   xt_time.ko
18
iptable_mangle.ko       nf_nat_ipv4.ko        usbip-host.ko
19
iptable_nat.ko          nf_nat_irc.ko         vhci-hcd.ko

Und wie gesagt die Kernelmodule mußt du unter Ubuntu selber bauen.

von Hans M. (Gast)


Lesenswert?

Hm... Und was hast du jetzt anders gemacht als ich?
Also außer, das de weißt was de tun musst ?!? ;)
Kann morgen ja nochma zusammen schreiben, was ich mach. Vielleicht fehlt 
mir ja nur ein kleiner Zwischenschritt!
Guna

von Hans M. (Gast)


Lesenswert?

Ok nochmal Schritt für Schritt:

- svn co svn://svn.openwrt.org/openwrt/trunk
- cd trunk
- ./scripts/feeds update -a
- ./scripts/feeds install -a
- make menuconfig
  Target System > RaLink RT288x/RT3xxx
  Target Profile > HILINK HLK-RM04
  Haken bei Build Image Builder, SDK und Toolchain
  LuCI

  mit "/" nach USBIP gesucht liefert nur die 3 kmods unter Kernel 
modules > USB Support
  alle 3 mit "*" ausgewählt
  speichern und EXIT
- make kernel_menuconfig
  Kernel hacking > jffs2 mem=32M für 32MB RAM
  speichern und EXIT
-make -j3

und warten...
bin solange mal einkaufen und kochen :-)

Hans

von Hans Ulli K. (Gast)


Lesenswert?

Hans M. schrieb:
> Ok nochmal Schritt für Schritt:
>
> - svn co svn://svn.openwrt.org/openwrt/trunk

Hier ist dein Fehler ...

SVN ist einiger Zeit "offline" bzw. wird nicht mehr upgedatet.
Bitte git benutzen.

Einfach
1
git clone git://git.openwrt.org/openwrt.git
2
cd openwrt
3
cp feeds.conf.default feeds.conf
4
./scripts/feeds install -a
5
./scripts/feeds update -a

Bitte vorher ggf. den Müll im alten OpenWRT Verzeichnis entfernen.

Wenn du in
make menuconfig
alles soweit einstellt hast, kannst du deine Config nochmal prüfen.
Das ist mein Output für den USB Part
1
$ grep -i "^CONFIG" .config | grep -i usb
2
CONFIG_DEFAULT_kmod-ledtrig-usbdev=y
3
CONFIG_DEFAULT_kmod-usb-core=y
4
CONFIG_DEFAULT_kmod-usb-dwc2=y
5
CONFIG_USB_SUPPORT=y
6
CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_STATUSBAR=y
7
CONFIG_PACKAGE_kmod-ledtrig-usbdev=y
8
CONFIG_PACKAGE_kmod-usb-core=y
9
CONFIG_PACKAGE_kmod-usb-dwc2=y
10
CONFIG_PACKAGE_kmod-usbip=y
11
CONFIG_PACKAGE_kmod-usbip-client=y
12
CONFIG_PACKAGE_kmod-usbip-server=y
13
CONFIG_PACKAGE_usbip=y
14
CONFIG_PACKAGE_usbip-client=y
15
CONFIG_PACKAGE_usbip-server=y

von Frank S. (Firma: arbeitslos) (arduino_macht)


Lesenswert?

Kann es sein, dass du das Package noch nicht installiert hast? 
Möglicherweise hast du im "make menuconfig" die Option "M" 
angewählt..dann musst du die jeweiligen Programme/Module noch per opkg 
installieren.

Andere Idee: Es gibt auch auf den OpenWRT Servern 
prebuild-Packages...solange du da keine Kernelmodule verwendest, kannst 
du auch einfach die in die opkg.conf eintragen und runterladen. Dann 
musst du nicht jeden Userspace kram extra kompilieren.

von Hans M. (Gast)


Lesenswert?

Oh, hier hat sich grad viel getan...
probier ich gleich aus.

Hans

von Hans M. (Gast)


Lesenswert?

So, hab mal n bissl rumgespielt. Damit meine Config so aussah wie deine, 
musst ich die oldpackages mit aktivieren.
Damit konnt ich dann auch erst unter Netzwerk USBIP finden und mit * 
markieren. Dann schlägt aber make fehl.

Hab auch dein Beispiel mit GIT, so wie beschrieben, ausprobiert. Aber 
ich weiß nicht warum bei dir USBIP zu finden ist und bei mir nicht?!

von Hans Ulli K. (Gast)


Lesenswert?

Mach bitte nochmal ein
1
./scripts/feeds install -a
2
./scripts/feeds update -a
Da könnte was mit en Scripten nicht stimmen ...

Ich habe  in einem leeren Verzeichnis, das ausprobiert.
Die Ausgabe von
1
$ grep -i "^CONFIG" .config | grep -i usb
Stimmt dort.
z.Zt lauft der Compiler ...

von Hans M. (Gast)


Lesenswert?

Mach ich gleich nochmal.
Lösche immer erst alles und Fang von Grund auf neu an!

von Hans M. (Gast)


Lesenswert?

NIX :-(
trau mich schon gar nicht mehr zu posten.

Egal was ich versuche, USBIP taucht im menuconfig nur als kmod auf.
Weis nicht wo Deins her kommt?!
Hab eben mal bei https://github.com/openwrt geschaut, das finde ich es 
auch nicht.

von Hans Ulli K. (Gast)


Lesenswert?

Hans M. schrieb:
> NIX :-(
> trau mich schon gar nicht mehr zu posten.
>
> Egal was ich versuche, USBIP taucht im menuconfig nur als kmod auf.
> Weis nicht wo Deins her kommt?!
> Hab eben mal bei https://github.com/openwrt geschaut, das finde ich es
> auch nicht.

Hmmm -..
Bin gerade das nochmal an einem anderen Laptop am testen.
Die Inet-Verbindung ist etwas lam, ich werde das OpenWRT repo lokal 
clonen.

von Hans Ulli K. (Gast)


Lesenswert?

Hier mal meine Befehle, direkt aus der History (ggf. ein wenig 
angepasst)
1
$ git clone git://git.openwrt.org/openwrt.git
2
$ cp feeds.conf.default feeds.conf

Hier die Datei feeds.conf editieren und  oldpackages aktivieren
1
$  ./scripts/feeds update -a
2
$  ./scripts/feeds install -a
3
 $ make menuconfig

Das Paket usbip ist unter Network zu finden.

von Hans M. (Gast)


Lesenswert?

Danke für Deine Mühe!
kann es vielleicht an etwas außerhalb von OWRT liegen?
bei mir läuft ein Debian 7 Image im VMware Player.
Mache grad mal n apt-get update/upgrade. vielleicht liegt es daran?!

von Hans M. (Gast)


Lesenswert?

Das hab ich schon gemacht, danach kernel_menuconfig wegen 32MB RAM und 
dann schlägt make fehl.
wenn ich make kernel_menuconfig mache, wird noch n Haufen Kram 
runtergeladen. Ist das normal so?

von Hans M. (Gast)


Lesenswert?

und das kommt bei raus:

 make[3] -C package/libs/gettext host-compile
 make[3] -C package/libs/libiconv host-compile
 make[3] -C feeds/packages/libs/glib2 host-compile
make -r world: build failed. Please re-run make with V=s to see what's 
going on
make: *** [world] Error 1

von Hans Ulli K. (Gast)


Lesenswert?

Hans M. schrieb:
> Das hab ich schon gemacht, danach kernel_menuconfig wegen 32MB RAM und
> dann schlägt make fehl.
> wenn ich make kernel_menuconfig mache, wird noch n Haufen Kram
> runtergeladen. Ist das normal so?

Mach erstmal einen normalen Build ohne irgendwelche Änderung am Kernel !
Mit dem RAM werde ich mich noch kümmern ..

EDIT:
Mein Build lief ohne Probleme durch

von Hans M. (Gast)


Lesenswert?

Das ist komisch, das hab ich eben gemacht und dann die Fehlermeldung 
weiter oben.
Also nur git clone, feed update und install, im menuconfig target 
ausgewählt und LuCI und USBIP ausgewählt.
Dann make und Error.

von Hans Ulli K. (Gast)


Lesenswert?

So nun zum RAM.

Da die Config für dein Board im Devicetree ist diese Datei ändern:
target/linux/ramips/dts/HLKRM04.dts
1
diff --git a/target/linux/ramips/dts/HLKRM04.dts b/target/linux/ramips/dts/HLKRM04.dts
2
index 13597dc..2300f95 100644
3
--- a/target/linux/ramips/dts/HLKRM04.dts
4
+++ b/target/linux/ramips/dts/HLKRM04.dts
5
@@ -8,7 +8,7 @@
6
 
7
        memory@0 {
8
                device_type = "memory";
9
-               reg = <0x0 0x1000000>;
10
+               reg = <0x0 0x2000000>;
11
        };
12
 
13
        chosen {

von Hans M. (Gast)


Lesenswert?

Also da es bei Dir erfolgreich baut und bei mir trotz vermeintlichem 
gleichen Vorgehen nicht, gilt es herauszufinden woran es bei mir liegen 
kann?!
Kann es an meinem Linux liegen? Wenn irgendwas fehlen würde, würde bei 
make sicherlich was meckern oder?

von Hans Ulli K. (Gast)


Lesenswert?

was sagt denn ein

make V=s

nur die letzten Zeilen, wo der Fehler auftritt posten

ggf. vorher
make clean
rm -Rf build_dir/ staging_dir/ tmp/
make menuconfig

machen

von Hans M. (Gast)


Lesenswert?

Ok Build läuft, lass den Output gleich in ne Datei schreiben.
Muss mal schaun, irgendwo bin ich über einen Patch für USBIP gestolpert.
Da gings darum, das einige Funktionen aus der glib2 verwendet werden und 
diese dadurch komplett eingebunden wird. Das soll das Image für embedded 
Geräte nur unnötig aufblähen.

von Hans Ulli K. (Gast)


Lesenswert?

Hans M. schrieb:
> Ok Build läuft, lass den Output gleich in ne Datei schreiben.
> Muss mal schaun, irgendwo bin ich über einen Patch für USBIP gestolpert.
> Da gings darum, das einige Funktionen aus der glib2 verwendet werden und
> diese dadurch komplett eingebunden wird. Das soll das Image für embedded
> Geräte nur unnötig aufblähen.

Das dürfte entweder alt oder falsch sein.
USBIP ist seit der Kernelversion 3.17 stable, und in

drivers/usb/usbip/
tools/usb/usbip/

in den Kernelsourcen zu finden. (vorher auch z.B. im Staging Zweig)
Und da achten die Maintainer schon das da kein unltiger bloat dabei 
kommt.

von Hans M. (Gast)


Lesenswert?

so fertig, keine Ahnung wo die relevanten Fehlerinfos anfangen:

make[4]: Leaving directory 
`/home/rene/openwrt/build_dir/host/opkg-9c97d5ecd795709c8584e972bfdf3aee 
3a5b846d'
touch 
/home/rene/openwrt/build_dir/host/opkg-9c97d5ecd795709c8584e972bfdf3aee3 
a5b846d/.built
install -m0755 
/home/rene/openwrt/build_dir/host/opkg-9c97d5ecd795709c8584e972bfdf3aee3 
a5b846d/src/opkg-cl  /home/rene/openwrt/staging_dir/host/bin/opkg
mkdir -p /home/rene/openwrt/staging_dir/host/stamp
touch /home/rene/openwrt/staging_dir/host/stamp/.opkg_installed
make[3]: Leaving directory `/home/rene/openwrt/package/system/opkg'
make[1]: *** 
[/home/rene/openwrt/staging_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/ 
stamp/.package_compile]  Error 2
make[2]: Leaving directory `/home/rene/openwrt'
make[1]: Leaving directory `/home/rene/openwrt'
make: *** [world] Error 2

von Hans Ulli K. (Gast)


Lesenswert?

Hans M. schrieb:
> so fertig, keine Ahnung wo die relevanten Fehlerinfos anfangen:
>
1
> make[4]: Leaving directory 
2
> `/home/rene/openwrt/build_dir/host/opkg-9c97d5ecd795709c8584e972bfdf3aee3a5b846d'
3
> touch 
4
> /home/rene/openwrt/build_dir/host/opkg-9c97d5ecd795709c8584e972bfdf3aee3a5b846d/.built
5
> install -m0755 
6
> /home/rene/openwrt/build_dir/host/opkg-9c97d5ecd795709c8584e972bfdf3aee3a5b846d/src/opkg-cl 
7
> /home/rene/openwrt/staging_dir/host/bin/opkg
8
> mkdir -p /home/rene/openwrt/staging_dir/host/stamp
9
> touch /home/rene/openwrt/staging_dir/host/stamp/.opkg_installed
10
> make[3]: Leaving directory `/home/rene/openwrt/package/system/opkg'
Hier wurde erfolgreich das compilen von opkg (für den HOST, also deinen 
PC) beendet.
Die komischen Nummern am Ende von okpg- ist ein SHA1 Hash -> git

> make[1]: ***
> [/home/rene/openwrt/staging_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/ 
stamp/.package_compile]
> Error 2
> make[2]: Leaving directory `/home/rene/openwrt'
> make[1]: Leaving directory `/home/rene/openwrt'
> make: *** [world] Error 2

Hier passiert "irgendwie" ein Fehler...
Es sollte eigentlich das kommen.

make[3]: Entering directory 
`/home/rene/GIT/MASTER/openwrt/package/system/ubox'

Das habe ich jetzt mal mit meinem Output verglichen.
Hmmm, sonst aber keine Fehlermeldung ...

Du sagst du benutzt eine VM ?
Hast du auch genug "Festplattenspeicher" zugesichert ?

Ich habe im build_dir ca. 6,2 GB an Speicher belegt.
Das komplette OpenWRT Verzeichnis verbraucht ca. 8,6GB bei mir.

Also mind. 10GB freier Platz wäre gut.

von Hans M. (Gast)


Lesenswert?

Mach jetzt Feierabend und schau gleich mal nach, aber dann hätte es doch 
eine entsprechende Fehlermeldung gegeben?!
Bis gleich

von Hans M. (Gast)


Lesenswert?

ca 17GB sind noch frei und der Dynamische Datenträger kann sich noch um 
80 GB erweitern.
Bau jetzt nochmal nur mit Target und USBIP ausgewählt.
Und überleg mir, wie ich evtl anders meine "Nutzdaten" durchs Netz 
tunnel.
ist eigentlich nur ein virtueller Com und ein Datenträger, beides 
Endpunkte eines STM32 mit USB.

von Hans Ulli K. (Gast)


Lesenswert?

Seltsam

Das ist meine LuCI Config
1
$ grep '^CONFIG' .config | grep -i luci
2
CONFIG_FEED_luci=y
3
CONFIG_PACKAGE_luci=y
4
CONFIG_PACKAGE_luci-mod-admin-full=y
5
CONFIG_PACKAGE_luci-app-firewall=y
6
CONFIG_PACKAGE_luci-theme-bootstrap=y
7
CONFIG_PACKAGE_luci-proto-ppp=y
8
CONFIG_PACKAGE_luci-base=y
9
CONFIG_PACKAGE_luci-base_source=y
10
CONFIG_PACKAGE_luci-lib-nixio=y
11
CONFIG_PACKAGE_luci-lib-nixio_notls=y

Datenträger dürfte über nbd Network Block Device gehen
Und Seriell über serialoverip.

Beides ist in OpenWRT drin.

Aber daran dürfte es nicht liegen ...

Macht mal bitte keinen "dynamischen" Datenträger

von Hans M. (Gast)


Lesenswert?

Setz die VM mal neu auf, wird aber n bissl dauern.

von Hans M. (Gast)


Lesenswert?

wird immer schlimmer, GRML...:

make[5]: Leaving directory 
`/home/rene/openwrt/build_dir/host/cmake-2.8.12.2'
make[4]: Leaving directory 
`/home/rene/openwrt/build_dir/host/cmake-2.8.12.2'
touch /home/rene/openwrt/build_dir/host/cmake-2.8.12.2/.built
make[3]: Leaving directory `/home/rene/openwrt/tools/cmake'
make[2]: Leaving directory `/home/rene/openwrt'
make[1]: *** 
[/home/rene/openwrt/staging_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/ 
stamp/.tools_install_yynyynynynyyyyyyyyyynyyyyyyyynyyyynnyyynnyynnnyyyy] 
Error 2
make[1]: Leaving directory `/home/rene/openwrt'
make: *** [world] Error 2

von Hans Ulli K. (Gast)


Lesenswert?

Seltsam

was sagt ein

df

df -> disk free, Anzeige des freien Speicherplatzes

von tmomas (Gast)


Lesenswert?

Hast du vor dem letzten build ein
1
make dirclean

gemacht?

von Hans Ulli K. (Gast)


Lesenswert?

Also irgendwas stimmt hier nicht.

Im ersten Fall stoppte der Build etwa bei Zeile 57103 im Logfile.
Im zweiten Fall viel früher Zeile 21360

von Hans Ulli K. (Gast)


Lesenswert?

tmomas schrieb:
> Hast du vor dem letzten build ein
>
>
1
make dirclean
>
> gemacht?

er hat (hoffetlich) eine neue VM aufgesetzt
Hans M. schrieb:
> Setz die VM mal neu auf, wird aber n bissl dauern.

Das sind normalerweise Fehler die vom übertackten kommen.

Früher (tm) hatte man mal einen gcc Bootstrap build gemacht um den 
Speicher/CPU zu testen

von Hans M. (Gast)


Lesenswert?

Hab die VM gelöscht und das Debian 7 VMware Image neu entpackt.
Dann gestartet und apt-get Update/Upgrade, GIT installiert und nicht 
Root Benutzer angelegt.
Mit GIT das OWRT geklont, Feeds Update und install 2x, dann alle von 
make prereq angemahnten packets installiert und make menuconfig.
Dort das Target ausgewählt und USBIP usbip-Client USBIP-Host mit * 
markiert, gespeichert Exit und make -j3

Nichts übertatet oder so, Hostsystem Core i7, 8GiB RAM, VM auf SSD, 
2Kerne und 2GiB für die Vm...

Hab langsam die Befürchtung, das meine SSD Stress macht, obwohl nich mal 
n halbes Jahr alt und S.M.A.R.T. ihr 100% bescheinigt

von Hans Ulli K. (Gast)


Lesenswert?

Rule of thumb für make
Anzahl der Kernel (inkl. Threads) * 2
also

make -j8

so mache ich das bei meinem Core i5 8GB ohne VM und so, nativ

von Hans M. (Gast)


Lesenswert?

df liefert:

rene@debian:~/openwrt$ df
df: `/root/.gvfs': Permission denied
Filesystem                                             1K-blocks    Used 
Available Use% Mounted on
rootfs                                                  20545404 1992216 
17509528  11% /
udev                                                       10240       0 
10240   0% /dev
tmpfs                                                     103420     264 
103156   1% /run
/dev/disk/by-uuid/a8db5cdb-96f3-4497-9960-90db5e9a7490  20545404 1992216 
17509528  11% /
tmpfs                                                       5120       0 
5120   0% /run/lock
tmpfs                                                     206820       0 
206820   0% /run/shm
/dev/sdb1                                              103210272  936656 
97030840   1% /home

komisch ist ja, bevor ich USBIP versucht hab und somit nicht auf die 
OLDPACKAGES angewiesen war, konnt ich immer problemlos bauen.

von Hans M. (Gast)


Lesenswert?

hm... -j3 mach ich weil glaub im OWRT wiki stand Kerne+1... guck fix 
nochmal nach

von Hans M. (Gast)


Lesenswert?

http://wiki.openwrt.org/doc/howto/build


Make options
Building on multi-core CPU

:!: Build may FAIL

The build process can be accelerated by running multiple concurrent job 
processes using the -j-option:

make -j 3
Use the standard formula <your number of CPU cores + 1>
If this produces random build errors try compiling again without the 
-j-option

von Hans Ulli K. (Gast)


Lesenswert?

Meine original Quelle gibt es glaube ich nicht mehr, aber
http://unix.stackexchange.com/questions/51815/why-people-recommend-the-j3-option-for-make-when-having-a-dual-core-cpu

For example, the Gentoo handbook says:

    A good choice is the number of CPUs (or CPU cores) in your system 
plus one, but this guideline isn't always perfect.

But what is the rationale for "CPUs + 1" rule? Why the extra job?

The make.conf(5) man page even says:

    Suggested settings are between CPUs+1 and 2*CPUs+1.

OK.
Gentoo ist eine Source Distro.
-> Heating your boxes since 1999

von Hans M. (Gast)


Lesenswert?

k, kann halt nur versuchen mich an tuts zu halten, aber auch ohne -jx 
bauts ja auch nicht ;-)

von Hans M. (Gast)


Lesenswert?

mit welcher distri hast bauen können? muss nicht mit Debian arbeiten, 
kann auch n anderes Image nehmen.

von Hans Ulli K. (Gast)


Lesenswert?

Jede Distro geht.

Ich baue nativ auf Gentoo (aka Sabayon)

Ich habe glaube ich schon mal mit einer Live Distro gebaut und dazu 
einen USB Stick aus der Grabbelkiste genommen.

von Hans M. (Gast)


Lesenswert?

das wär mein nächster Plan, n LiveSystem vom Stick. Also ohne VM...

von tmomas (Gast)


Lesenswert?

Hans M. schrieb:
> make -j3

Was passiert wenn du's ohne -j3 machst?

von tmomas (Gast)


Lesenswert?

Sorry, hast du ja schon versucht... wer lesen kann und so... :)

von Hans Ulli K. (Gast)


Lesenswert?

Dann nimm Sabayon.
Bei der weiss ich, das der Compiler usw. mit drauf ist.

Kurzanleitung :
CD/DVD booten.
Ein Terminal starten., du siehst ein Userprompt mit "$"

Root werden

$ sudo su

Jetzt siehst du ein "#"
USB Stcik einstecken, und Kernel Logmessages anzeigen lassen.

# dmesg

dann kommt do eine Zeile vor
[  391.462945]  sdc: sdc1

sdc: sdc1 können auch anders sich nennen.

ggf. testen. mit

# cat /proc/partitions

Alle Zahlen snd k-Byte angaben.
ggf. nochmal mit dem ausgestecken USB Stick vergleichen

Meine nutzbare Partition ist hier mal sdc1

erste Partition vom Stick formatieren (Filesystem einrichten)

# mke2fs /dev/sdc1

Mountpunkt erzeugen und mouten.

# mkdir /mnt/stick
# mount /dev/sdc1 /mnt/stick

Userverzeichnis erzeugen und Rechte anpassen.

# mkdir /mnt/stick/usr
# chown -R sabayonuser:sabayonuser /mnt/stick/user

Root wieder verlassen

# exit

Symlick zum Userverzeichnis machen

$ ln -s /mnt/stick/user

Ein

$ cd user

und du bist auf dem Stick

von Hans Ulli K. (Gast)


Lesenswert?

Achja

Ein Compilen von OpenWRT als Root ist nicht möglich !

Compilen als Root ist ABSOLUT tötlich
Also nie nie nie, aber auch nie machen !

von Hans M. (Gast)


Lesenswert?

Danke Hans für die Anleitung, aber bin nativ MS ;) unterwegs
Grad läuft die Installation von UBUNTU... Comerica auf die ssd
Btw was ist das für ne gruselige grafische Oberfläche?!
Werde morgen nach Arbeit nochmal mit deiner Anleitung versuchen, dann 
ist mein system wenigstens in einem dir bekannten Zustand :-D
Könnt hilfreich sein, glaub ich zumindest.
Und habe nie versucht mit Root zu baun, soweit stimmt wohl das OWRT 
Tutorial...

von Hans M. (Gast)


Lesenswert?

So kurzes Update,

Letzte Nacht Ubuntu auf ne extra Platte installiert und alles nochmal 
von vorn.
Ok make V=s -j16 war wohl n bissl übermütig, Ubuntu ist nach 20 min voll 
verreckt, aber 2ter Versuch heut ohne -jx hat erfolgreich gebaut.
Schon mal gut soweit, also Windows, teraterm und tftp Server angewurfen 
und Image über uboot aufgespielt.
Jetzt hab ich n Bad magic Nummer Fehler, aber das ist schon eine gute 
Ausgangslage ;)
Danke für die Hilfe bis hierher.

Hans

von Hans M. (Gast)


Lesenswert?

Und wieder da ;)
Meine Befürchtung scheint sich zu bestätigen, hab nur LuCI und USBIP 
zusätzlich zur Standardauswahl hinzugefügt und gebaut aber Uboot sagt 
das das Image zu groß ist 3,9MB! Konnt beim make auch sehen, das GLIB2 
mit kompiliert wird.
Bin schon auf der Suche nach dem Patch...

von Hans M. (Gast)


Lesenswert?

Gefunden:
http://www.spinics.net/lists/linux-usb/msg75750.html

Wie Krieg ich jetzt raus, bös in der aktuellen version schon drin ist?

von Manu (Gast)


Lesenswert?

Was war denn jetzt hier die Lösung das nur die kmod-usbip zu finden 
sind?

Bei mir ist unter Network nämlich auch kein USBIP zu finden :/

Das ganze läuft in einer frischen VM.

Hab die VM auch schon neu aufgesetzt (MINT) und anhand der hier bisher 
vorgegebenen Methoden getestet. USBIP ist nicht auffindbar.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.