transforminteractive / alt-f

Automatically exported from code.google.com/p/alt-f
0 stars 0 forks source link

Various problems when trying to recompile Alt-F #130

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Trying to recompile Alt-F on a "ubuntu 12.04" box by following instructions on 
"http://code.google.com/p/alt-f/wiki/HowToBuild" I run into various problems. 

1.) [minor]: Downloading Release-0.1RC2 via "svn tag svn checkout 
http://alt-f.googlecode.com/svn/tags/Release-0.1RC2 alt-f-read-only" does not 
create a subfolder "alt-f"; switching to trunk I realized that its just folder 
hierarchy missing; but still confusing to struggle in the first step

2.) Step "make O=$BLDDIR" failed while building "at" duing compilation of 
"atd.c" at line 498 with error "No mail command specified.". It tool me a while 
googling to realize that the configure script (wrongly) looks for sendmail on 
the build-host. Installing sendmail on the host hides the bug, but I think this 
still smells :-)

3.) Rerun make now failed when building "dosfstools" while downloading the 
sources from "http://www.daniel-baumann.ch/software/dosfstools"; the site is no 
longer available; patching dosfstools.mk to use "http://sources.buildroot.net/" 
made this work

4.) Rerun make now failed when building "zlib" while downloading the sources 
from "http://kent.dl.sourceforge.net/sourceforge/libpng/zlib-1.2.5.tar.bz2". 
Checking zlib.mk this now seems to be a more fundamental issue, as the makefile 
uses (like many others) a variable BR2_SOURCEFORGE_MIRROR, which (a) points to 
a no-longer existing mirror-domain, (b) I couldn't find an easy way to change 
the config for all the packages that fetch the sources from sourceforge.

I'm currently stuck due to (4). Checking buildroot sources, I seems that all of 
the issues described above are resolved in recent buildroot versions. Being an 
newbee to both alt-F buiding and buildroot I can't estimate if it is more 
effort to switch to a recent buildroot version or fix all those issues in the 
Alt-f copy. 

Original issue reported on code.google.com by garband...@googlemail.com on 21 Jan 2013 at 8:51

GoogleCodeExporter commented 9 years ago
1-wiki now fixed
2-fixed by SVN commit 2055
3-fixed by SVN commit 2056
4- this is easy :-)

make O=... menuconfig, Build Options, Mirrors and Download locations, 
Sourceforge mirror site, set your preferred sourceforge mirror. I'm currently 
using "switch".

I'm afraid that '2' will be present in other packages as well, and it is a 
daunting job to check all packages config.log for 'configure' incorrect 
detection.
If I was starting this project again I would use a virtual machine instead, to 
avoid cross compilation issues and to avoid 'configure' leaking into the host 
environment.
The worse is when leaking happens at configure time, and reveal as incorrect 
behavior or bugs at run time.
Imagine what happens when 'configure' detects and sets a system include file 
from a package version different than the one used by the target...

Thanks

Original comment by whoami.j...@gmail.com on 21 Jan 2013 at 5:25

GoogleCodeExporter commented 9 years ago
Thanks a lot for the quick response.

After checking out the latest changes and switching to "switch" the alt-f build 
succeeded.

I run into the next problem when using mkpkg.sh to build packages. mkpkg.sh 
failed with options -clean and -cleanroot with a rmdir error message. Checking 
the script I realized that the awk statements for both options relies on the 
error message of the rm statement in the previous line. Unfortunately I am 
running a german localization of linux, so neither the message matched, nor 
(after replacing the match string with the german on) the subsequent awk 
statement to extract the directory name worked, as the german localization also 
uses different characters that double quotes to frame the directory name, and 
so also the arguments passed via xarg to rmdir were invalid.

The workaround I applied here was simply repeating the find command a second 
time, now with rmdir.

So instead of 
"awk '/Is a directory/{print substr($4,2,length($4)-3)}' $tf | sort -r  | xargs 
rmdir"
I use 
"find . | cat $ROOTFSFILES - | sort | uniq -u | xargs rmdir"

Not sure if this fully equivalent - in case you have additional errors in $tf 
that are no directories you would not run into rmdir errors. But as you anyway 
would not handle those cases, it should not make a difference. At least it 
worked for me and I wanted to let you know.

Thanks for providing and maintaining Alt-F. 

Original comment by garband...@googlemail.com on 22 Jan 2013 at 8:41

GoogleCodeExporter commented 9 years ago
just realized that my proposal did not work for nested directory structures.

by reverting the sort order subdirectories get deleted too; so
"find . | cat $ROOTFSFILES - | sort -r | uniq -u | xargs rmdir"
should do the job better

Original comment by garband...@googlemail.com on 22 Jan 2013 at 9:58

GoogleCodeExporter commented 9 years ago
Reopening, as parsing the command error output depends on localization.

Thanks

Original comment by whoami.j...@gmail.com on 25 Jan 2013 at 3:36

GoogleCodeExporter commented 9 years ago
This issue was closed by revision r2090.

Original comment by whoami.j...@gmail.com on 11 Feb 2013 at 5:10

GoogleCodeExporter commented 9 years ago
Closed by commit 2090: mkpkgs.sh: make -clean and -cleanroot immune to 
localization. Closes issue 130. Thanks to garbandi66

I endup using your suggestion, thanks

Original comment by whoami.j...@gmail.com on 11 Feb 2013 at 5:11