Date: Mon, 14 Jan 2008 18:01:40 +0100 From: "Alexey Shuvaev" <shuvaev@physik.uni-wuerzburg.de> To: kaiwang27@gmail.com Cc: freebsd-current@freebsd.org Subject: Re: [Call for testers] "BSD ar" Message-ID: <20080114170140.GA8759@wep4017.physik.uni-wuerzburg.de> In-Reply-To: <20080112085134.GA1613@plan0.kaiwan.csbnet.se> References: <20080111142336.GA1379@plan0.kaiwan.csbnet.se> <20080111194036.GA28896@troutmask.apl.washington.edu> <20080112072138.GB1016@plan0.kaiwan.csbnet.se> <20080112085134.GA1613@plan0.kaiwan.csbnet.se>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Jan 12, 2008 at 09:51:34AM +0100, Kai Wang wrote: > > This won't work as GNU ranlib is not merely a hardlink to ar. > Thus correct way would be: > > 1. Backup your GNU ar and ranlib first: > % cp /usr/bin/ar SOME_BACKUP_DIR > % cp /usr/bin/ranlib SOME_BACKUP_DIR > > 2. Build BSD ar > extract the tarball > % cd ar > % make > > 3. Replace > # cp ./ar /usr/bin/ar > # cd /usr/bin > # ln -f ar ranlib > > > When recover GNU ar: > > # cp SOME_BACKUP_DIR/ar /usr/bin/ar > # cp SOME_BACKUP_DIR/ranlib /usr/bin/ranlib > > Sorry for the mess... > > BTW: I'm working on a patch for -CURRENT as peter@ just suggested. Ok, first bad news... Well, maybe not so bad, and maybe not so new... I have tried to compile editors/openoffice.org-2 on amd64 8-CURRENT machine. It fails while compiling: [snip] ============= Building project nas ============= /usr/ports/editors/openoffice.org-2/work/OOG680_m9/nas mkout -- version: 1.7 ------------- [snip] What it tries to execute exactly is, for example: [snip] rm -f libvoxware.a ar clq libvoxware.a auvoxware.o config.o usage: ar -d [-jsvz] archive file ... ar -m [-jsvz] archive file ... ar -m [-abijsvz] position archive file ... ar -p [-v] archive [file ...] ar -r [-cjsuvz] archive file ... ar -r [-abcijsuvz] position archive file ... ar -s [-jz] archive ar -t [-v] archive [file ...] ar -x [-Couv] archive [file ...] ar -V *** Error code 64 `all' not remade because of errors. [snip] >From GNU ar(1) man page, FWIW: [snip] q Quick append; Historically, add the files member... to the end of archive, without checking for replacement. The modifiers a, b, and i do not affect this operation; new members are always placed at the end of the archive. The modifier v makes ar list each file as it is appended. Since the point of this operation is speed, the archive's symbol table index is not updated, even if it already existed; you can use ar s or ranlib explicitly to update the symbol table index. However, too many different systems assume quick append rebuilds the index, so GNU ar implements q as a synonym for r. [snip] c Create the archive. The specified archive is always created if it did not exist, when you request an update. But a warning is issued unless you specify in advance that you expect to create it, by using this modifier. [snip] l This modifier is accepted but not used. [snip] Now I am trying to compile OOo-2 with GNU binutils ar, just to check it is not the broken port at all. Thanks nevertheless! Alexey.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080114170140.GA8759>