[ADMB Users] Please test updated installation documentation.

Cooper, Wade Wade.Cooper at MyFWC.com
Mon Nov 18 08:27:00 PST 2013


Jon, Johnoel and Dave,

I had a working version of ADMB (11) built from source on Win7 64bit (using MinGW-w64), but I wanted to experiment and try Johnoel's steps (http://www.admb-project.org/buildbot/documentation/quickstartwindows.html) assuming I'm a new user on a typical Windows machine trying to install ADMB for the first time. Since 64-bit is becoming more common for Windows, I wanted to see if it worked out of the box as per the install instructions.

I turned off my previous installs by breaking my paths (renamed my existing c:\admb, c:\mingw, and c:\msys folders to something else) and followed the quickstartwindows guide (svn step -> get-mingw.bat step -> make step).  It fails during the 'make' step on my machine (see bottom of email using debug target).  Possibly this is due to trying to run MinGW on 64-bit Windows instead of using MinGW-w64; I'm unclear when MinGW will work since they state on their website that it works on both 32 and 64-bit windows.  It appears there's some differences between the two in cross compiling.

I then tried my old approach by downloading the newest TDM-GCC installer for MinGW-w64 (http://sourceforge.net/projects/tdm-gcc/files/TDM-GCC%20Installer/tdm64-gcc-4.8.1-3.exe/download) and installed to c:\mingw; downloaded and extracted a version of msys that has flex to c:\msys (from http://sourceforge.net/projects/mingwbuilds/files/external-binary-packages/msys+7za+wget+svn+git+mercurial+cvs-rev11.7z); and made sure my paths were still OK (c:\mingw\bin, c:\msys\bin).

Using the msys shell instead of the dos shell (c:\msys\msys.bat), I built the latest from the svn:

wade.cooper at xxx /c/admb
$ make

It builds fine.  I then copied the c:/admb/build/dist/ folders to c:/admb so my existing path (c:/admb/bin) was correct.  This may be superfluous given how the batch files are now set up.  The polio example builds and runs along with others.

This takes some steps so may not be easy for the typical person setting up ADMB, but has worked for me on 64-bit Windows XP, Vista, and 7 machines.  I think there is definitely room for testing a simpler install process for 64-bit Windows machines.

Regarding using Rtools MinGW, I tried this a year or two ago and remember having a problem with other programs requiring GCC when putting the Rtools MinGW bin folder on the path, possibly because the Rtools distribution was lacking some components that the TDM-GCC distribution had.  It's probably fine for building ADMB but may not be good for everything, at least a year or two back.  As such I've stuck with TDM-GCC, it seems pretty stable and comes as a simple executable installer.

Here's part of the command prompt output using the quickstartwindws.html instructions:

...
if exist ..\build\dist\bin\admb-cfg.bat del ..\build\dist\bin\admb-cfg.bat
echo set ADMB_CFG_CXX=g++ > ..\build\dist\bin\admb-cfg.bat
echo set ADMB_CFG_CXXFLAGS= >> ..\build\dist\bin\admb-cfg.bat
echo set ADMB_CFG_LDFLAGS=-static  >> ..\build\dist\bin\admb-cfg.bat
echo set MINGW_HOME=INGW_HOME >> ..\build\dist\bin\admb-cfg.bat
C:/admb/utilities/make --directory=df1b2-separable CC=gcc DISKDIR=..\..\build\di
st bins
make[2]: Entering directory `C:/admb/src/df1b2-separable'
flex -w tpl2rem.lex
sed -f sedflex lex.yy.c > tpl2rem.c
gcc  -o ..\..\build\dist\bin\tpl2rem.exe tpl2rem.c
make[2]: Leaving directory `C:/admb/src/df1b2-separable'
C:/admb/utilities/make --directory=nh99 CC=gcc DISKDIR=..\..\build\dist bins
make[2]: Entering directory `C:/admb/src/nh99'
flex tpl2cpp.lex
sed -f sedflex lex.yy.c > tpl2cpp.c
gcc  -Wno-format -o ..\..\build\dist\bin\tpl2cpp.exe tpl2cpp.c
make[2]: Leaving directory `C:/admb/src/nh99'
copy ..\scripts\mingw\set-admb-mingw.bat ..\build\dist\bin
        1 file(s) copied.
copy ..\utilities\sed.exe ..\build\dist\bin
        1 file(s) copied.
copy ..\utilities\libiconv2.dll ..\build\dist\bin
        1 file(s) copied.
copy ..\utilities\libintl3.dll ..\build\dist\bin
        1 file(s) copied.
copy ..\utilities\regex2.dll ..\build\dist\bin
        1 file(s) copied.
copy ..\scripts\admb\adcomp.bat ..\build\dist\bin
        1 file(s) copied.
copy ..\scripts\admb\adlink.bat ..\build\dist\bin
        1 file(s) copied.
copy ..\scripts\admb\admb.bat ..\build\dist\bin
        1 file(s) copied.
copy ..\scripts\admb\root-admb.bat ..\admb.bat
        1 file(s) copied.
copy ..\scripts\admb\root-admb.bat ..\build\dist\admb.bat
        1 file(s) copied.
g++ -c -g -Wall -DOPT_LIB -D__GNUDOS__ -Dlinux -D__SPDLL__ -DUSE_LAPLACE -I..\bu
ild\dist\include -o..\build\objects\dist\optlp-df1b2-separable-adpool.obj df1b2-
separable\adpool.cpp
process_begin: CreateProcess(NULL, g++ -c -g -Wall -DOPT_LIB -D__GNUDOS__ -Dlinu
x -D__SPDLL__ -DUSE_LAPLACE -I..\build\dist\include -o..\build\objects\dist\optl
p-df1b2-separable-adpool.obj df1b2-separable\adpool.cpp, ...) failed.
make (e=2): The system cannot find the file specified.
make[1]: *** [..\build\objects\dist\optlp-df1b2-separable-adpool.obj] Error 2
make[1]: Leaving directory `C:/admb/src'
make: *** [g++-debug] Error 2



Wade Cooper, PhD
Fish and Wildlife Research Institute
Florida Fish and Wildlife Conservation Commission
100 8th Ave. S.E.
St. Petersburg, FL 33701
Phone: 727.502.4940
Email: wade.cooper at myfwc.com<mailto:wade.cooper at myfwc.com>
Visit our Web site at http://research.myFWC.com





From: users-bounces at admb-project.org [mailto:users-bounces at admb-project.org] On Behalf Of Jon Schnute
Sent: Saturday, November 16, 2013 8:43 PM
To: 'Johnoel Ancheta'; 'dave fournier'
Cc: 'ADMB Users'
Subject: Re: [ADMB Users] Please test updated installation documentation.

Further to my previous message, I have now tried the same experiment using the version 11.1 source code, rather than ADMB-latest. I discovered that this version produces a much smaller Unix tree in the directory ..\admb\utilities\mingw, so I used the ..\mingw tree that I downloaded from the latest. (I just replaced the 11.1 ..\mingw directory with the new one obtained today.) Then I tried to make the 11.1 binary ADMB library as before, and again the process failed while trying to compile 'amoeba.cpp'.

Does amoeba.cpp require something special? Are both of you getting this same problem? I'm taking care to ensure that nothing on my path would override the Unix tools at ..\admb\utilities\mingw.

Incidentally, for step 5 I used '\utilities\make' rather than 'make' as stated in my previous message. On this point, why do you use a possibly old version of 'make' embedded in the ADMB source code, rather than the version of 'make' that currently comes with mingw/msys?

These problems help illustrate the reasons that I flagged this as an important issue. I'm not blaming anyone, but I hope you'll stay with this until the problems are resolved.

Jon

PS - I really sympathize with Dave's question: "Doesn't anyone test this stuff?" I think the ADMB project needs some volunteer testers who at least check each new release on each OS. I'm trying to play that role in this exercise, at least for the Windows OS.

PPS - I wonder why the version of mingw that Dave obtained yesterday worked, whereas the version obtained with get-mingw.bat appears not to.

From: Jon Schnute [mailto:schnutej-dfo at shaw.ca]
Sent: November-16-13 4:28 PM
To: 'Johnoel Ancheta'; 'dave fournier'
Cc: 'ADMB Users'
Subject: RE: [ADMB Users] Please test updated installation documentation.

Johnoel and Dave - Thanks for the updated documentation. I've tried to follow it carefully, starting with the file admb-latest.zip obtained via your link:

http://www.admb-project.org/buildbot/snapshots/admb-latest.zip

>From this I manually extracted the 'admb' directory tree to D:\Temp\admb. That's essentially step 2,  where I've used a slightly different directory than you suggested. I then used a command window to install mingw:

D:\Temp\admb\> utilities\get-mingw.bat

That seemed to work fine, giving me a fully populated tree at D:\Temp\admb\utilities\mingw. Furthermore, I get g++ version 4.8.1 with the command:

D:\Temp\admb\utilities\mingw\bin>g++ --version
g++ (GCC) 4.8.1

I presume this is a 32-bit compiler, right? Anyway I'm now done with step 4.

To implement step 5, I used the command:

D:\Temp\admb\make

This seemed to be working nicely for a while  until it failed suddenly while trying to compile the file amoeba.cppp. Here is the final console of information:

***** Final screen
g++ -c -O3 -Wall -DSAFE_ALL -D__GNUDOS__ -Dlinux -D__SPDLL__ -DUSE_LAPLACE -I..\
build\dist\include -o..\build\objects\dist\saflp-linad99-vrannegbin.obj linad99\
vrannegbin.cpp
g++ -c -O3 -Wall -DSAFE_ALL -D__GNUDOS__ -Dlinux -D__SPDLL__ -DUSE_LAPLACE -I..\
build\dist\include -o..\build\objects\dist\saflp-linad99-vregress.obj linad99\vr
egress.cpp
g++ -c -O3 -Wall -DSAFE_ALL -D__GNUDOS__ -Dlinux -D__SPDLL__ -DUSE_LAPLACE -I..\
build\dist\include -o..\build\objects\dist\saflp-linad99-vspline.obj linad99\vsp
line.cpp
g++ -c -O3 -Wall -DSAFE_ALL -D__GNUDOS__ -Dlinux -D__SPDLL__ -DUSE_LAPLACE -I..\
build\dist\include -o..\build\objects\dist\saflp-linad99-vtdev.obj linad99\vtdev
.cpp
g++ -c -O3 -Wall -DSAFE_ALL -D__GNUDOS__ -Dlinux -D__SPDLL__ -DUSE_LAPLACE -I..\
build\dist\include -o..\build\objects\dist\saflp-linad99-xfmmtr1.obj linad99\xfm
mtr1.cpp
g++ -c -O3 -Wall -DSAFE_ALL -D__GNUDOS__ -Dlinux -D__SPDLL__ -DUSE_LAPLACE -I..\
build\dist\include -o..\build\objects\dist\saflp-linad99-xgradclc.obj linad99\xg
radclc.cpp
g++ -c -O3 -Wall -DOPT_LIB -D__GNUDOS__ -Dlinux -D__SPDLL__ -DUSE_LAPLACE -I..\b
uild\dist\include -o..\build\objects\dist\optlp-nh99-adsleep.obj nh99\adsleep.cp
p
g++ -c -O3 -Wall -DOPT_LIB -D__GNUDOS__ -Dlinux -D__SPDLL__ -DUSE_LAPLACE -I..\b
uild\dist\include -o..\build\objects\dist\optlp-nh99-amoeba.obj nh99\amoeba.cpp
process_begin: CreateProcess(NULL, cat ../VERSION, ...) failed.
***** End of final screen

This is a bit weird, perhaps the result of recent changes to the source code. But rest assured that I'm taking everything written by both of you very seriously. I really appreciate your efforts.

Jon

From: users-bounces at admb-project.org<mailto:users-bounces at admb-project.org> [mailto:users-bounces at admb-project.org] On Behalf Of Johnoel Ancheta
Sent: November-16-13 12:04 PM
To: dave fournier
Cc: ADMB Users
Subject: Re: [ADMB Users] Please test updated installation documentation.

Ahh, thanks for the feedback.  I assume that you are using

http://www.admb-project.org/buildbot/documentation/quickstartwindows.html

Which failed at step 5

On Sat, Nov 16, 2013 at 9:55 AM, dave fournier <davef at otter-rsch.com<mailto:davef at otter-rsch.com>> wrote:

So then I installed the msys tools using the installer at.  Note that I ONLY
installed the tools since the comiler is presumably already installed with Johnoel's
commands.


http://sourceforge.net/projects/mingw/files/Installer/

put

 c:\MinGW\msys\1.0\bin

on my path.

Check by  using commands like rm and cp.  OK so far.

_______________________________________________
Users mailing list
Users at admb-project.org<mailto:Users at admb-project.org>
http://lists.admb-project.org/mailman/listinfo/users


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.admb-project.org/pipermail/users/attachments/20131118/ca823a95/attachment.html>


More information about the Users mailing list