Page 1 of 1

Compile urxvt-9.18 failed (Solved)

Posted: Thu 04 Apr 2013, 19:04
by anikin
A compile in Upup Raring 3.8.4.2 of the latest version of urxvt resulted in the following error:

Code: Select all

xdefaults.C: In member function ‘const char** rxvt_term::get_options(int, const char* const*)’:
xdefaults.C:581:36: error: ‘option_db’ was not declared in this scope
make[1]: *** [xdefaults.o] Error 1
make[1]: Leaving directory `/tmp/rxvt-unicode-9.18/src'
make: *** [all] Error 1
#
I'm curious to know what this error means and why it's happening.

Thank you in advance.

Posted: Thu 04 Apr 2013, 19:35
by L18L
Sorry, cannot reproduce your result

My

Code: Select all

./configure
make
of
http://dist.schmorp.de/rxvt-unicode/rxv ... 18.tar.bz2
did not fail.
upx'ed rxvt is 1151k too large for upload :wink:

Posted: Thu 04 Apr 2013, 20:25
by anikin
For some reason, my flags have been ignored and the compilation was done with default flags.
Anything wrong with my flags?

Code: Select all

CXXFLAGS="$CXXFLAGS" ./configure CXXFLAGS="-O3 -march=native -mtune=native -fomit-frame-pointer --pipe" CFLAGS="$CXXFLAGS" --prefix=/usr --with-terminfo=/usr/share/terminfo --enable-everything --disable-256-color --disable-unicode3 --disable-xft --disable-font-styles --disable-transparency --disable-fading --disable-resources --disable-swapscreen --disable-iso14755 --disable-frills --disable-slipwheeling --disable-smart-resize --disable-text-blink --disable-pointer-blank --disable-utmp --disable-wtmp --disable-lastlog --disable-combining --disable-delete-key --disable-resources --disable-swapscreen --disable-frills --disable-pixbuf --disable-startup-notification --with-codesets="all" --disable-combining --disable-assert
I'm asking this because I've come across this in configure.ac file:

Code: Select all

dnl# Supply default CXXFLAGS, if not specified by `CXXFLAGS=flags ./configure'
dnl#
if test -z "$orig_CXXFLAGS"; then
  if test x$GCC = xyes && test "x$GXX" = xyes; then
    CXXFLAGS="-g -O3 -fno-rtti -fvisibility-inlines-hidden -fno-threadsafe-statics -fno-enforce-eh-specs"
edit above flags have been edited to show "good" ones.

Posted: Thu 04 Apr 2013, 22:09
by anikin
Flags have been correctly set & accepted:

Code: Select all

Configuration:

  Rxvt version:               9.18 : 2013-03-24
  Source code location:       .
  Install path:               /usr/bin
  Compiler:                   g++
  Compiler flags:             -O3 -march=native -mtune=native -fomit-frame-pointer --pipe -w
  Linker:                     gcc
  set TERMINFO to:            /usr/share/terminfo
  default resource name:      urxvt
  resource class:             URxvt
  resource class fallback:    Rxvt

  embedded perl:              yes
  image library:              none
but the error remains

Code: Select all

# make
make[1]: Entering directory `/tmp/rxvt-unicode-9.18/src'
g++ -I.. -I. -I. -I./../libev -I./../libptytty/src -DHAVE_CONFIG_H  -O3 -march=native -mtune=native -fomit-frame-pointer --pipe -w  -c rxvt.C
g++ -I.. -I. -I. -I./../libev -I./../libptytty/src -DHAVE_CONFIG_H  -O3 -march=native -mtune=native -fomit-frame-pointer --pipe -w  -c background.C
g++ -I.. -I. -I. -I./../libev -I./../libptytty/src -DHAVE_CONFIG_H  -O3 -march=native -mtune=native -fomit-frame-pointer --pipe -w  -c command.C
g++ -I.. -I. -I. -I./../libev -I./../libptytty/src -DHAVE_CONFIG_H  -O3 -march=native -mtune=native -fomit-frame-pointer --pipe -w  -c rxvtfont.C
g++ -I.. -I. -I. -I./../libev -I./../libptytty/src -DHAVE_CONFIG_H  -O3 -march=native -mtune=native -fomit-frame-pointer --pipe -w  -c init.C
g++ -I.. -I. -I. -I./../libev -I./../libptytty/src -DHAVE_CONFIG_H  -O3 -march=native -mtune=native -fomit-frame-pointer --pipe -w  -c main.C
g++ -I.. -I. -I. -I./../libev -I./../libptytty/src -DHAVE_CONFIG_H  -O3 -march=native -mtune=native -fomit-frame-pointer --pipe -w  -c misc.C
g++ -I.. -I. -I. -I./../libev -I./../libptytty/src -DHAVE_CONFIG_H  -O3 -march=native -mtune=native -fomit-frame-pointer --pipe -w  -c screen.C
g++ -I.. -I. -I. -I./../libev -I./../libptytty/src -DHAVE_CONFIG_H  -O3 -march=native -mtune=native -fomit-frame-pointer --pipe -w  -c scrollbar.C
g++ -I.. -I. -I. -I./../libev -I./../libptytty/src -DHAVE_CONFIG_H  -O3 -march=native -mtune=native -fomit-frame-pointer --pipe -w  -c scrollbar-next.C
g++ -I.. -I. -I. -I./../libev -I./../libptytty/src -DHAVE_CONFIG_H  -O3 -march=native -mtune=native -fomit-frame-pointer --pipe -w  -c scrollbar-rxvt.C
g++ -I.. -I. -I. -I./../libev -I./../libptytty/src -DHAVE_CONFIG_H  -O3 -march=native -mtune=native -fomit-frame-pointer --pipe -w  -c scrollbar-xterm.C
g++ -I.. -I. -I. -I./../libev -I./../libptytty/src -DHAVE_CONFIG_H  -O3 -march=native -mtune=native -fomit-frame-pointer --pipe -w  -c scrollbar-plain.C
g++ -I.. -I. -I. -I./../libev -I./../libptytty/src -DHAVE_CONFIG_H  -O3 -march=native -mtune=native -fomit-frame-pointer --pipe -w  -c xdefaults.C
xdefaults.C: In member function ‘const char** rxvt_term::get_options(int, const char* const*)’:
xdefaults.C:581:36: error: ‘option_db’ was not declared in this scope
make[1]: *** [xdefaults.o] Error 1
make[1]: Leaving directory `/tmp/rxvt-unicode-9.18/src'
make: *** [all] Error 1
#

Posted: Fri 05 Apr 2013, 09:20
by L18L
anikin wrote:...but the error remains...
Xdefaults.C wrote: XrmPutLineResource (&option_db, res);
It is not your error but the coder's error I guess.

"Latest" versions tend to have some more bugs...

---------------

edit
wrong guess
pemasu, 5 posts down, knows it better :lol:

Posted: Fri 05 Apr 2013, 12:07
by anikin
Thank you, L18L.

Your attention is very much appreciated, because for me it's more important to learn "hows", rather than the end result itself. Although, I wouldn't mind to have a shiny new, self-compiled program as a bonus for my desperate effort :)

Here's the link, that inspired me and for which I should thank iguleder:
http://208.109.22.214/puppy/viewtopic.p ... 83a7d515ea

Posted: Fri 05 Apr 2013, 12:21
by L18L
Sorry I cannot help more

Perhaps PM to iguleder :idea:

Posted: Fri 05 Apr 2013, 12:53
by simargl
.

Posted: Fri 05 Apr 2013, 13:53
by anikin
My bad, forgot to mention the OS.
Edited the first post to show Upup Raring 3.8.4.2.
I'm following that thread to see if you have already added support for JWM/ROX :)

Regarding xterm, I thought about that or something similar, but my goal was to self compile as many apps as I could to gain some experience.

Posted: Fri 05 Apr 2013, 13:58
by pemasu
# urxvt --help
rxvt-unicode (urxvt) v9.18 - released: 2013-03-24

# uname -r
3.8.4-upup

crap toolchain, it seems.

Posted: Fri 05 Apr 2013, 14:15
by anikin
Hi pemasu,

How did you do it?
Can you show your config?

Posted: Fri 05 Apr 2013, 14:20
by pemasu
./configure --prefix=/usr --disable-perl
make -j6
make install

Posted: Fri 05 Apr 2013, 15:38
by anikin
pemasu,

let me tell you this: we compilers/devs have to be stubborn and persistent to stay in the business :)

Thank you for the prompt, I added "-disable perl" to my config and it worked. My urxvt weighs at 231K now. But there two more binaries in the folder: urxvtc and urxvd - don't know what they are for. And I used "new2dir make install."

Posted: Fri 05 Apr 2013, 16:28
by simargl
.

Posted: Fri 05 Apr 2013, 16:39
by pemasu
urxvtc and urxvtd - don't know what they are for
For example: man urxvtc and man urxvtd tells you a lot.
They are not used in Puppy Linux. You can just strip them off.