Tiny Core Extensions > TCE Corepure64

flwm won't compile

(1/2) > >>

wysiwyg:
Good afternoon everyone!  I was working on some minor edits to the flwm source code and when I went to compile it, it errored out but didn't give any helpful info on why it failed.  Just to test, I attempted to compile the official source (version 1.02) and it bombed the same way.  I then decided to see if the TC version had any patches that should be applied and to my surprise I see that the version in the TC repo is version 1.14.  I attempted to compile that version using the accompanying compile script.  This one bombed too.  Couple of questions...

1) What patches have been applied from the original version (1.02) and the TC version (1.14)?

2) I have included the compile script and the output below.  Does anyone have any ideas?  I have installed 'compiletc', 'xorg-proto', and 'fltk-1.3-dev'.

Thanks,
Dave



Compile Script:
#!/bin/sh
for C in "main.C" "Frame.C" "Rotated.C" "Menu.C" "FrameWindow.C" "Desktop.C" "Hotkeys.C"
do
   g++ -mtune=generic -Os -fno-exceptions -fno-rtti -fpic -c "$C"
done
g++ -lfltk -lfltk_images -lfltk_forms -lpng -o flwm main.o Frame.o Rotated.o Menu.o FrameWindow.o Desktop.o Hotkeys.o
strip flwm


Output:
main.C: In member function 'virtual void Fl_Root::show()':
main.C:56:19: error: incomplete type 'Fl_X' used in nested name specifier
     if (!shown()) Fl_X::set_xid(this, RootWindow(fl_display, fl_screen));
                   ^
main.C: In function 'int flwm_event_handler(int)':
main.C:127:2: warning: 'KeySym XKeycodeToKeysym(Display*, KeyCode, int)' is deprecated (declared at /usr/local/include/X11/Xlib.h:1699) [-Wdeprecated-declarations]
  XKeycodeToKeysym(fl_display, fl_xevent->xkey.keycode, 0);
  ^
main.C:127:57: warning: 'KeySym XKeycodeToKeysym(Display*, KeyCode, int)' is deprecated (declared at /usr/local/include/X11/Xlib.h:1699) [-Wdeprecated-declarations]
  XKeycodeToKeysym(fl_display, fl_xevent->xkey.keycode, 0);
                                                         ^
Frame.C: In constructor 'Frame::Frame(Window, XWindowAttributes*)':
Frame.C:278:3: error: incomplete type 'Fl_X' used in nested name specifier
   Fl_X::set_xid(this, XCreateWindow(fl_display,
   ^
Rotated.C: In function 'void setrotfont(int)':
Rotated.C:364:30: error: 'fl_xfont' was not declared in this scope
     if (font->xfontstruct == fl_xfont && font->dir == dir) return;
                              ^
Rotated.C:367:35: error: 'fl_xfont' was not declared in this scope
   font = XRotLoadFont(fl_display, fl_xfont, dir);
                                   ^
g++: error: main.o: No such file or directory
g++: error: Frame.o: No such file or directory
g++: error: Rotated.o: No such file or directory
strip: 'flwm': No such file

Rich:
Hi wysiwyg

--- Quote --- ... and 'fltk-1.3-dev'.
--- End quote ---
Try removing fltk-1.3-dev  and  fltk-1.3.tcz  and install  fltk_base-dev.tcz  and  fltk-1.1.10.tcz  instead.

Juanito:
The flwm source is here:

http://git.tinycorelinux.net/index.cgi?url=flwm/

We'd be interested to hear of any possible edits.

wysiwyg:

--- Quote from: Rich on June 26, 2015, 08:30:53 PM ---Hi wysiwyg

--- Quote --- ... and 'fltk-1.3-dev'.
--- End quote ---
Try removing fltk-1.3-dev  and  fltk-1.3.tcz  and install  fltk_base-dev.tcz  and  fltk-1.1.10.tcz  instead.

--- End quote ---

I couldn't remove fltk-1.3.tcz as thats the window manager for the environment that I'm building in.  Plus that should not have any effect when compiling a new flwm since it doesn't contain any dev files.  I did however install fltk-1.1.10-dev.tcz (there isn't any package under the name fltk_base-dev.tcz) and it seems to have reduced the number of errors, but not eliminate the the program from failing to compile.  Below is the updated output from the attempt using the 1.14 version of the flwm source code as found in the TC repo.

main.C: In function 'int flwm_event_handler(int)':
main.C:127:2: warning: 'KeySym XKeycodeToKeysym(Display*, KeyCode, int)' is deprecated (declared at /usr/local/include/X11/Xlib.h:1699) [-Wdeprecated-declarations]
  XKeycodeToKeysym(fl_display, fl_xevent->xkey.keycode, 0);
  ^
main.C:127:57: warning: 'KeySym XKeycodeToKeysym(Display*, KeyCode, int)' is deprecated (declared at /usr/local/include/X11/Xlib.h:1699) [-Wdeprecated-declarations]
  XKeycodeToKeysym(fl_display, fl_xevent->xkey.keycode, 0);
                                                         ^
/usr/local/bin/ld: main.o: undefined reference to symbol 'XConfigureWindow'
/usr/local/lib/libX11.so.6: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
strip: 'flwm': No such file


I have verified that gcc is installed, so I'm not sure what is going on with the 'collect2' error.  Perhaps it is a chained error from one of the previous ones.

It's also worth nothing that the compile script for flwm as found in the 32bit repo (although compiling is for 64bit) is using the fltk-1.3-dev.tcz file (http://tinycorelinux.net/6.x/x86/tcz/src/flwm/compile_flwm).

Dave

wysiwyg:

--- Quote from: Juanito on June 27, 2015, 03:42:24 AM ---The flwm source is here:

http://git.tinycorelinux.net/index.cgi?url=flwm/

We'd be interested to hear of any possible edits.

--- End quote ---

Thanks for the link Juanito.  Is that version of source any different than the 1.14 found in the repo?  If not, is there a place that I can grab a tgz of the files on the git?  Do you have a better compile script that the one found in the repo as it looks like you are the package maintainer.

Thanks,
Dave

Navigation

[0] Message Index

[#] Next page

Go to full version