[files] [binary]
First I briefly write about the initial build:
dev# cd /usr/local/src dev# wget http://python.org/ftp/python/2.5.2/Python-2.5.2.tgz dev# tar xvzf Python-2.5.2.tgz dev# cd Python-2.5.2 dev# ./configure --prefix=/mnt/C/sys --enable-shared dev# makeThere was an error with missing 'yperr_string' symbol (I am not sure whether it was during the build or when I launched python console). The symbol was needed by the nis extension module. I do not know how on earth I would utilize an Interface to Sun's NIS (Yellow pages) so as a workaround I simply disabled it.
dev# make dev# make install dev# pythonAnother failure - error while loading shared libraries: libpython2.5.so.1.0 (it is located in /mnt/C/sys/lib).
As a solution, if there was a dynamic loader configuration on the box (/etc/ld.so.conf.d) we could do following:
dev# echo /usr/local/lib > /etc/ld.so.conf.d/python2.5.conf dev# ldconfigAs there is not, we can use the LD_LIBRARY_PATH variable instead:
dev# nano /mnt/C/sys/etc/rc-local Add following: export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/mnt/C/sys/libNow everything works ok.
After some time I realized that there is a readline extension module missing on the system. This module is needed for interactive console applications, and particularly is needed for the deluge console:
box# deluge --ui=null [INFO ] 21:58:04 main:93 Deluge ui 1.0.5 [DEBUG ] 21:58:04 main:94 options: {'config': None, 'logfile': None, 'ui': 'null'} [DEBUG ] 21:58:04 main:95 args: [] [DEBUG ] 21:58:05 configmanager:44 ConfigManager started.. [INFO ] 21:58:05 main:98 Starting ui.. [DEBUG ] 21:58:05 ui:44 UI init.. [DEBUG ] 21:58:05 configmanager:88 Getting config 'ui.conf' [DEBUG ] 21:58:05 config:47 Config created with filename: ui.conf [DEBUG ] 21:58:05 config:48 Config defaults: {'default_ui': 'gtk'} [INFO ] 21:58:05 ui:68 Starting NullUI.. [DEBUG ] 21:58:06 client:54 CoreProxy init.. Traceback (most recent call last): File "/usr/bin/deluge", line 8, in <module> load_entry_point('deluge==1.0.5', 'console_scripts', 'deluge')() File "/mnt/C/sys/lib/python2.5/site-packages/deluge-1.0.5-py2.5-linux-i686.egg/deluge/main.py", line 99, in start_ui UI(options, args) File "/mnt/C/sys/lib/python2.5/site-packages/deluge-1.0.5-py2.5-linux-i686.egg/deluge/ui/ui.py", line 69, in __init__ from deluge.ui.null.deluge_shell import NullUI File "/mnt/C/sys/lib/python2.5/site-packages/deluge-1.0.5-py2.5-linux-i686.egg/deluge/ui/null/deluge_shell.py", line 29, in <module> import readline ImportError: No module named readlineWe can replicate this problem directly from the python console:
dev# python Python 2.5.2 (r252:60911, May 3 2008, 16:19:27) [GCC 3.3.6] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import readline Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: No module named readline >>>So let's look at the old log of python's configure script to see why the readline extension package was not built:
dev# cat config.log | grep readline configure:20980: checking for readline in -lreadline configure:21015: gcc -pthread -o conftest -g -O2 conftest.c -lreadline -lpthread -ldl -lutil >&5 /usr/bin/ld: cannot find -lreadline | char readline (); | return readline (); configure:21126: checking for rl_callback_handler_install in -lreadline configure:21161: gcc -pthread -o conftest -g -O2 conftest.c -lreadline -lpthread -ldl -lutil >&5 /usr/bin/ld: cannot find -lreadline configure:21254: checking for rl_pre_input_hook in -lreadline configure:21289: gcc -pthread -o conftest -g -O2 conftest.c -lreadline -lpthread -ldl -lutil >&5 /usr/bin/ld: cannot find -lreadline configure:21325: checking for rl_completion_matches in -lreadline configure:21360: gcc -pthread -o conftest -g -O2 conftest.c -lreadline -lpthread -ldl -lutil >&5 /usr/bin/ld: cannot find -lreadline ac_cv_lib_readline_readline=no ac_cv_lib_readline_rl_callback_handler_install=no ac_cv_lib_readline_rl_completion_matches=no ac_cv_lib_readline_rl_pre_input_hook=noWe can see that the library simply was not on the system and so the python configure script decided to exclude it's python wrapper from the build.
Before we proceed, we have to build the GNU readline and create a new package for it. How it was done is described in this post.
Now we have the libreadline.so library on the system and so can proceed to re-configure and re-build the python package. First we create a new timestamp file for python package and touch all the old files (in order to be included in the package). We can use the filopack script for that purpose:
dev# cd /mnt/C dev# ./filopack.sh --init python-2.5.2 dev# ./filopack.sh --touch python-2.5.2 Configuration file .filopack/.config file found and used Sure to touch all files of the python-2.5.2 locally at /mnt/C (y/n)?y ...Now we can move to the python source directory and re-configure the build:
dev# cd /usr/local/src/Python-2.5.2 dev# ./configure --prefix=/mnt/C/sys --enable-shared ...Let's check whether the readline package was found and included to the build:
dev# cat config.log | grep readline configure:20980: checking for readline in -lreadline configure:21015: gcc -pthread -o conftest -I/mnt/C/sys/include -I/mnt/C/sys/X11/include -L/mnt/C/sys/lib -L/mnt/C/sys/X11/lib conftest.c -lreadline -lpthread -ldl -lutil >&5 /mnt/C/sys/lib/libreadline.so: undefined reference to `tgetnum' /mnt/C/sys/lib/libreadline.so: undefined reference to `tgoto' /mnt/C/sys/lib/libreadline.so: undefined reference to `tgetflag' /mnt/C/sys/lib/libreadline.so: undefined reference to `BC' /mnt/C/sys/lib/libreadline.so: undefined reference to `tputs' /mnt/C/sys/lib/libreadline.so: undefined reference to `PC' /mnt/C/sys/lib/libreadline.so: undefined reference to `tgetent' /mnt/C/sys/lib/libreadline.so: undefined reference to `UP' /mnt/C/sys/lib/libreadline.so: undefined reference to `tgetstr' ... ac_cv_lib_readline_readline=no ac_cv_lib_readline_rl_callback_handler_install=no ac_cv_lib_readline_rl_completion_matches=no ac_cv_lib_readline_rl_pre_input_hook=noThe situation changed, the readline library is (presumably) no longer missing, but still there are some missing symbols and thus the configure test failed.
After a short googling (for query "libreadline.so: undefined reference to BC PC UP") I found this page.
It seems that the missing symbols should be present in ncurses library.
Let's look what symbols are at the library in our system:
dev# nm /lib/libncurses.so | grep "tgetnum\|tgoto\|tgetflag\|BC\|PC\|UP" 0003a544 B BC 0003a770 B PC 0003a540 B UP 000248e1 T tgetflag 00024958 T tgetnum 00024b0c T tgotoIt means that the symbols are there, but the python configuration script did not manage to find the library.
For quick feedback for our experiments we can create a dummy C file and use the same compiler command line as the configure script did:
dev# echo "int main() { return 0; }" > conftest.c dev# gcc -pthread -o conftest -I/mnt/C/sys/include -I/mnt/C/sys/X11/include -L/mnt/C/sys/lib -L/mnt/C/sys/X11/lib conftest.c -lreadline -lpthread -ldl -lutil /mnt/C/sys/lib/gcc/i386-linux-uclibc/4.1.2/../../../../i386-linux-uclibc/lib/crt1.o: In function `_start': crt1.S:(.text+0x27): undefined reference to `main' /mnt/C/sys/lib/libreadline.so: undefined reference to `tgetnum' /mnt/C/sys/lib/libreadline.so: undefined reference to `tgoto' /mnt/C/sys/lib/libreadline.so: undefined reference to `tgetflag' /mnt/C/sys/lib/libreadline.so: undefined reference to `BC' /mnt/C/sys/lib/libreadline.so: undefined reference to `tputs' /mnt/C/sys/lib/libreadline.so: undefined reference to `PC' /mnt/C/sys/lib/libreadline.so: undefined reference to `tgetent' /mnt/C/sys/lib/libreadline.so: undefined reference to `UP' /mnt/C/sys/lib/libreadline.so: undefined reference to `tgetstr' collect2: ld returned 1 exit statusWe see that the linker ended up with the same error. Now we can try to fix the command line. There is missing ncurses library on the command line; what about adding it explicitly?
dev# gcc -pthread -o conftest -I/mnt/C/sys/include -I/mnt/C/sys/X11/include -L/mnt/C/sys/lib -L/mnt/C/sys/X11/lib conftest.c -lncurses -lreadline -lpthread -ldl -lutilThe test build now works, so now we can remove the temporary C-file and re-configure the python build:
dev# rm conftest.c dev# LIBS="-lncurses" ./configure --prefix=/mnt/C/sys --enable-shared ...Let's make sure that readline package passed the configure test:
dev# cat config.log | grep readline configure:20980: checking for readline in -lreadline configure:21015: gcc -pthread -o conftest -I/mnt/C/sys/include -I/mnt/C/sys/X11/include -L/mnt/C/sys/lib -L/mnt/C/sys/X11/lib conftest.c -lreadline -lpthread -ldl -lncurses -lutil >&5 configure:21126: checking for rl_callback_handler_install in -lreadline configure:21161: gcc -pthread -o conftest -I/mnt/C/sys/include -I/mnt/C/sys/X11/include -L/mnt/C/sys/lib -L/mnt/C/sys/X11/lib conftest.c -lreadline -lreadline -lpthread -ldl -lncurses -lutil >&5 configure:21254: checking for rl_pre_input_hook in -lreadline configure:21289: gcc -pthread -o conftest -I/mnt/C/sys/include -I/mnt/C/sys/X11/include -L/mnt/C/sys/lib -L/mnt/C/sys/X11/lib conftest.c -lreadline -lreadline -lpthread -ldl -lncurses -lutil >&5 configure:21325: checking for rl_completion_matches in -lreadline configure:21360: gcc -pthread -o conftest -I/mnt/C/sys/include -I/mnt/C/sys/X11/include -L/mnt/C/sys/lib -L/mnt/C/sys/X11/lib conftest.c -lreadline -lreadline -lpthread -ldl -lncurses -lutil >&5 ac_cv_lib_readline_readline=yes ac_cv_lib_readline_rl_callback_handler_install=yes ac_cv_lib_readline_rl_completion_matches=yes ac_cv_lib_readline_rl_pre_input_hook=yesYes, everything is ok now, we can build the source and install the binaries:
dev# make ... /mnt/C/sys/include/sqlite3.h: version 3.5.8 INFO: Can't locate Tcl/Tk libs and/or headers building 'readline' extension gcc -pthread -fPIC -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I. -I/usr/local/src/Python-2.5.2/./Include -I/mnt/C/sys/include -I. -IInclude -I./Include -I/usr/local/include -I/usr/local/src/Python-2.5.2/Include -I/usr/local/src/Python-2.5.2 -c /usr/local/src/Python-2.5.2/Modules/readline.c -o build/temp.linux-i686-2.5/usr/local/src/Python-2.5.2/Modules/readline.o gcc -pthread -shared -L/mnt/C/sys/lib -L/mnt/C/sys/X11/lib -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes build/temp.linux-i686-2.5/usr/local/src/Python-2.5.2/Modules/readline.o -L/usr/lib/termcap -L/mnt/C/sys/lib -L/mnt/C/sys/X11/lib -L/usr/local/lib -L. -lreadline -lncurses -lpython2.5 -o build/lib.linux-i686-2.5/readline.so building 'nis' extension gcc -pthread -fPIC -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I. -I/usr/local/src/Python-2.5.2/./Include -I/mnt/C/sys/include -I. -IInclude -I./Include -I/usr/local/include -I/usr/local/src/Python-2.5.2/Include -I/usr/local/src/Python-2.5.2 -c /usr/local/src/Python-2.5.2/Modules/nismodule.c -o build/temp.linux-i686-2.5/usr/local/src/Python-2.5.2/Modules/nismodule.o gcc -pthread -shared -L/mnt/C/sys/lib -L/mnt/C/sys/X11/lib -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes build/temp.linux-i686-2.5/usr/local/src/Python-2.5.2/Modules/nismodule.o -L/mnt/C/sys/lib -L/mnt/C/sys/X11/lib -L/usr/local/lib -L. -lnsl -lpython2.5 -o build/lib.linux-i686-2.5/nis.so *** WARNING: renaming "nis" since importing it failed: dynamic module does not define init function (initnis) running build_scripts dev# make install ...Now, let's test the new installation:
dev# python Python 2.5.2 (r252:60911, Dec 8 2008, 07:26:01) [GCC 4.1.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import readlineThis is fine; and what about the deluge console:
dev# deluge --ui=null [INFO ] 07:28:18 main:93 Deluge ui 1.0.5 [DEBUG ] 07:28:18 main:94 options: {'config': None, 'logfile': None, 'ui': 'null'} [DEBUG ] 07:28:18 main:95 args: [] [DEBUG ] 07:28:18 configmanager:44 ConfigManager started.. [INFO ] 07:28:18 main:98 Starting ui.. [DEBUG ] 07:28:18 ui:44 UI init.. [DEBUG ] 07:28:18 configmanager:88 Getting config 'ui.conf' [DEBUG ] 07:28:18 config:47 Config created with filename: ui.conf [DEBUG ] 07:28:18 config:48 Config defaults: {'default_ui': 'gtk'} [INFO ] 07:28:18 ui:68 Starting NullUI.. [DEBUG ] 07:28:18 client:54 CoreProxy init.. Welcome to deluge-shell. Type 'help' to see a list of available commands. > help Available commands: * add: Add a torrent * config-set: Change a configuration setting * configs: Show configuration values * connect: Connect to a new deluge server. * del: Remove a torrent * exit: Exit from the client. * halt: Shutdown the deluge server. * help: Show help * info: Show information about the torrents * pause: Pause a torrent * quit: Exit from the client. * resume: Resume a torrent * rm: Remove a torrent > quit ThanksEverything is now ok, we can create a new python package:
dev# cd /mnt/C dev# ./filopack.sh --pack python-2.5.2 ...I realized that there are many files which are not a necessary part of the resulting package. Thhose are files with .pyc and .pyo extensions - just in time compiled python files. So I removed them from the list and re-created the package:
dev# ./filopack.sh -R --pack python-2.5.2 ...I have uploaded the resulting package on the web site. Now we can fix the problem on the box.
First let's look at the summary of installed files:
box# cd /mnt/C box# ./filopack.sh --summary Configuration file .filopack/.config file found and used Retrieving package index... (Connecting to http://filodej.ic.cz) Filodej package summary: Package name downloaded [#installed/#total] -------------------------------------------------------------------- ... python-2.5.2 no [3525/3648] ...... so the python package is installed; let's remove it:
box# ./filopack.sh --remove python-2.5.2 Configuration file .filopack/.config file found and used Sure to remove python-2.5.2 locally at /mnt/C (y/n)?y ...Now we can download and install both readline-5.2:
box# ./filopack.sh --download readline-5.2 Configuration file .filopack/.config file found and used Retrieving package index... (Connecting to http://filodej.ic.cz) Downloading package readline-5.2 from http://filodej.ic.cz ... connected! Length: 573 [text/plain] connected! Length: 265,962 [application/x-tar] box# ./filopack.sh --install readline-5.2 Configuration file .filopack/.config file found and used Retrieving package index... (Connecting to http://filodej.ic.cz) Sure to unpack readline-5.2 locally at /mnt/C (y/n)?y sys/lib/libreadline.a sys/lib/libhistory.a sys/lib/libhistory.so.5 sys/lib/libhistory.so.5.2 sys/lib/libhistory.so sys/lib/libreadline.so.5.2 sys/lib/libreadline.so.5 sys/lib/libreadline.so sys/man/man3/readline.3 sys/man/man3/history.3 sys/include/readline/rltypedefs.h sys/include/readline/chardefs.h sys/include/readline/history.h sys/include/readline/keymaps.h sys/include/readline/readline.h sys/include/readline/rlconf.h sys/include/readline/rlstdc.h sys/include/readline/tilde.h sys/info/readline.info sys/info/rluserman.info sys/info/history.info... and python-2.5.2 package:
box# ./filopack.sh --download python-2.5.2 Configuration file .filopack/.config file found and used Retrieving package index... (Connecting to http://filodej.ic.cz) Downloading package python-2.5.2 from http://filodej.ic.cz ... connected! Length: 134,205 [text/plain] connected! Length: 12,984,464 [application/x-tar] box# ./filopack.sh --install python-2.5.2 Configuration file .filopack/.config file found and used Retrieving package index... (Connecting to http://filodej.ic.cz) Sure to unpack python-2.5.2 locally at /mnt/C (y/n)?y ...After the installation everything seemed ok:
box# python Python 2.5.2 (r252:60911, Dec 8 2008, 07:26:01) [GCC 4.1.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import readline >>>... but surprisingly one more problem arose when I ran the deluge console:
box# deluged.sh box# deluge --ui=null [INFO ] 16:56:44 main:93 Deluge ui 1.0.5 [DEBUG ] 16:56:44 main:94 options: {'config': None, 'logfile': None, 'ui': 'null'} [DEBUG ] 16:56:44 main:95 args: [] [DEBUG ] 16:56:45 configmanager:44 ConfigManager started.. [INFO ] 16:56:45 main:98 Starting ui.. [DEBUG ] 16:56:45 ui:44 UI init.. [DEBUG ] 16:56:45 configmanager:88 Getting config 'ui.conf' [DEBUG ] 16:56:45 config:47 Config created with filename: ui.conf [DEBUG ] 16:56:45 config:48 Config defaults: {'default_ui': 'gtk'} [INFO ] 16:56:45 ui:68 Starting NullUI.. [DEBUG ] 16:56:46 client:54 CoreProxy init.. Welcome to deluge-shell. Type 'help' to see a list of available commands. Traceback (most recent call last): File "/usr/bin/deluge", line 8, inWhen we look at the python readline documentation we see the following:load_entry_point('deluge==1.0.5', 'console_scripts', 'deluge')() File "/mnt/C/sys/lib/python2.5/site-packages/deluge-1.0.5-py2.5-linux-i686.egg/deluge/main.py", line 99, in start_ui UI(options, args) File "/mnt/C/sys/lib/python2.5/site-packages/deluge-1.0.5-py2.5-linux-i686.egg/deluge/ui/ui.py", line 70, in __init__ ui = NullUI(args) File "/mnt/C/sys/lib/python2.5/site-packages/deluge-1.0.5-py2.5-linux-i686.egg/deluge/ui/null/deluge_shell.py", line 470, in __init__ readline.read_init_file() IOError: [Errno 2] No such file or directory
readline.read_init_file([filename]) Parse a readline initialization file. The default filename is the last filename used.It seems that there is a readline initialization file missing on the box (probably it was outside the /mnt/C/sys directory tree and so was not transferred to the box).
Let's try to replicate the problem directly from python console:
box# python Python 2.5.2 (r252:60911, Dec 8 2008, 07:26:01) [GCC 4.1.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import readline >>> readline.read_init_file() Traceback (most recent call last): File "<stdin>", line 1, in <module> IOError: [Errno 2] No such file or directoryWhen I tried it on the colinux system, everything was ok:
dev# python Python 2.5.2 (r252:60911, Dec 8 2008, 07:26:01) [GCC 4.1.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import readline >>> readline.read_init_file() >>>Hopefully the system call trace will help:
box# strace -o readline-init.txt python Python 2.5.2 (r252:60911, Dec 8 2008, 07:26:01) [GCC 4.1.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import readline >>> readline.read_init_file() Traceback (most recent call last): File "<stdin>", line 1, inLet's look at the end of the trace log:IOError: [Errno 2] No such file or directory >>>
box# tail -n 100 readline-init.txt ... rt_sigprocmask(SIG_BLOCK, [INT], [RTMIN], 8) = 0 ioctl(0, SNDCTL_TMR_STOP or TCSETSW, {B38400 opost isig icanon echo ...}) = 0 rt_sigprocmask(SIG_SETMASK, [RTMIN], NULL, 8) = 0 rt_sigaction(SIGWINCH, {SIG_DFL}, {0x40139066, [], SA_RESTORER|SA_RESTART, 0x401c45a8}, 8) = 0 time(NULL) = 1228752774 stat("/mnt/C/sys/root/.inputrc", 0xbffff4ec) = -1 ENOENT (No such file or directory) stat("/etc/inputrc", 0xbffff4ec) = -1 ENOENT (No such file or directory) write(2, "Traceback (most recent call last"..., 35) = 35 ... write(2, " File \"<stdin>\", line 1, in <mo"..., 38) = 38 write(2, "IOError", 7) = 7 write(2, ": ", 2) = 2 write(2, "[Errno 2] No such file or direct"..., 35) = 35 write(2, "\n", 1) = 1 ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0 rt_sigprocmask(SIG_BLOCK, [INT], [RTMIN], 8) = 0 ioctl(0, TIOCGWINSZ, {ws_row=31, ws_col=84, ws_xpixel=0, ws_ypixel=0}) = 0 ioctl(0, TIOCSWINSZ, {ws_row=31, ws_col=84, ws_xpixel=0, ws_ypixel=0}) = 0 ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0 ioctl(0, SNDCTL_TMR_STOP or TCSETSW, {B38400 opost isig -icanon -echo ...}) = 0 rt_sigprocmask(SIG_SETMASK, [RTMIN], NULL, 8) = 0 rt_sigaction(SIGWINCH, {0x40139066, [], SA_RESTORER|SA_RESTART, 0x401c45a8}, {SIG_DFL}, 8) = 0 write(1, ">>> ", 4) = 4 select(1, [0], NULL, NULL, NULL) = 1 (in [0]) rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0 read(0, "\4", 1) = 1 rt_sigprocmask(SIG_BLOCK, [INT], [RTMIN], 8) = 0 ioctl(0, SNDCTL_TMR_STOP or TCSETSW, {B38400 opost isig icanon echo ...}) = 0 rt_sigprocmask(SIG_SETMASK, [RTMIN], NULL, 8) = 0 rt_sigaction(SIGWINCH, {SIG_DFL}, {0x40139066, [], SA_RESTORER|SA_RESTART, 0x401c45a8}, 8) = 0 write(2, "\n", 1) = 1 rt_sigaction(SIGINT, {SIG_DFL}, {0x40139066, [], SA_RESTORER, 0x401c45a8}, 8) = 0 munmap(0x402ad000, 16188) = 0 munmap(0x402b1000, 216100) = 0 _exit(0) = ?So we found that neither /etc/inputrc nor /mnt/C/sys/root/.inputrc is present on the box and thus the readline initialization complains.
As a solution I choosen to copy the initialization file to root's user directory and re-build the readline package:
dev# cp /etc/inputrc /mnt/C/sys/root/.inputrc dev# echo "sys/root/.inputrc" >> .filopack/readline-5.2.lst dev# ./filopack.sh -R --pack readline-5.2After the re-deployment to the box everything works ok:
dev# deluge --ui=null [INFO ] 17:22:53 main:93 Deluge ui 1.0.5 [DEBUG ] 17:22:53 main:94 options: {'config': None, 'logfile': None, 'ui': 'null'} [DEBUG ] 17:22:53 main:95 args: [] [DEBUG ] 17:22:53 configmanager:44 ConfigManager started.. [INFO ] 17:22:53 main:98 Starting ui.. [DEBUG ] 17:22:53 ui:44 UI init.. [DEBUG ] 17:22:53 configmanager:88 Getting config 'ui.conf' [DEBUG ] 17:22:53 config:47 Config created with filename: ui.conf [DEBUG ] 17:22:53 config:48 Config defaults: {'default_ui': 'gtk'} [INFO ] 17:22:53 ui:68 Starting NullUI.. [DEBUG ] 17:22:55 client:54 CoreProxy init.. Welcome to deluge-shell. Type 'help' to see a list of available commands. > help Available commands: * add: Add a torrent * config-set: Change a configuration setting * configs: Show configuration values * connect: Connect to a new deluge server. * del: Remove a torrent * exit: Exit from the client. * halt: Shutdown the deluge server. * help: Show help * info: Show information about the torrents * pause: Pause a torrent * quit: Exit from the client. * resume: Resume a torrent * rm: Remove a torrent > connect > info *** ID: 33820db6dd5e5928d23bc811bbac2f4ae94cb882 *** Name: ubuntu-8.10-desktop-i386.iso *** Path: torrentfiles *** Completed: 0.0 KiB/698.8 MiB *** Status: Paused > resume Usage: resumeThat's all for now.[ ...] > resume 33820db6dd5e5928d23bc811bbac2f4ae94cb882 > info *** ID: 33820db6dd5e5928d23bc811bbac2f4ae94cb882 *** Name: ubuntu-8.10-desktop-i386.iso *** Path: torrentfiles *** Completed: 2.1 MiB/698.8 MiB *** Status: Downloading *** Download Speed: 60.9 KiB/s *** Upload Speed: 0.0 KiB/s *** ETA: 3h 15m > exit Thanks box#
7 comments:
hi:
i read you post, and i use configure option --with-libs to be ok.
just like this:
./configure --with-libs='-lncursesw -lreadline'
Hello,
thank you for the tip. It is definitely much cleaner solution than fiddling with environment variables directly.
Regards,
Filodej
Hello, Filodej!
Thank you for your great efforts.
I've almost completed setup procedure according your detailed guide. But now I'm humpered by the last problem: "...readline.read_init_file()
IOError: [Errno 2] No such file or directory".
Of course, after deluge --ui=null command on the box.
I have your last versions of python-2.5.2 and readline-5.2. I have .inputrc file in /mnt/C/sys/root/ directory, but I receive the same error after I try to start deluge.
File .filopack/readline-5.2.lst contains sys/root/.inputrc string.
What packages or settings should I check?
Hello Pelikan,
Not sure what is going on here. In my opinion the readline initialization looks ath the system-wide settings (/etc/inputrc) and user specific settings (sys/root/.inputrc) and fails if the file is not found in neither of them.
I have two questions for you:
1) Are you logged in as root?
2) If so, is the sys/root really root 's home directory?
You can install the strace package and diagnose the problem (find the actual paths the initialization is looking at) as I did in this post.
Regards,
Filodej
Thank you, Filodej!
1. Of course, I'm root. It seems to be that I don't have any other "users" within the box.
2. Home directory is /mnt/C/root instead of sys/root. I have just copied .inputrc in home directory (/mnt/C/root) and deluge --ui=null started normally.
Thank you!
hi Filodej, How do you get:
cd /usr/local/src
I only get /mnt/C
am I missing something?
Hi,
please, do not confuse the development machine (commands run there are prefixed by the dev#) with the WMU box (commands prefixed with box#).
The /usr/local/src directory relates to the system I use for building the stuff I later upload to the box.
See also the build environment post.
Regards,
Filodej
Post a Comment