2009年11月29日日曜日

ubuntu9.10でurxvtがコンパイルできなーい

background.Cの部分でエラー出て止まっちゃう.
9.04の時はこんな事なかったのにーと思いながら検索するとUbuntuにurxvt(軽量ターミナル)を導入 - mfumiの日記を発見
というわけで,パッチがあるから,それを当ててコンパイルする.
apt-get source rxvt-unicode
cd rxvt-unicode-9.06
patch -p1< doc/urxvt-8.2-256color.patch
wget http://launchpadlibrarian.net/35055142/rxvt-unicode-gcc44%20%281%29.patch
cd src && patch -p1 < /path/to/rxvt-unicode-gcc44\ \(1\).patch && cd ..
後は
rxvt+screen+vimを256色で表示出来るようにすると同じでコンパイルして終わり


一応patchの内容を書いておくよ
--- src/background.C.orig 2009-04-25 01:12:46.000000000 +0200
+++ src/background.C 2009-04-25 01:19:21.000000000 +0200
@@ -261,7 +261,7 @@
unsigned int w = 0, h = 0;
unsigned int n;
unsigned long new_flags = (flags & (~geometryFlags));
- char *p;
+ const char *p;
# define MAXLEN_GEOM 256 /* could be longer than regular geometry string */

if (geom == NULL)
@@ -677,7 +677,7 @@
if (!target->asimman)
target->asimman = create_generic_imageman (target->rs[Rs_path]);

- if (char *f = strchr (file, ';'))
+ if (char *f = (char *) strchr (file, ';'))
{
size_t len = f - file;
f = (char *)malloc (len + 1);
--- src/command.C.orig 2009-04-25 01:20:29.000000000 +0200
+++ src/command.C 2009-04-25 01:21:20.000000000 +0200
@@ -3336,7 +3336,7 @@
}
else
{
- char *eq = strchr (str, '='); // constness lost, but verified to be ok
+ char *eq = (char *) strchr (str, '='); // constness lost, but verified to be ok

if (eq)
{
--- src/misc.C.orig 2009-04-25 01:41:05.000000000 +0200
+++ src/misc.C 2009-04-25 01:41:37.000000000 +0200
@@ -170,7 +170,7 @@
char *
rxvt_basename (const char *str) NOTHROW
{
- char *base = strrchr (str, '/');
+ char *base = (char *) strrchr (str, '/');

return (char *) (base ? base + 1 : str);
}

0 件のコメント:

コメントを投稿