Kedves Fórumtársak!
A probléma azért a címnél kicsit bonyolultabb.
A Maemo keretrendszerben próbáltam (arm emuláció mellett) a
make menuconfig
-ot, azonban ez nem jött össze. Megjegyzem a
make config
működik, csak éppen...
Igazából nem is akarom annyira lefordítani a kernelt, csupán látni szeretném, hogy milyen válaszási lehetőségek vannak az arm platformon a kernelfordításkor. Erre pedig a menuconfig alkalmasabb szerintem.
Ezt írja ki. Ilyennel még nem találkoztam, ezért fordultam hozzátok.
(Esetleg nem megfelelő ncurses van fent?)
Előre is köszi a segítséget!
Üdv:
János
Szerk: igen, valami curses gond lehet...
Szerk2: megpróbáltam úgy, hogy feltettem a debian ncurces5.5 csomagját forrásból fordítva, de az eredmény ugyanaz...
Szerk3:
[sbox-MAEMO_ARM: /usr/src/linux/scripts/kconfig/lxdialog] > /bin/sh check-lxdialog.sh -check
*** Unable to find the ncurses libraries.
*** make menuconfig require the ncurses libraries
***
*** Install ncurses (ncurses-devel) and try again
***
mindemellett:
[sbox-MAEMO_ARM: /usr/src/linux/scripts/kconfig/lxdialog] > ls /usr/include/curses.h
/usr/include/curses.h
[sbox-MAEMO_ARM: /usr/src/linux/scripts/kconfig/lxdialog] > find /usr/lib -iname "*curses*"
/usr/lib/libcurses.a
/usr/lib/libncurses.a
/usr/lib/libncurses.so
/usr/lib/libncurses++.a
/usr/lib/libncurses_g.a
/usr/lib/libcurses.so
/usr/lib/libncurses.so.5
szóval ez fura... ldconfigot kellene futtatnom? vagy mi? :S
Szerk4:
A drága
$cc
nincs definiálva a fájlban, meg a shellben sem, úgyhogy nem csodálkozok már semmin. Megpróbálom még újra leforgatni az ncursest...
- 750 megtekintés
Hozzászólások
"*** Install ncurses (ncurses-devel) and try again"
A libncurses5-dev csomag kellene.
apt-get install libncurses5-dev
- A hozzászóláshoz be kell jelentkezni
csak azt nem értem, hogy az ilyenkor miért nem jó, ha forrásból teszem fel az egészet...
__________________________________________________________
Az életben csak egy dolog a szép, de az épp nem jut eszembe.
Slackware Linux 12.0 | 2.6.24.6-janos
- A hozzászóláshoz be kell jelentkezni
A hangsúly a -dev végződésen van. Nem a bináris ncursest vagy libncursest hiányolja.
- A hozzászóláshoz be kell jelentkezni
a configure-nak beadtam, hogy --with-libs meg --with-shared-objects meg nem tudom, ami csak a configure helpjében volt...
szerk: --with-libtool --with-shared --with-normal
de ettől kezdek kiakadni:
[sbox-MAEMO_ARM: ~] > apt-get update
Get:1 http://repository.maemo.org gregale/free Packages [87.2kB]
Get:2 http://repository.maemo.org gregale/free Release [84B]
Get:3 http://repository.maemo.org gregale/non-free Packages [6809B]
Get:4 http://repository.maemo.org gregale/non-free Release [88B]
Get:5 http://repository.maemo.org gregale/free Sources [38.6kB]
Ign http://repository.maemo.org gregale/free Release
Get:6 http://repository.maemo.org gregale/non-free Sources [1005B]
Ign http://repository.maemo.org gregale/non-free Release
Fetched 134kB in 1s (95.1kB/s)
Reading Package Lists... Done
[sbox-MAEMO_ARM: ~] > apt-get install libncurses5-dev
Reading Package Lists... Done
Building Dependency Tree... Done
libncurses5-dev is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
No jó, akkor szedjük le, tegyük fel újra...
[sbox-MAEMO_ARM: ~] > apt-get remove libncurses5-dev
Reading Package Lists... Done
Building Dependency Tree... Done
The following packages will be REMOVED:
libncurses5-dev libreadline4-dev libvte-dev
0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded.
Need to get 0B of archives.
After unpacking 6996kB disk space will be freed.
Do you want to continue? [Y/n] y
/scratchbox/tools/bin/sh: line 1: /usr/sbin/dpkg-preconfigure: No such file or directory
(Reading database ... 23356 files and directories currently installed.)
Removing libvte-dev ...
Removing libreadline4-dev ...
Removing libncurses5-dev ...
[sbox-MAEMO_ARM: ~] > apt-get install libncurses5-dev libreadline4-dev libvte-dev
Reading Package Lists... Done
Building Dependency Tree... Done
The following NEW packages will be installed:
libncurses5-dev libreadline4-dev libvte-dev
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 1700kB of archives.
After unpacking 6996kB of additional disk space will be used.
Get:1 http://repository.maemo.org gregale/free libncurses5-dev 5.4-3 [1061kB]
Get:2 http://repository.maemo.org gregale/free libreadline4-dev 4.3-10 [198kB]
Get:3 http://repository.maemo.org gregale/non-free libvte-dev 1:0.11.13-3osso2 [441kB]
Fetched 1700kB in 2s (621kB/s)
/scratchbox/tools/bin/sh: line 1: /usr/sbin/dpkg-preconfigure: No such file or directory
Selecting previously deselected package libncurses5-dev.
(Reading database ... 22397 files and directories currently installed.)
Unpacking libncurses5-dev (from .../libncurses5-dev_5.4-3_armel.deb) ...
Selecting previously deselected package libreadline4-dev.
Unpacking libreadline4-dev (from .../libreadline4-dev_4.3-10_armel.deb) ...
Selecting previously deselected package libvte-dev.
Unpacking libvte-dev (from .../libvte-dev_1%3a0.11.13-3osso2_armel.deb) ...
Setting up libncurses5-dev (5.4-3) ...
Setting up libreadline4-dev (4.3-10) ...
Setting up libvte-dev (0.11.13-3osso2) ...
[sbox-MAEMO_ARM: ~] >
Nos, lássuk csak, megy-e most...
és nem, nem megy! :@
no mindegy, én ezt most nem bírom idegekkel. megyek lefekszem.
__________________________________________________________
Az életben csak egy dolog a szép, de az épp nem jut eszembe.
Slackware Linux 12.0 | 2.6.24.6-janos
- A hozzászóláshoz be kell jelentkezni
"A drága $cc nincs definiálva a fájlban, meg a shellben sem, ..."
Ott van az a scripts/kconfig/lxdialog/check-lxdialog.sh-ban, méghozzá a paraméterlista értékét kapja, ami eredetileg a $HOSTCC volt a Makefile-ban.
"Igazából nem is akarom annyira lefordítani a kernelt, csupán látni szeretném..."
Ehhez nem kell mást tenni, mint a Makefile-ban átírni az ARCH változó értékét arm-ra. Ha nem szükséges lefordítani, csak megnézni vagy konfigot generálni, akkor az előző hozzászólásban említetten kívül mást nem kell tenni. Ehhez nem kell Scratchbox, a hoston.
Ha fordítani is kell (és a scratchboxon belül még továbbra sem megy), akkor az előző módon generált konfigot át kell másolni alá, és úgy lefordítani. Azt írtad, hogy az jól működik.
Documentation/arm/README:
ARCH = arm
- A hozzászóláshoz be kell jelentkezni
Megoldottam!!! (Phű de büszke lettem magamra.)
At kellett írnom a
check-lxdialog.sh
-t, illetve annak az ldflags szubrutinját ilyenre:
ldflags()
{
$cc -print-file-name=libncursesw.so &> /dev/null
if [ $? -eq 0 ]; then
echo "int main() {return 0;}" | gcc -xc - -lncursesw -o $tmp &> /dev/null
if [ $? -eq 0 ]; then
echo '-lncursesw'
exit
fi
fi
$cc -print-file-name=libncurses.so &> /dev/null
if [ $? -eq 0 ]; then
echo "int main() {return 0;}" | gcc -xc - -lncurses -o $tmp &> /dev/null
if [ $? -eq 0 ]; then
echo '-lncurses'
exit
fi
fi
$cc -print-file-name=libcurses.so &> /dev/null
if [ $? -eq 0 ]; then
echo "int main() {return 0;}" | gcc -xc - -lcurses -o $tmp &> /dev/null
if [ $? -eq 0 ]; then
echo '-lcurses'
exit
fi
fi
exit 1
}
A gond az volt, hogy a
$cc -print-file-name=*curses*.so
sorok kimenetében nem volt / és a drága
grep
meg arra szűrt, így persze 1 lett a visszatérési érték, így a szkript nem is írt ki semmit...
De már működik! :)
__________________________________________________________
Az életben csak egy dolog a szép, de az épp nem jut eszembe.
Slackware Linux 12.0 | 2.6.24.6-janos
- A hozzászóláshoz be kell jelentkezni