[GRASS-windows] Compile r.example for GRASS6.4 in Windows

António Rocha antonio.rocha at deimos.com.pt
Thu Nov 19 12:42:21 EST 2009


Ok here it goes. Another chapter around the compilation of r.example in 
WINDOWS XP :)

After following Glynn suggestion of changing names of Dll files, I tried 
to run MAKE and I got the following error
The error is
make: Entering directory `/c/grass6/tests/r.example'
c:/grass6/include/Make/Grass.make:418: warning: overriding commands for 
target `/c/grass6/bin'
c:/grass6/include/Make/Grass.make:409: warning: ignoring old commands 
for target `/c/grass6/bin'
gcc -L/c/grass6/lib -Wl,--export-dynamic,--enable-runtime-pseudo-reloc  
-L/c/OSGeo4W/apps/gdal-16/lib -L/c/OSGeo4W/lib     -o 
/c/grass6/bin/r.example.exe OBJ./a/main.o C:/grass6/fmode.o -lgrass_gis 
-lgrass_datetime -lxdr -liberty -lws2_32    -lz      -lxdr -liberty 
-lws2_32    -lz
c:\osgeo4w\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe: 
cannot find -lgrass_datetime
collect2: ld returned 1 exit status
make: *** [/c/grass6/bin/r.example.exe] Error 1
make: Leaving directory `/c/grass6/tests/r.example'

There is no file with that name neigter lxdr neither liberty. The this 
is at grass.make DATETIME_LIBNAME is defined:
DATETIME_LIBNAME      = grass_datetime
and then DATETIMELIB is defined as
DATETIMELIB   = -l$(DATETIME_LIBNAME)

so DATETIMELIB is equal to lgrass_datetime and these files doesn't 
exist. My question is: Was it suppose to have those files in Windows or 
they have another name?

Thanks..

Best Regards,
Antonio Rocha

António Rocha wrote:
> Uoouu this is a BINGO :)
> Why?
> At grass.make I have a variable named DATETIME_LIBNAME defined like this:
> DATETIME_LIBNAME      = grass_datetime
>
> And then: DATETIMELIB with this sintax:
> DATETIMELIB   = -l$(DATETIME_LIBNAME)
>
> this means that he is searching for lgrass_datetime that doesn't 
> exist. and same will happen with the others libs defined in GRASS.make
>
> Question: Can I change the file names to libgrass_XXX. dll (add lib 
> instead of l and add .dll at the end?)
>
> Or I really should have those files?
>
> Best regards,
> Antonio Rocha
>
>
> António Rocha wrote:
>> The error is
>> make: Entering directory `/c/grass6/tests/r.example'
>> c:/grass6/include/Make/Grass.make:418: warning: overriding commands 
>> for target `/c/grass6/bin'
>> c:/grass6/include/Make/Grass.make:409: warning: ignoring old commands 
>> for target `/c/grass6/bin'
>> gcc -L/c/grass6/lib 
>> -Wl,--export-dynamic,--enable-runtime-pseudo-reloc  
>> -L/c/OSGeo4W/apps/gdal-16/lib -L/c/OSGeo4W/lib     -o 
>> /c/grass6/bin/r.example.exe OBJ./a/main.o C:/grass6/fmode.o 
>> -lgrass_gis -lgrass_datetime -lxdr -liberty -lws2_32    -lz      
>> -lxdr -liberty -lws2_32    -lz
>> c:\osgeo4w\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe: 
>> cannot find -lgrass_datetime
>> collect2: ld returned 1 exit status
>> make: *** [/c/grass6/bin/r.example.exe] Error 1
>> make: Leaving directory `/c/grass6/tests/r.example'
>>
>>> Apply the same solution as for -lgrass_gis, i.e. copy
>>> libgrass_datetime.6.4.svn.dll (or whatever the exact name is) to
>>> libgrass_datetime.dll.
>>>
>>> I suggest doing this now for all of the libraries, e.g.:
>>>
>>> cd dist./lib
>>> for file in *.svn.dll ; do cp "$file" "${file%.6.*.svn.dll}.dll" ; done
>>>
>>>   
>> Ok I have done that, but it's still the same error. Because he is not 
>> searching for libgrass_datetime.dll but for lgrass_datetime. And 
>> there is no file with that name.
>>
>> I'm writting all of this in order to write a wiki about compiling 
>> r.example or a module in WINDOWS :)
>>
>>
>> __________ Information from ESET NOD32 Antivirus, version of virus 
>> signature database 4622 (20091119) __________
>>
>> The message was checked by ESET NOD32 Antivirus.
>>
>> http://www.eset.com
>>
>>
>>
>>
>>
>> __________ Information from ESET NOD32 Antivirus, version of virus 
>> signature database 4622 (20091119) __________
>>
>> The message was checked by ESET NOD32 Antivirus.
>>
>> http://www.eset.com
>>
>>
>
>
>
> __________ Information from ESET NOD32 Antivirus, version of virus 
> signature database 4622 (20091119) __________
>
> The message was checked by ESET NOD32 Antivirus.
>
> http://www.eset.com
>
>
>
>
>
> __________ Information from ESET NOD32 Antivirus, version of virus 
> signature database 4622 (20091119) __________
>
> The message was checked by ESET NOD32 Antivirus.
>
> http://www.eset.com
>
>



__________ Information from ESET NOD32 Antivirus, version of virus signature database 4622 (20091119) __________

The message was checked by ESET NOD32 Antivirus.

http://www.eset.com




More information about the grass-windows mailing list