#625 closed defect (fixed)
make errors (missing demolocation)
Reported by: | cnielsen | Owned by: | |
---|---|---|---|
Priority: | critical | Milestone: | 7.0.0 |
Component: | Default | Version: | svn-trunk |
Keywords: | Cc: | ||
CPU: | All | Platform: | All |
Description
I get the following errors compiling trunk (r37704) though it worked fine a couple days ago.
Errors in: /src/trunk/db/db.columns /src/trunk/db/db.connect /src/trunk/db/db.copy /src/trunk/db/db.createdb /src/trunk/db/db.databases /src/trunk/db/db.describe /src/trunk/db/db.drivers /src/trunk/db/db.dropdb /src/trunk/db/db.droptable /src/trunk/db/db.execute /src/trunk/db/db.login /src/trunk/db/db.select /src/trunk/db/db.tables /src/trunk/display/d.barscale /src/trunk/display/d.colorlist /src/trunk/display/d.colortable
... there's a lot more but they all have the same error message:
if [ "/src/trunk/dist.i686-pc-mingw32/bin/db.columns.exe" != "" ] ; then GISRC=/src/trunk/dist.i686-pc-mingw32/demolocation/.grassrc70 GISBASE=/src/trunk/dist.i686-pc-mingw32 PATH="/src/trunk/dist.i686-pc-mingw32/bin:$PATH" PYTHONPATH="c:\programs\gis\osgeo4w\usr\src\trunk\dist.i686-pc-mingw32\etc\python;$PYTHONPATH" PATH="/src/trunk/dist.i686-pc-mingw32/bin:/src/trunk/dist.i686-pc-mingw32/lib:/src/trunk/dist.i686-pc-mingw32/lib:.:/usr/local/bin:/mingw/bin:/bin:/osgeo4w/bin:/c/Windows/system32:/c/Windows:/c/Windows/System32/Wbem:/c/PROGRA~1/COMMON~1/ULEADS~1/MPEG:/c/Programs/GIS/Subversion:/c/Program Files/QuickTime/QTSystem/:/osgeo4w/apps/grass/bin:/bin:/c/Programs/Subversion" LC_ALL=C /src/trunk/dist.i686-pc-mingw32/bin/db.columns.exe --html-description < /dev/null | grep -v '</body>\|</html>' > db.columns.tmp.html ; fi access: No such file or directory ERROR: LOCATION << /src/trunk/dist.i686-pc-mingw32/demolocation >> not available make: *** [db.columns.tmp.html] Error 1 rm db.columns.tmp.html
Change History (14)
comment:1 by , 16 years ago
follow-up: 3 comment:2 by , 16 years ago
New error:
Tue Jun 2 14:50:20 EDT 2009: STARTING make include/Make/Vars.make:1: include/Make/Platform.make: No such file or directory make: *** No rule to make target `include/Make/Platform.make'. Stop. include/Make/Vars.make:1: include/Make/Platform.make: No such file or directory make: *** No rule to make target `include/Make/Platform.make'. Stop.
comment:3 by , 16 years ago
Replying to cnielsen:
New error:
include/Make/Vars.make:1: include/Make/Platform.make: No such file or directory
Can you provide more detail on where this is originating from, i.e. which Makefile is generating this error?
The error implies that MODULE_TOPDIR isn't being set.
comment:4 by , 16 years ago
I can't seem to reproduce the second error, meaning probably my error. demolocation error fixed with the patch.
follow-up: 6 comment:5 by , 16 years ago
Sorry Glynn, I had rolled back to an earlier version and that is why the demolocation error seemed fixed. In fact the patch had no effect, the error is still present.
/src/trunk/db/db.columns $ make if [ "/src/trunk/dist.i686-pc-mingw32/bin/db.columns.exe" != "" ] ; then GISRC=/src/trunk/dist.i686-pc-mingw32/demolocation/.grassrc70 GISBASE=c:/programs/gis/osgeo4w/usr/src/trunk/dist.i686-pc-mingw32 PATH="/src/trunk/dist.i686-pc-mingw32/bin:$PATH" PYTHONPATH="c:\programs\gis\osgeo4w\usr\src\trunk\dist.i686-pc-mingw32\etc\python;$PYTHONPATH" PATH="/src/trunk/dist.i686-pc-mingw32/bin:/src/trunk/dist.i686-pc-mingw32/lib:/src/trunk/dist.i686-pc-mingw32/lib:.:/usr/local/bin:/mingw/bin:/bin:/osgeo4w/bin:/c/Windows/system32:/c/Windows:/c/Windows/System32/Wbem:/c/PROGRA~1/COMMON~1/ULEADS~1/MPEG:/c/Programs/GIS/Subversion:/c/Programs/Online/QuickTime/QTSystem/:/osgeo4w/apps/grass/bin:/bin:/c/Programs/Subversion" LC_ALL=C /src/trunk/dist.i686-pc-mingw32/bin/db.columns.exe --html-description < /dev/null | grep -v '</body>\|</html>' > db.columns.tmp.html ; fi access: No such file or directory ERROR: LOCATION << /src/trunk/dist.i686-pc-mingw32/demolocation >> not available make: *** [db.columns.tmp.html] Error 1 rm db.columns.tmp.html
follow-up: 13 comment:6 by , 16 years ago
Replying to cnielsen:
Sorry Glynn, I had rolled back to an earlier version and that is why the demolocation error seemed fixed. In fact the patch had no effect, the error is still present.
ERROR: LOCATION << /src/trunk/dist.i686-pc-mingw32/demolocation >> not available
This should be fixed in r37808.
follow-up: 9 comment:7 by , 16 years ago
CPU: | x86-32 → All |
---|---|
Platform: | MSWindows Vista → All |
Hi,
I can reproduce something similar on amd64 Linux with r37899. (pretty new Debian/Lenny)
the problem seems to be that the system type is not detected properly ("unknown" or ""), and build dirs end up called bin./ and dist./.
there is: "config.status.x86_64-unknown-linux-gnu"
for releasebranch_6_4 on the same machine I get: bin.x86_64-unknown-linux-gnu/ and dist.x86_64-unknown-linux-gnu/ and it builds ok.
error is:
[...]grass/svn/trunk/dist./bin/db.login --html-description < /dev/null | grep -v '</body>\|</html>' > db.login.tmp.html ; fi access: No such file or directory ERROR: LOCATION << /usr/src/grass/svn/trunk/dist.unknown/demolocation >> not available make[2]: *** [db.login.tmp.html] Error 1 rm db.login.tmp.html make[2]: Leaving directory `/usr/src/grass/svn/trunk/db/db.login' make[1]: Leaving directory `/usr/src/grass/svn/trunk/db'
in the above note dist. != dist.unknown.
I had a look but couldn't see where in configure's uname magic it determines the "unknown" type. Seems to be related to cross-compiling.
?, Hamish
comment:8 by , 16 years ago
same thing happens with develbranch6. relbr64 builds ok.
Platform.make's ARCH =
line is empty.
Hamish
follow-up: 10 comment:9 by , 16 years ago
Replying to hamish:
I can reproduce something similar on amd64 Linux with r37899. (pretty new Debian/Lenny)
the problem seems to be that the system type is not detected properly ("unknown" or ""), and build dirs end up called bin./ and dist./.
System detection is up to config.guess; we might need a newer version.
there is: "config.status.x86_64-unknown-linux-gnu"
Are you sure that this isn't a leftover from a previous build?
for releasebranch_6_4 on the same machine I get: bin.x86_64-unknown-linux-gnu/ and dist.x86_64-unknown-linux-gnu/ and it builds ok.
error is:
ERROR: LOCATION << /usr/src/grass/svn/trunk/dist.unknown/demolocation >> not available
in the above note dist. != dist.unknown.
I had a look but couldn't see where in configure's uname magic it determines the "unknown" type. Seems to be related to cross-compiling.
# Set ARCH ARCH= if test -z "${host}"; then ARCH="unknown" else ARCH="${host}" fi
Note that Platform.make.in has:
ARCH = @host@
Although configure.in has:
AC_SUBST(ARCH)
ARCH isn't used in Platform.make.
Also, SC_CONFIG_FLAGS uses uname (which means that cross-compiling can't work), while everything else uses $host.
Which reminds me that SC_CONFIG_FLAGS should have been discarded for 7.0.
follow-up: 11 comment:10 by , 16 years ago
Replying to glynn:
System detection is up to config.guess; we might need a newer version.
there is: "config.status.x86_64-unknown-linux-gnu"
Are you sure that this isn't a leftover from a previous build?
that's in the relbr6 (which builds). In devbr6 and trunk on the same system it is called config.status.unknown
.
> # Set ARCH > > ARCH= > if test -z "${host}"; then > ARCH="unknown" > else > ARCH="${host}" > fi
Note that Platform.make.in has:
> ARCH = @host@
Although configure.in has:
> AC_SUBST(ARCH)
ARCH isn't used in Platform.make.
Also, SC_CONFIG_FLAGS uses uname (which means that cross-compiling can't work), while everything else uses $host.
Which reminds me that SC_CONFIG_FLAGS should have been discarded for 7.0.
ok, following config.guess:
timestamp='2008-04-14' ... UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" x86_64:Linux:2.6.26-2-amd64:#1 SMP Thu May 28 21:28:49 UTC 2009 ...leads to x86_64:Linux:*:*) echo x86_64-unknown-linux-gnu exit ;;
I don't see where $host is set.
trunk$ ./configure reports:
checking host system type... x86_64-unknown-linux-gnu ... Copying config.status to config.status.x86_64-unknown-linux-gnu GRASS is now configured for: x86_64-unknown-linux-gnu
Platform.make now has:
ARCH = x86_64-unknown-linux-gnu
weird, this time it got it. more tests tomorrow.
Hamish
comment:11 by , 16 years ago
Replying to hamish:
ok, following config.guess:
I don't see where $host is set.
It's set by AC_CANONICAL_HOST from the output of config.guess.
follow-up: 14 comment:12 by , 16 years ago
I think I figured out how I was getting "config.status.unknown".
it was because I messed up the ./configure line:
CFLAGS="-ggdb -march=amdfam10 -Wall -Werror-implicit-function-declaration" \ ./configure \ --with-tcltk-includes=/usr/include/tcl8.5 --with-cairo \ --with-motif --with-python=/usr/bin/python2.5-config \ --with-readline --with-cxx --with-odbc --with-sqlite \ --with-freetype --with-freetype-includes=/usr/include/freetype2 \ --without-postgres --with-proj-share=/usr/share/proj \ --enable-64bit --with-pthread \ --with-wxwidgets=/usr/lib/wx/config/gtk2-unicode-release-2.8 \ \ #--with-ffmpeg --with-ffmpeg-includes=/usr/include/ffmpeg \ --with-geos \ 2>&1 | tee config_log.txt
\ #comment
is a problem.. causes this to happen when you run ./configure:
configure: warning: #--with-ffmpeg: invalid host type checking host system type... Invalid configuration `#--with-ffmpeg': machine `#--with' not recognized checking for gcc... gcc
I don't really understand why ./configure continues weirdly, but if I get rid of the \ #--with-ffmpeg
line it all builds ok.
sorry for hijacking this bug with a stupid mistake, Hamish
comment:13 by , 16 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
comment:14 by , 16 years ago
Replying to hamish:
\ #comment
is a problem.. causes this to happen when you run ./configure:
configure: warning: #--with-ffmpeg: invalid host type
I don't really understand why ./configure continues weirdly, but if I get rid of the
\ #--with-ffmpeg
line it all builds ok.
bash treats "\ "" as a literal space, not a word separator. This means that the following # isn't at the beginning of a word, so it's treated as a literal # character rather than starting a comment. The end result is an argument of " #--with-ffmpeg
". As it's the first argument which doesn't begin with a dash, it's treated as the host type.
Replying to cnielsen:
I've been making quite a lot of changes to the build system over the last couple of days.
Try this: