Mailing List Archive

Latest adventures in PREFIX
With some help on irc from kito and grobian I was able to progress
beyond configure being stuck.

It was caused by environment issues. (Using strace and grepping for
"access" proved very fruitful to find the missing files. A simple
symlink seemed to solve these issues).

Now on to the next problem, configure being confused. I've installed
gcc with toolsbox, yet somehow the it isn't being found....
Here's a line from configure:
checking whether we are using the GNU C compiler... no

strace is also showing that configure is looking for a few files and
not finding them:
.... [filtered strace output]
access("/data1/portage/dec21/prefix/toolsbox-4-patchespre.20051221/i686-pc-linux-gnu//usr/etc/config.site",
R_OK) = -1 ENOENT (No such file or directory)
access("/data1/portage/dec21/prefix/toolsbox-4-patchespre.20051221/i686-pc-linux-gnu//usr/share/config.site",
R_OK) = -1 ENOENT (No such file or directory)

I'm attaching my latest build script in case anyone is interested.

Any hints, send them my way.

thanks

matt


[complete configure output]
./configure --prefix=/data1/portage/dec21/prefix/toolsbox-4-patchespre.20051221/
i686-pc-linux-gnu//usr --host=i686-pc-linux-gnu --mandir=/data1/portage/dec21/pr
efix/toolsbox-4-patchespre.20051221/i686-pc-linux-gnu//usr/share/man --infodir=/
data1/portage/dec21/prefix/toolsbox-4-patchespre.20051221/i686-pc-linux-gnu//usr
/share/info --datadir=/data1/portage/dec21/prefix/toolsbox-4-patchespre.20051221
/i686-pc-linux-gnu//usr/share --sysconfdir=/data1/portage/dec21/prefix/toolsbox-
4-patchespre.20051221/i686-pc-linux-gnu//etc --localstatedir=/data1/portage/dec2
1/prefix/toolsbox-4-patchespre.20051221/i686-pc-linux-gnu//var/lib --build=i686-
pc-linux-gnu
checking for i686-pc-linux-gnu-gcc... i686-pc-linux-gnu-gcc
checking for C compiler default output... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files...
checking whether we are using the GNU C compiler... no
checking whether i686-pc-linux-gnu-gcc accepts -g... no
checking for i686-pc-linux-gnu-gcc option to accept ANSI C... none needed
checking how to run the C preprocessor... i686-pc-linux-gnu-gcc -E
checking for a BSD-compatible install... /data1/portage/dec21/prefix/toolsbox-4-
patchespre.20051221/i686-pc-linux-gnu//bin/ginstall -c
checking whether make sets $(MAKE)... no
checking for ed... ed
checking for egrep... grep -E
checking for AIX... no
checking for ANSI C header files... no
checking for sys/types.h... no
checking for sys/stat.h... no
checking for stdlib.h... no
checking for string.h... no
checking for memory.h... no
checking for strings.h... no
checking for inttypes.h... no
checking for stdint.h... no
checking for unistd.h... no
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking for library containing strerror... none required
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking for _LARGE_FILES value needed for large files... no
checking for function prototypes... no
checking for an ANSI C-conforming const... no
checking for dirent.h that defines DIR... no
checking for sys/ndir.h that defines DIR... no
checking for sys/dir.h that defines DIR... no
checking for ndir.h that defines DIR... no
checking for library containing opendir... none required
checking for ANSI C header files... (cached) no
checking fcntl.h usability... no
checking fcntl.h presence... yes
configure: WARNING: fcntl.h: present but cannot be compiled
configure: WARNING: fcntl.h: check for missing prerequisite headers?
configure: WARNING: fcntl.h: proceeding with the preprocessor's result
configure: WARNING: ## ------------------------------------ ##
configure: WARNING: ## Report this to bug-autoconf@gnu.org. ##
configure: WARNING: ## ------------------------------------ ##
checking for fcntl.h... yes
checking limits.h usability... no
checking limits.h presence... yes
configure: WARNING: limits.h: present but cannot be compiled
configure: WARNING: limits.h: check for missing prerequisite headers?
configure: WARNING: limits.h: proceeding with the preprocessor's result
configure: WARNING: ## ------------------------------------ ##
configure: WARNING: ## Report this to bug-autoconf@gnu.org. ##
configure: WARNING: ## ------------------------------------ ##
checking for limits.h... yes
checking for string.h... (cached) no
checking for unistd.h... (cached) no
checking utime.h usability... no
checking utime.h presence... yes
configure: WARNING: utime.h: present but cannot be compiled
configure: WARNING: utime.h: check for missing prerequisite headers?
configure: WARNING: utime.h: proceeding with the preprocessor's result
configure: WARNING: ## ------------------------------------ ##
configure: WARNING: ## Report this to bug-autoconf@gnu.org. ##
configure: WARNING: ## ------------------------------------ ##
checking for utime.h... yes
checking varargs.h usability... no
checking varargs.h presence... no
checking for varargs.h... no
checking for mode_t... no
checking for off_t... no
checking for pid_t... no
checking return type of signal handlers... int
checking for size_t... no
checking for stdbool.h that conforms to C99... no
checking for _Bool... no
checking sys/time.h usability... no
checking sys/time.h presence... yes
configure: WARNING: sys/time.h: present but cannot be compiled
configure: WARNING: sys/time.h: check for missing prerequisite headers?
configure: WARNING: sys/time.h: proceeding with the preprocessor's
resulconfigure: WARNING: ## ------------------------------------
##
configure: WARNING: ## Report this to bug-autoconf@gnu.org. ##
configure: WARNING: ## ------------------------------------ ##
checking for sys/time.h... yes
checking for utime.h... (cached) yes
checking whether time.h and sys/time.h may both be included... no
checking for struct utimbuf... no
checking whether closedir returns void... yes
checking for limits.h... (cached) yes
checking for stdlib.h... (cached) no
checking for string.h... (cached) no
checking whether getenv is declared... no
checking whether malloc is declared... no
checking whether system is Windows or MSDOS... no
checking for unistd.h... (cached) no
checking for d_ino member in directory struct... no
checking for long file names... (cached) yes
checking for pathconf... yes
checking for vprintf... yes
checking for _doprnt... no
checking for error_at_line... yes
checking for strerror... yes
checking whether strerror is declared... no
checking whether strerror_r is declared... no
checking for strerror_r... yes
checking whether strerror_r returns char *... yes
checking for memchr... yes
checking whether stat file-mode macros are broken... no
checking for rmdir... yes
checking for stdlib.h... (cached) no
checking for GNU libc compatible malloc... yes
checking for stdlib.h... (cached) no
checking for GNU libc compatible realloc... yes
checking stddef.h usability... no
checking stddef.h presence... yes
configure: WARNING: stddef.h: present but cannot be compiled
configure: WARNING: stddef.h: check for missing prerequisite headers?
configure: WARNING: stddef.h: proceeding with the preprocessor's result
configure: WARNING: ## ------------------------------------ ##
configure: WARNING: ## Report this to bug-autoconf@gnu.org. ##
configure: WARNING: ## ------------------------------------ ##
checking for stddef.h... yes
checking wchar.h usability... no
checking wchar.h presence... yes
configure: WARNING: wchar.h: present but cannot be compiled
configure: WARNING: wchar.h: check for missing prerequisite headers?
configure: WARNING: wchar.h: proceeding with the preprocessor's result
configure: WARNING: ## ------------------------------------ ##
configure: WARNING: ## Report this to bug-autoconf@gnu.org. ##
configure: WARNING: ## ------------------------------------ ##
checking for wchar.h... yes
checking wctype.h usability... no
checking wctype.h presence... yes
configure: WARNING: wctype.h: present but cannot be compiled
configure: WARNING: wctype.h: check for missing prerequisite headers?
configure: WARNING: wctype.h: proceeding with the preprocessor's result
configure: WARNING: ## ------------------------------------ ##
configure: WARNING: ## Report this to bug-autoconf@gnu.org. ##
configure: WARNING: ## ------------------------------------ ##
checking for wctype.h... yes
checking for iswprint... yes
checking for mbsinit... yes
checking for mbstate_t... no
checking whether mbrtowc and mbstate_t are properly declared... yes
checking for pathconf... (cached) yes
checking for limits.h... (cached) yes
checking for string.h... (cached) no
checking for unistd.h... (cached) no
checking whether free is declared... no
checking whether getenv is declared... (cached) no
checking whether malloc is declared... (cached) no
checking whether mktemp is declared... no
checking for _doprintf... no
checking for geteuid... yes
checking for getuid... yes
checking for isascii... yes
checking for memcmp... yes
checking for mktemp... yes
checking for pathconf... (cached) yes
checking for raise... yes
checking for sigaction... yes
checking for sigprocmask... yes
checking for sigsetmask... yes
checking for strerror... (cached) yes
checking for mkdir... yes
checking for strncasecmp... yes
checking for _LARGEFILE_SOURCE value needed for large files... no
checking for fseeko... yes
checking whether clearerr_unlocked is declared... no
checking whether feof_unlocked is declared... no
checking whether ferror_unlocked is declared... no
checking whether fflush_unlocked is declared... no
checking whether fgets_unlocked is declared... no
checking whether fputc_unlocked is declared... no
checking whether fputs_unlocked is declared... no
checking whether fread_unlocked is declared... no
checking whether fwrite_unlocked is declared... no
checking whether getc_unlocked is declared... no
checking whether getchar_unlocked is declared... no
checking whether putc_unlocked is declared... no
checking whether putchar_unlocked is declared... no
checking whether closedir returns void... (cached) yes
checking for fcntl.h... (cached) yes
checking for unistd.h... (cached) no
checking for DOS-style setmode... no
checking for vprintf... (cached) yes
checking for _doprnt... (cached) no
checking for mkdir... (cached) yes
checking whether mkdir takes only one argument... no
checking whether system is Windows or MSDOS... (cached) no
checking for long file names... (cached) yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h
sed -e 's/@''HAVE__BOOL''@/0/g' \
<./stdbool.h.in >stdbool.h
i686-pc-linux-gnu-gcc -o patch -DLINUX -D_XOPEN_SOURCE=500 addext. argmatch. b
ackupfile. basename. dirname. getopt. getopt1. inp. maketime. partime. patch. pc
h. quote. quotearg. quotesys. util. version. xmalloc.
i686-pc-linux-gnu-gcc: addext.: No such file or directory
i686-pc-linux-gnu-gcc: argmatch.: No such file or directory
i686-pc-linux-gnu-gcc: backupfile.: No such file or directory
i686-pc-linux-gnu-gcc: basename.: No such file or directory
i686-pc-linux-gnu-gcc: dirname.: No such file or directory
i686-pc-linux-gnu-gcc: getopt.: No such file or directory
i686-pc-linux-gnu-gcc: getopt1.: No such file or directory
i686-pc-linux-gnu-gcc: inp.: No such file or directory
i686-pc-linux-gnu-gcc: maketime.: No such file or directory
i686-pc-linux-gnu-gcc: partime.: No such file or directory
i686-pc-linux-gnu-gcc: patch.: No such file or directory
i686-pc-linux-gnu-gcc: pch.: No such file or directory
i686-pc-linux-gnu-gcc: quote.: No such file or directory
i686-pc-linux-gnu-gcc: quotearg.: No such file or directory
i686-pc-linux-gnu-gcc: quotesys.: No such file or directory
i686-pc-linux-gnu-gcc: util.: No such file or directory
i686-pc-linux-gnu-gcc: version.: No such file or directory
i686-pc-linux-gnu-gcc: xmalloc.: No such file or directory
i686-pc-linux-gnu-gcc: no input files
make: *** [patch] Error 1

!!! ERROR: sys-devel/patch-2.5.9-r1 failed.
!!! Function src_compile, Line 37, Exitcode 2
!!! emake failed
!!! If you need support, post the topmost build error, NOT this status message
Re: Latest adventures in PREFIX [ In reply to ]
OK! I just compiled and installed coreutils (in the wrong directory
/usr/bin, but ok) in my prefix, and now configure and compile of "patch"
went fine. It actually tried to merge it to my prefix, but died with
the error:
!!! Cannot write to '/net'
which sounds logical to me, but not why it tries to write there... To
be continued.


On 22-12-2005 14:24:24 -0800, m h wrote:
> With some help on irc from kito and grobian I was able to progress
> beyond configure being stuck.

[snip]
--
gentoo-osx@gentoo.org mailing list
Re: Latest adventures in PREFIX [ In reply to ]
Right. I tracked down where portage spits out the message somehow and
traced the path back. I now get the impression the portage version I
have isn't completely prefix aware or something. It deals with the
prefix, but doesn't use it when merging AFAIKT, so maybe I should try to
install the 53 one from Kito over it as that is known to work somehow.


On 03-01-2006 17:56:52 +0100, Grobian wrote:
> OK! I just compiled and installed coreutils (in the wrong directory
> /usr/bin, but ok) in my prefix, and now configure and compile of "patch"
> went fine. It actually tried to merge it to my prefix, but died with
> the error:
> !!! Cannot write to '/net'
> which sounds logical to me, but not why it tries to write there... To
> be continued.
--
gentoo-osx@gentoo.org mailing list
Re: Latest adventures in PREFIX [ In reply to ]
Ahhh, back to the grind after vacation....

I'm still basically stuck where I was before, with configure messing
up. But when I run it from the command line (with the same PATH
environment) it works....

On 1/3/06, Grobian <grobian@gentoo.org> wrote:
> Right. I tracked down where portage spits out the message somehow and
> traced the path back. I now get the impression the portage version I
> have isn't completely prefix aware or something. It deals with the
> prefix, but doesn't use it when merging AFAIKT, so maybe I should try to
> install the 53 one from Kito over it as that is known to work somehow.
>
>
> On 03-01-2006 17:56:52 +0100, Grobian wrote:
> > OK! I just compiled and installed coreutils (in the wrong directory
> > /usr/bin, but ok) in my prefix, and now configure and compile of "patch"
> > went fine. It actually tried to merge it to my prefix, but died with
> > the error:
> > !!! Cannot write to '/net'
> > which sounds logical to me, but not why it tries to write there... To
> > be continued.
> --
> gentoo-osx@gentoo.org mailing list
>
>

--
gentoo-osx@gentoo.org mailing list
Re: Latest adventures in PREFIX [ In reply to ]
A message I sent to this list, but never arrived ( :( !!! ) (but really
delivered by my MTA to smtp.gentoo.org) said that the problem of your
thread top message is that configure doesn't seem to be able to figure
out what the OBJEXT is. This is left blank, hence the weird xxxxx.
yyyyy. filenames. Manually editting the Makefile and setting OBJEXT=o
will get it rolling. I basically solved this by installing the
coreutils into my prefix, and that made it rolling.

On 04-01-2006 16:18:51 -0800, m h wrote:
> Ahhh, back to the grind after vacation....
>
> I'm still basically stuck where I was before, with configure messing
> up. But when I run it from the command line (with the same PATH
> environment) it works....
--
gentoo-osx@gentoo.org mailing list
Re: Latest adventures in PREFIX [ In reply to ]
Hmmm, coreutils should be installed by toolsbox.
I guess I need to add more symlinks (still wondering why it is
necessary, since I thought toolsbox did that for me)......

On 1/5/06, Grobian <grobian@gentoo.org> wrote:
> A message I sent to this list, but never arrived ( :( !!! ) (but really
> delivered by my MTA to smtp.gentoo.org) said that the problem of your
> thread top message is that configure doesn't seem to be able to figure
> out what the OBJEXT is. This is left blank, hence the weird xxxxx.
> yyyyy. filenames. Manually editting the Makefile and setting OBJEXT=o
> will get it rolling. I basically solved this by installing the
> coreutils into my prefix, and that made it rolling.
>
> On 04-01-2006 16:18:51 -0800, m h wrote:
> > Ahhh, back to the grind after vacation....
> >
> > I'm still basically stuck where I was before, with configure messing
> > up. But when I run it from the command line (with the same PATH
> > environment) it works....
> --
> gentoo-osx@gentoo.org mailing list
>
>

--
gentoo-osx@gentoo.org mailing list
Re: Latest adventures in PREFIX [ In reply to ]
Well... I installed the older portage snapshot thing from Kito, and it
gives the same problem of wanting to write to /net. I'm getting affraid
portage wants to make sure that it can write in each and every directory
from the root till the base dir, which is not going to work in any
way...

I didn't get toolsbox running, hence I didn't have coreutils installed.

On 05-01-2006 10:56:13 -0800, m h wrote:
> Hmmm, coreutils should be installed by toolsbox.
> I guess I need to add more symlinks (still wondering why it is
> necessary, since I thought toolsbox did that for me)......

--
Fabian Groffen
Gentoo for Mac OS X Project -- Interim Lead
--
gentoo-osx@gentoo.org mailing list
Re: Latest adventures in PREFIX [ In reply to ]
Ok, update:

!!! Cannot write to '/Library'.
!!! Please check permissions and directories for broken symlinks.
!!! You may start the merge process again by using ebuild:
!!! ebuild
/private/var/automount/nfs/poseidon/export/home/gentoo/gentoo-x86/sys-devel/patch/patch-2.5.9-r1.ebuild
merge
!!! And finish by running this: env-update

Above is the output of my OSX installation (which worked) when I execute
emerge not as root. In order to get this, I first had to chmod 755
/Library as it is per default writable to users from the admin group
(which I am of course). Before I did this chmod, I found a hint as of
why this happens:

>>> Merging sys-devel/patch-2.5.9-r1 to /
!!! EBUILD_PHASE=preinst
!!! D=/Library/Gentoo/var/tmp/portage/patch-2.5.9-r1/image/Library/Gentoo///
!!! DEST=/Library/Gentoo/var/tmp/portage/patch-2.5.9-r1/image
!!! PREFIX=/Library/Gentoo///
!!! ROOT=/Library/Gentoo///
--- /Library/
--- /Library/Gentoo/
--- /Library/Gentoo/usr/

!!! Cannot write to '/Library/Gentoo/usr/bin'.
!!! Please check permissions and directories for broken symlinks.
!!! You may start the merge process again by using ebuild:
!!! ebuild /private/var/automount/nfs/poseidon/export/home/gentoo/gentoo-x86/sys-devel/patch/patch-2.5.9-r1.ebuild merge
!!! And finish by running this: env-update

The directory bin is the first I can't write to as user from the admin
group. During the merge phase portage merges the prefix paths from the
image too. When being run as root, this is no problem, because root can
usually write everywhere on the local system, including the prefix. On
my Fedora Core system at work, however, I can't.

So... (drums) ...I made it work! (w00t!)

I patched the portage code not to check whether it can write on
directories that are from the root till the prefix path. See attached
patch. I guess it sucks big time, but the idea should be clear. It
works for me at least...

Now I finally got 'patch' emerged, I'm going to see how far I can get :D


On 06-01-2006 01:17:18 +0100, Grobian wrote:
> Well... I installed the older portage snapshot thing from Kito, and it
> gives the same problem of wanting to write to /net. I'm getting affraid
> portage wants to make sure that it can write in each and every directory
> from the root till the base dir, which is not going to work in any
> way...

--
Fabian Groffen
Gentoo for Mac OS X Project -- Interim Lead