[GRASS-user] Grass7 on FreeBSD 9.0 : Still the same error

Despite of the update of : "config.guess" and "confi.sub" (found here : http://git.savannah.gnu.org/cgit/config.git/tree),

The outcome of "./configure" is still the same :

" configure: error: ***Unknown platform: i386-unknown-freebsd9.0*** "

Anyone an idea ?

On Tue, Dec 4, 2012 at 5:59 PM, Pierre Stévens <pierre@geobsd.com> wrote:

Despite of the update of : "config.guess" and "confi.sub" (found here :
http://git.savannah.gnu.org/cgit/config.git/tree),

It is now also in GRASS 7.svn.

The outcome of "./configure" is still the same :

" configure: error: ***Unknown platform: i386-unknown-freebsd9.0*** "

Anyone an idea ?

Supported is this in config.guess:

    *:FreeBSD:*:*)
        UNAME_PROCESSOR=`/usr/bin/uname -p`
        case ${UNAME_PROCESSOR} in
            amd64)
                echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed
-e 's/[-(].*//'` ;;
            *)
                echo ${UNAME_PROCESSOR}-unknown-freebsd`echo
${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
        esac
        exit ;;

Can you please post the result of
uname -a
?

Markus

Pierre,

On Tue, Dec 4, 2012 at 5:59 PM, Pierre Stévens <pierre@geobsd.com> wrote:

Despite of the update of : "config.guess" and "confi.sub" (found here :
http://git.savannah.gnu.org/cgit/config.git/tree),

The outcome of "./configure" is still the same :

" configure: error: ***Unknown platform: i386-unknown-freebsd9.0*** "

Anyone an idea ?

Please try again with the current GRASS 7 version from SVN.
Relevant pieces have been updated.

Please let us know if it compiles now.

Markus

There are some specific aspects on compiling Grass7 on FreeBSD 9.1.

1. Must use "gmake" instead of "make". 'Make' is different under BSD
Environnement.

2. The 'gis.h' header try to include the 'alloca.h' header. On FreeBSD,
alloca() is declared in 'stdlib.h'
(http://forums.freebsd.org/showthread.php?t=30354).

This issue was temporarily fixed with : ' #touch
/usr/local/include/alloca.h '

3. Current error appears in ' grass7/dist.i386-freebsd/lib/manage ' :

  ld: unrecognized option '-Wl, -rpath, /grass7/dist.i386-freebsd/lib

Possible solution could be found in LD_SEARCH_FLAGS like in this post (https://trac.osgeo.org/grass/ticket/1757#comment:4).

I try to modify line 562 in ' aclocal.m4 ' and replace

SHLIB_LD="ld -Bshareable -x"
by SHLIB_LD="${CC} -shared"

But it didn't work.

Maybe one of us have already a solution ?

On Mon, Mar 25, 2013 at 11:31 PM, Pierre Stévens <pierre@geobsd.com> wrote:

There are some specific aspects on compiling Grass7 on FreeBSD 9.1.

1. Must use "gmake" instead of "make". 'Make' is different under BSD
Environnement.

This seems to be true for most BSD and UNIX systems.

2. The 'gis.h' header try to include the 'alloca.h' header. On FreeBSD,
alloca() is declared in 'stdlib.h'
(http://forums.freebsd.org/showthread.php?t=30354).

This issue was temporarily fixed with : ' #touch
/usr/local/include/alloca.h '

gis.h is fixed in r55519.

3. Current error appears in ' grass7/dist.i386-freebsd/lib/manage ' :

        ld: unrecognized option '-Wl, -rpath, /grass7/dist.i386-freebsd/lib

Possible solution could be found in LD_SEARCH_FLAGS like in this post
(https://trac.osgeo.org/grass/ticket/1757#comment:4).

I try to modify line 562 in ' aclocal.m4 ' and replace

SHLIB_LD="ld -Bshareable -x"
by SHLIB_LD="${CC} -shared"

But it didn't work.

If you use
SHLIB_LD="${CC} -shared"
you must also use
LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'

You would also need to patch configure or run autoconf (version 2.13).

HTH,

Markus M

PS: grass 7 compiles for me on FreeBSD 9.0 with SHLIB_LD="ld
-Bshareable -x", even though it should actually fail.

On Tue, Mar 26, 2013 at 10:10 AM, Markus Metz
<markus.metz.giswork@gmail.com> wrote:

On Mon, Mar 25, 2013 at 11:31 PM, Pierre Stévens <pierre@geobsd.com> wrote:

There are some specific aspects on compiling Grass7 on FreeBSD 9.1.

1. Must use "gmake" instead of "make". 'Make' is different under BSD
Environnement.

This seems to be true for most BSD and UNIX systems.

2. The 'gis.h' header try to include the 'alloca.h' header. On FreeBSD,
alloca() is declared in 'stdlib.h'
(http://forums.freebsd.org/showthread.php?t=30354).

This issue was temporarily fixed with : ' #touch
/usr/local/include/alloca.h '

gis.h is fixed in r55519.

3. Current error appears in ' grass7/dist.i386-freebsd/lib/manage ' :

        ld: unrecognized option '-Wl, -rpath, /grass7/dist.i386-freebsd/lib

Possible solution could be found in LD_SEARCH_FLAGS like in this post
(https://trac.osgeo.org/grass/ticket/1757#comment:4).

I try to modify line 562 in ' aclocal.m4 ' and replace

SHLIB_LD="ld -Bshareable -x"
by SHLIB_LD="${CC} -shared"

But it didn't work.

If you use
SHLIB_LD="${CC} -shared"
you must also use
LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'

You would also need to patch configure or run autoconf (version 2.13).

HTH,

Markus M

PS: grass 7 compiles for me on FreeBSD 9.0 with SHLIB_LD="ld
-Bshareable -x", even though it should actually fail.

G7 compiles and runs for me on FreeBSD 9.0 with either
      SHLIB_LD="${CC} -shared"
      LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'
or
      SHLIB_LD="ld -Bshareable -x"
      LD_SEARCH_FLAGS='-rpath ${LIB_RUNTIME_DIR}'

The former is now the default in r55521.

Markus M