The time now is Sat 21 Apr 2018, 07:52
All times are UTC - 4 |
Page 5 of 18 [263 Posts] |
Goto page: Previous 1, 2, 3, 4, 5, 6, 7, ..., 16, 17, 18 Next |
Author |
Message |
anikin
Joined: 10 May 2012 Posts: 982
|
Posted: Thu 14 Mar 2013, 21:57 Post subject:
|
|
Here's how it looks in upup precise382. I used the native upup version, which is 574. Perhaps, I should ask scsijon what's the latest usable version without those pointer glyphs and do a recompile. I forgot to run "strip", so it's a bit chubby, but very fast indeed. These are the removed options:
Code: | ./configure --disable-icons --disable-nls --disable-fribidi --disable-debug |
Thank you Keef and `f00 for your help and attention.
Description |
|
Filesize |
112.27 KB |
Viewed |
738 Time(s) |

|
|
Back to top
|
|
 |
anikin
Joined: 10 May 2012 Posts: 982
|
Posted: Fri 15 Mar 2013, 06:51 Post subject:
Re: Building your own JWM |
|
scsijon wrote: | For anyone wanting to build their own Jwm. |
An excellent howto scsijon, thank you very much!
A quick question: the "strip" command as the last step - I noticed you don't use it. Is it a harmless command, will it not strip something, that is needed if/when used?
|
Back to top
|
|
 |
pemasu

Joined: 08 Jul 2009 Posts: 5484 Location: Finland
|
Posted: Fri 15 Mar 2013, 09:42 Post subject:
|
|
Quote: | A quick question: the "strip" command as the last step - I noticed you don't use it. Is it a harmless command, will it not strip something, that is needed if/when used? |
Quote: | step3
a) type new2dir make install |
/usr/bin/new2dir
Quote: | #strip the file...
if [ ! -h "$ONEFILE" ];then #make sure it isn't a symlink
[ ! "`file "$ONEFILE" | grep 'ELF' | grep 'shared object'`" = "" ] && strip --strip-debug "$ONEFILE"
[ ! "`file "$ONEFILE" | grep 'ELF' | grep 'executable'`" = "" ] && strip --strip-unneeded "$ONEFILE"
fi
sync |
and.....
# make install DESTDIR=/root/jwm
cd src ; make all ; cd ..
make[1]: Entering directory `/root/Downloads/jwm-704/src'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/root/Downloads/jwm-704/src'
cd po ; make all ; cd ..
make[1]: Entering directory `/root/Downloads/jwm-704/po'
make[1]: Leaving directory `/root/Downloads/jwm-704/po'
cd src ; make install ; cd ..
make[1]: Entering directory `/root/Downloads/jwm-704/src'
install -d /root/jwm/usr/bin
install jwm /root/jwm/usr/bin/jwm
strip /root/jwm/usr/bin/jwm
so....when compiling and installing jwm...the stripping of binary has been cared by the jwm source code included files.
|
Back to top
|
|
 |
anikin
Joined: 10 May 2012 Posts: 982
|
Posted: Fri 15 Mar 2013, 11:39 Post subject:
|
|
Quote: | so....when compiling and installing jwm...the stripping of binary has been cared by the jwm source code included files. |
pemasu, thank you for for the detailed walkthrough.
One more question: the stripping of binary - is this common practice/requirement, or an exception to the rule, that shows good programming practices of some but not all developers?
|
Back to top
|
|
 |
pemasu

Joined: 08 Jul 2009 Posts: 5484 Location: Finland
|
Posted: Fri 15 Mar 2013, 11:48 Post subject:
|
|
Stripping makes binaries and libraries smaller. Most distros strip binaries and libraries. At least those which I have tested. For example Ubuntu and Debian .deb packages come with stripped stuff.
Puppy philosophy is to offer small size with as full usability as possible. Stripping absolutely belongs to that philosophy.
All woof built Puppies and puplets come with stripped binaries and libraries. Woof 3builddistro script takes care of that:
Quote: | #w481 extra stripping...
if [ "$WOOF_HOSTARCH" = "$WOOF_TARGETARCH" ];then #120502 strip will not work for cross-build.
echo
echo "Would you like to strip all binary executables and shared library files?"
echo "These are usually already stripped, although some packages may have the shared"
echo "library files stripped with the '--strip-debug' option only, and extra stripping"
echo "should be okay. It won't do any harm answering yes here." |
|
Back to top
|
|
 |
disciple
Joined: 20 May 2006 Posts: 6781 Location: Auckland, New Zealand
|
Posted: Fri 15 Mar 2013, 19:49 Post subject:
|
|
Quote: | echo "Would you like to strip all binary executables and shared library files?"
echo "These are usually already stripped, although some packages may have the shared"
echo "library files stripped with the '--strip-debug' option only, and extra stripping" |
I've never read that before... in my experience all shared libraries break if you strip them without the '--strip-debug' option.
_________________ If you have or know of a good gtkdialog application, please post a link here
Classic Puppy quotes
ROOT FOREVER
|
Back to top
|
|
 |
anikin
Joined: 10 May 2012 Posts: 982
|
Posted: Sat 16 Mar 2013, 00:59 Post subject:
|
|
Here's some more:
http://software.intel.com/en-us/blogs/2013/01/17/x86-gcc-code-size-optimizations
http://software.intel.com/en-us/blogs/2012/09/26/gcc-x86-performance-hints
|
Back to top
|
|
 |
pemasu

Joined: 08 Jul 2009 Posts: 5484 Location: Finland
|
Posted: Sat 16 Mar 2013, 02:17 Post subject:
|
|
Hmm...This derails the jwm updates thread. I will post this woof code here and then stop. That is how about all woof built Puppies has been stripped.
Quote: | [ "$ONEBASE" = "e3" ] && continue #v431 cannot be stripped.
if [ "`file "$ONEFILE" | grep 'ELF' | grep 'executable'`" != "" ];then #v431
echo -n "$ONEBASE "
strip --strip-unneeded "$ONEFILE"
fi
done
echo
find rootfs-complete/usr/lib rootfs-complete/usr/X11R7/lib -type f -name \*.so* |
while read ONEFILE
do
ONEBASE="`basename "$ONEFILE"`"
#v431 libgdk-x11-2.0.so* compiled in pup4 with '--enable-debug', fixes insert-key mozilla crash.
# it may be unwise to strip its debug symbols... no, it's ok...
#[ "`echo "$ONEBASE" | grep 'libgdk'`" != "" ] && continue #v431
if [ "`file "$ONEFILE" | grep 'ELF' | grep 'shared object'`" != "" ];then
echo -n "$ONEBASE "
strip --strip-unneeded "$ONEFILE"
fi
done |
http://www.debian.org/doc/debian-policy/ch-files.html
Quote: | All installed shared libraries should be stripped with
strip --strip-unneeded your-lib
(The option --strip-unneeded makes strip remove only the symbols which aren't needed for relocation processing.) Shared libraries can function perfectly well when stripped, since the symbols for dynamic linking are in a separate part of the ELF object file. |
|
Back to top
|
|
 |
anikin
Joined: 10 May 2012 Posts: 982
|
Posted: Sat 16 Mar 2013, 04:31 Post subject:
|
|
scsijon,
It was not my intention to sidetrack this thread, my apologies. I'll put it back into JWM realm with my last question to pemasu:
OK, the compilation has been completed, with all the default/predefined strip settings. I shouldn't worry, my new JWM is at its optimum, small and fast. Stop there and be happy. But I go further and run "strip jwm" and the result is a *significant* reduction in size. What's going on? What else has been shaved off? Do I still have a fully functional binary?
|
Back to top
|
|
 |
pemasu

Joined: 08 Jul 2009 Posts: 5484 Location: Finland
|
Posted: Sat 16 Mar 2013, 04:46 Post subject:
|
|
Well. Compilation does not strip anything. You need to have some code to run strip command. I mean executing make does not offer any means for stripping yet.
Jwm source code has it, when you execute make install with or without other options.
new2dir has it inside code and executing new2dir make install surely has it, in fact twice since make install execute it also.
or you do it from commandline by executing strip with or without other stripping options.
So...because you didnt tell what you actually did, I cant tell you what step you missed and you got smaller binary after executing strip command.
And yes....you get working binary after executing strip jwm
|
Back to top
|
|
 |
anikin
Joined: 10 May 2012 Posts: 982
|
Posted: Sat 16 Mar 2013, 05:01 Post subject:
|
|
My bad, I'm sorry. I haven't yet tried doing it as scsijon recommends, there was no "new2dir" in my scenario. I will redo the whole thing.
|
Back to top
|
|
 |
scsijon
Joined: 23 May 2007 Posts: 1312 Location: the australian mallee
|
Posted: Sat 16 Mar 2013, 07:02 Post subject:
|
|
thank you pemasu for dealing with the strip queery.
My own take is to NEVER use a straight strip,
If part of the compile/build/install hasn't a strip step or I'm not building for puppy, where I always use the new2dir in my build, I ONLY EVER use "strip --strip-debug" or "strip --strip-unneeded", nothing else.
And NEVER USE "--strip-all" as it can make the file you have built useless for use on any machine but the one it was built on.
I learnt many many years ago that it's better to not strip than just "strip" alone. I lost a weeks build-modify-compile time for a team I was managing by forgetting to add the -- modifier. I had to restart the final build again and that took some ten hours. I was somewhat late home that night!
And lets leave that there unless any of the guru's have a further comment we should know about.
|
Back to top
|
|
 |
scsijon
Joined: 23 May 2007 Posts: 1312 Location: the australian mallee
|
Posted: Sun 17 Mar 2013, 01:39 Post subject:
Test Version jwm2-704 available |
|
I have updated the test version to 704. Details and pet are as usual in the first screen on page1.
It includes the middle and right mouse button functions requested for the maximize function as well as some fixes.
Can we have as many testers as possible across all versions of puppy please as everything left on the problem system are enhancement requests.
The only thing you need to be made aware of is that if you kill rox-filer using the tray app-window menu kill you will also loose your background and it's icons, similar to the black screen of death, but your tray and apps via menu still work. To get your background and icons back, you need to restart the x-server on the shutdown menu. I did think it was a further fault, but it's not, however I have asked joe to consider if it is possible that some sort of trap function where only the rox-filer app window is killed and not the rox-filer app itself.
|
Back to top
|
|
 |
pemasu

Joined: 08 Jul 2009 Posts: 5484 Location: Finland
|
Posted: Sun 17 Mar 2013, 04:11 Post subject:
|
|
What I tested 704, it worked in my normal usage ok. The only disturbing feature is those changed mouse forms when hover over close, minimize and maximize buttons. I also felt that rectangular mouse pointer somewhat odd.
I hope there could be possibilty to change that feature back to usual non-changing behavior. This has been posted earlier so I suppose it is known what I mean.
If there is already way to change this, I would be grateful for the howto.
|
Back to top
|
|
 |
`f00

Joined: 06 Nov 2008 Posts: 808 Location: the Western Reserve
|
Posted: Sun 17 Mar 2013, 22:11 Post subject:
Subject description: .. |
|
Some earlier ideas about titlebar button masks, a sub-theme to be sure.
Compiled jwm-704 in racy 5.4.91 for my own personal trial (worked fine with maybe a puzzle on "Desktop" tag use, see attached pix), same old minor issues with xcompmgr -n (may try kcompmgr just to see if there's any change there). Will also try the jwm2-704-w5c dotpet (at least the binary) as a cross-check..
Meh, the pointer-change-on-hover over the titlebar buttons is just 'new' to jwm (it's been around for awhile in some other wms like afterstep and e16 to name a couple). At least jwm's theming is still relatively simple
Description |
this kind of ties to the link in eyecandy |
Filesize |
7.18 KB |
Viewed |
388 Time(s) |

|
Description |
(less the highlighting in medit) - btw, roxpin is enabled only on-demand so it doesn't interfere :| |
Filesize |
26.87 KB |
Viewed |
427 Time(s) |

|
Description |
trying to get jwm to set separate backgrounds for each desktop.. |
Filesize |
41.53 KB |
Viewed |
418 Time(s) |

|
|
Back to top
|
|
 |
|
Page 5 of 18 [263 Posts] |
Goto page: Previous 1, 2, 3, 4, 5, 6, 7, ..., 16, 17, 18 Next |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|