Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 81286 - vim 6.3 fails to build because of unneeded definitions in src/auto/osdef.h
Summary: vim 6.3 fails to build because of unneeded definitions in src/auto/osdef.h
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal
Assignee: Vim Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-02-08 12:35 UTC by Tõnis Märtmaa
Modified: 2005-02-08 13:40 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tõnis Märtmaa 2005-02-08 12:35:36 UTC
When I try to update vim to vim-6.3-r2 from 6.3-r1 it configures fine but fails compiling, at the very beginning. Below is the error messages I get. It looks like something is left out in the build/configure process. From vim63/src/auto/osdef.h:

/*
 * osdef.h is automagically created from osdef?.h.in by osdef.sh -- DO NOT EDIT
 */
/* autoconf cannot fiddle out declarations. Use our homebrewn tools. (jw) */
/*
 * Declarations that may cause conflicts belong here so that osdef.sh
 * can clean out the forest. Everything else belongs in os_unix.h
 *
 * How this works:
 * - This file contains all unix prototypes that Vim might need.
 * - The shell script osdef.sh is executed at compile time to remove all the
 *   prototypes that are in an include file. This results in osdef.h.
 * - osdef.h is included in vim.h.

So osdef.sh should be run but isn't, so these unneeded entries from auto/osdef.h aren't removed and cause the compile process to bork. Has anyone had the same problem and knows how to fix it?

Beginning of error message ---
Starting make in the src directory.
If there are problems, cd to the src directory and run make there
cd src && make first
make[1]: Entering directory `/var/tmp/portage/vim-6.3-r2/work/vim63/src'
i686-pc-linux-gnu-gcc -c -I. -Iproto -DHAVE_CONFIG_H     -O2 -march=pentium4 -fomit-frame-pointer   -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I/usr/lib/perl5/5.8.5/i686-linux/CORE  -I/usr/include/python2.4 -pthread    -o objects/buffer.o buffer.c
i686-pc-linux-gnu-gcc -c -I. -Iproto -DHAVE_CONFIG_H     -O2 -march=pentium4 -fomit-frame-pointer   -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I/usr/lib/perl5/5.8.5/i686-linux/CORE  -I/usr/include/python2.4 -pthread    -o objects/charset.o charset.c
In file included from vim.h:216,
                 from buffer.c:29:
auto/osdef.h:19: warning: conflicting types for built-in function `fprintf'
auto/osdef.h:20: warning: conflicting types for built-in function `sprintf'
auto/osdef.h:30: error: conflicting types for `fwrite'
/usr/include/stdio.h:610: error: previous declaration of `fwrite'
auto/osdef.h:63: error: conflicting types for `memmove'
/usr/include/string.h:43: error: previous declaration of `memmove'
auto/osdef.h:75: error: conflicting types for `strtol'
/usr/include/stdlib.h:316: error: previous declaration of `strtol'
auto/osdef.h:78: error: conflicting types for `strftime'
/usr/include/time.h:199: error: previous declaration of `strftime'
auto/osdef.h:81: error: conflicting types for `strcasecmp'
/usr/include/string.h:309: error: previous declaration of `strcasecmp'
auto/osdef.h:84: error: conflicting types for `strncasecmp'
/usr/include/string.h:313: error: previous declaration of `strncasecmp'
auto/osdef.h:89: error: conflicting types for `atoi'
/usr/include/stdlib.h:382: error: previous declaration of `atoi'
auto/osdef.h:90: error: conflicting types for `atol'
/usr/include/stdlib.h:387: error: previous declaration of `atol'
auto/osdef.h:93: error: conflicting types for `execvp'
/usr/include/unistd.h:504: error: previous declaration of `execvp'
auto/osdef.h:115: error: conflicting types for `fchown'
/usr/include/unistd.h:423: error: previous declaration of `fchown'
auto/osdef.h:117: error: conflicting types for `getcwd'
/usr/include/unistd.h:448: error: previous declaration of `getcwd'
auto/osdef.h:129: error: conflicting types for `getenv'
/usr/include/stdlib.h:626: error: previous declaration of `getenv'
auto/osdef.h:130: error: conflicting types for `setenv'
/usr/include/stdlib.h:644: error: previous declaration of `setenv'
auto/osdef.h:131: error: conflicting types for `putenv'
/usr/include/stdlib.h:637: error: previous declaration of `putenv'
auto/osdef.h:133: error: conflicting types for `gethostname'
/usr/include/unistd.h:783: error: previous declaration of `gethostname'
auto/osdef.h:142: error: conflicting types for `write'
/usr/include/unistd.h:318: error: previous declaration of `write'
In file included from vim.h:216,
                 from charset.c:10:
auto/osdef.h:19: warning: conflicting types for built-in function `fprintf'
auto/osdef.h:20: warning: conflicting types for built-in function `sprintf'
auto/osdef.h:30: error: conflicting types for `fwrite'
/usr/include/stdio.h:610: error: previous declaration of `fwrite'
auto/osdef.h:63: error: conflicting types for `memmove'
/usr/include/string.h:43: error: previous declaration of `memmove'
auto/osdef.h:75: error: conflicting types for `strtol'
/usr/include/stdlib.h:316: error: previous declaration of `strtol'
auto/osdef.h:78: error: conflicting types for `strftime'
/usr/include/time.h:199: error: previous declaration of `strftime'
auto/osdef.h:81: error: conflicting types for `strcasecmp'
/usr/include/string.h:309: error: previous declaration of `strcasecmp'
auto/osdef.h:84: error: conflicting types for `strncasecmp'
/usr/include/string.h:313: error: previous declaration of `strncasecmp'
auto/osdef.h:89: error: conflicting types for `atoi'
/usr/include/stdlib.h:382: error: previous declaration of `atoi'
auto/osdef.h:90: error: conflicting types for `atol'
/usr/include/stdlib.h:387: error: previous declaration of `atol'
auto/osdef.h:93: error: conflicting types for `execvp'
/usr/include/unistd.h:504: error: previous declaration of `execvp'
auto/osdef.h:115: error: conflicting types for `fchown'
/usr/include/unistd.h:423: error: previous declaration of `fchown'
auto/osdef.h:117: error: conflicting types for `getcwd'
/usr/include/unistd.h:448: error: previous declaration of `getcwd'
auto/osdef.h:129: error: conflicting types for `getenv'
/usr/include/stdlib.h:626: error: previous declaration of `getenv'
auto/osdef.h:130: error: conflicting types for `setenv'
/usr/include/stdlib.h:644: error: previous declaration of `setenv'
auto/osdef.h:131: error: conflicting types for `putenv'
/usr/include/stdlib.h:637: error: previous declaration of `putenv'
auto/osdef.h:133: error: conflicting types for `gethostname'
/usr/include/unistd.h:783: error: previous declaration of `gethostname'
auto/osdef.h:142: error: conflicting types for `write'
/usr/include/unistd.h:318: error: previous declaration of `write'
make[1]: *** [objects/charset.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [objects/buffer.o] Error 1
make[1]: Leaving directory `/var/tmp/portage/vim-6.3-r2/work/vim63/src'
make: *** [first] Error 2

Reproducible: Always
Steps to Reproduce:
1.
2.
3.




Portage 2.0.51-r15 (default-linux/x86/2004.3, gcc-3.3.5,
glibc-2.3.4.20040808-r1, 2.6.9-ck3Iiwul i686)
=================================================================
System uname: 2.6.9-ck3Iiwul i686 Mobile Intel(R) Celeron(R) CPU 2.40GHz
Gentoo Base System version 1.6.7
Python:              dev-lang/python-2.4,dev-lang/python-2.3.4 [2.4 (#1, Jan 10
2005, 17:15:44)]
dev-lang/python:     2.4, 2.3.4
sys-devel/autoconf:  2.59-r6, 2.13
sys-devel/automake:  1.7.9-r1, 1.8.5-r3, 1.5, 1.4_p6, 1.6.3, 1.9.4
sys-devel/binutils:  2.15.92.0.2-r1
sys-devel/libtool:   1.5.10-r4
virtual/os-headers:  2.4.21-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O2 -march=pentium4 -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown
/usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config
/usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/
/usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/
/usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=pentium4 -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms"
GENTOO_MIRRORS="http://ftp.linux.ee/pub/gentoo/distfiles/
ftp://ftp.linux.ee/pub/gentoo/distfiles/"
LANG="et_EE"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X aalib alsa apm avi berkdb bitmap-fonts cdparanoia cdr crypt cups
directfb dvd encode exif f77 fam flac font-server foomaticdb fortran gdbm gif
gimpprint gpm gtk gtk2 imagemagick imap imlib ipv6 java jpeg junit kde libcaca
libg++ libwww mad matroska mikmod mmx mng motif mozcalendar mozilla moznoirc mp3
mpeg ncurses network nls nptl oggvorbis opengl openssl oss pam pdflib perl png
postgres ppds python qt quicktime readline samba sdl slang spell sse sse2 ssl
svg svga tcltk tcpd tetex theora tiff truetype truetype-fonts type1-fonts
unicode xml xml2 xmms xv zlib"
Unset:  ASFLAGS, CBUILD, CTARGET, LC_ALL, LDFLAGS
Comment 1 Ciaran McCreesh 2005-02-08 13:00:43 UTC
Gonna need more of the build log please... There should be something like this:

configure: creating auto/config.status
config.status: creating auto/config.mk
config.status: creating auto/config.h
make: Entering directory `/var/tmp/portage/vim-7.0_alpha20050201/work/vim7/src'
CC="i686-pc-linux-gnu-gcc -Iproto -DHAVE_CONFIG_H     -O2 -march=pentium4 -fomit
-frame-pointer -pipe -D__CIARANM_WAS_HERE__        " srcdir=. sh ./osdef.sh
mkdir objects                   
make: Leaving directory `/var/tmp/portage/vim-7.0_alpha20050201/work/vim7/src'
Starting make in the src directory.
Comment 2 Tõnis Märtmaa 2005-02-08 13:07:44 UTC
Here it is:

updating cache auto/config.cache
configure: creating auto/config.status
config.status: creating auto/config.mk
config.status: creating auto/config.h
make: Entering directory `/var/tmp/portage/vim-6.3-r2/work/vim63/src'
CC="i686-pc-linux-gnu-gcc -Iproto -DHAVE_CONFIG_H     -O2 -march=pentium4 -fomit-frame-pointer   -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I/usr/lib/perl5/5.8.5/i686-linux/CORE  -I/usr/include/python2.4 -pthread   " srcdir=. sh ./osdef.sh
mkdir objects
make: Leaving directory `/var/tmp/portage/vim-6.3-r2/work/vim63/src'
Starting make in the src directory.
If there are problems, cd to the src directory and run make there
cd src && make first
make[1]: Entering directory `/var/tmp/portage/vim-6.3-r2/work/vim63/src'
i686-pc-linux-gnu-gcc -c -I. -Iproto -DHAVE_CONFIG_H     -O2 -march=pentium4 -fomit-frame-pointer   -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I/usr/lib/perl5/5.8.5/i686-linux/CORE  -I/usr/include/python2.4 -pthread    -o objects/buffer.o buffer.c
i686-pc-linux-gnu-gcc -c -I. -Iproto -DHAVE_CONFIG_H     -O2 -march=pentium4 -fomit-frame-pointer   -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -I/usr/lib/perl5/5.8.5/i686-linux/CORE  -I/usr/include/python2.4 -pthread    -o objects/charset.o charset.c
In file included from vim.h:216,
Comment 3 Ciaran McCreesh 2005-02-08 13:16:52 UTC
Does it work if you unset LANG and then restart the emerge.
Comment 4 Tõnis Märtmaa 2005-02-08 13:28:33 UTC
Yes it works, again that damn sed bug!
Thank you for your help :)
Comment 5 Ciaran McCreesh 2005-02-08 13:40:13 UTC
It's not a bug in sed, it's a bug in your frickin' broken alphabet :P

I added an "unset LANG LC_ALL" in pkg_setup.