diff --git a/doc/installation/checkInstallation.html b/doc/installation/checkInstallation.html
index 3ee042608..a36271d48 100644
--- a/doc/installation/checkInstallation.html
+++ b/doc/installation/checkInstallation.html
@@ -381,92 +381,121 @@
SOURCE CODE
'hmmerTests.m')");
0310 res=interpretResults(res);
0311 if res==false
-0312 fprintf([' This is essential to run getKEGGModelFromHomology()\n'...
-0313 ' when using a FASTA file as input\n'])
-0314 end
-0315
-0316 if developMode
-0317 fprintf('\n=== Development binary executables ===\n');
-0318 fprintf('NOTE: These binaries are only required when using KEGG FTP dump files in getKEGGModelForOrganism\n');
-0319
-0320 fprintf(myStr(' > Checking CD-HIT',40))
-0321 [~,res]=evalc("runtests('cdhitTests.m');");
-0322 interpretResults(res);
-0323
-0324 fprintf(myStr(' > Checking MAFFT',40))
-0325 [~,res]=evalc("runtests('mafftTests.m');");
-0326 interpretResults(res);
-0327 end
-0328 end
-0329
-0330 fprintf('\n=== Compatibility ===\n');
-0331 fprintf(myStr(' > Checking function uniqueness',40))
-0332 checkFunctionUniqueness();
-0333
-0334 fprintf('\n*** checkInstallation complete ***\n');
-0335 end
-0336
-0337 function res = interpretResults(results)
-0338 if results.Failed==0 && results.Incomplete==0
-0339 fprintf('Pass\n');
-0340 res=true;
-0341 else
-0342 printOrange('Fail\n')
-0343 fprintf(' Download/compile the binary and rerun checkInstallation\n');
-0344 res=false;
-0345 end
-0346 end
-0347
-0348 function str = myStr(InputStr,len)
-0349 str=InputStr;
-0350 lenDiff = len - length(str);
-0351 if lenDiff < 0
-0352 warning('String too long');
-0353 else
-0354 str = [str blanks(lenDiff)];
-0355 end
-0356 end
-0357
-0358 function status = makeBinaryExecutable(ravenDir)
-0359
-0360
-0361 if ispc
-0362 status = 0;
-0363 return;
+0312 fprintf([' HMMER is only required by getKEGGModelForOrganism() when\n'...
+0313 ' using a FASTA file as input. If you do not use this function,\n'...
+0314 ' this failure can be ignored.\n'])
+0315
+0316 if ispc
+0317 [status,~]=system('where wsl');
+0318 if status~=0
+0319 printOrange([' MATLAB cannot find wsl.exe. On Windows, HMMER runs through WSL.\n'...
+0320 ' Install it with "wsl --install" in a Command Prompt, then restart\n'...
+0321 ' MATLAB (it inherits the system PATH at startup) and rerun checkInstallation\n'])
+0322 else
+0323 [status,~]=system('wsl -e true');
+0324 if status~=0
+0325 printOrange([' MATLAB finds wsl.exe, but cannot start a Linux distribution\n'...
+0326 ' through it. Run "wsl -l -v" in a Command Prompt to check that a\n'...
+0327 ' distribution is installed and set up, then restart MATLAB and\n'...
+0328 ' rerun checkInstallation\n'])
+0329 else
+0330 try
+0331 [status,~]=system(['wsl "' getWSLpath(fullfile(ravenDir,'software','hmmer','hmmsearch')) '" -h']);
+0332 catch
+0333 status=1;
+0334 end
+0335 if status~=0
+0336 printOrange([' WSL works, but the RAVEN HMMER binary cannot be run in it.\n'...
+0337 ' Check that the files in software/hmmer are present and that\n'...
+0338 ' the drive holding RAVEN is accessible from WSL\n'])
+0339 end
+0340 end
+0341 end
+0342 end
+0343 end
+0344
+0345 if developMode
+0346 fprintf('\n=== Development binary executables ===\n');
+0347 fprintf('NOTE: These binaries are only required when using KEGG FTP dump files in getKEGGModelForOrganism\n');
+0348
+0349 fprintf(myStr(' > Checking CD-HIT',40))
+0350 [~,res]=evalc("runtests('cdhitTests.m');");
+0351 interpretResults(res);
+0352
+0353 fprintf(myStr(' > Checking MAFFT',40))
+0354 [~,res]=evalc("runtests('mafftTests.m');");
+0355 interpretResults(res);
+0356 end
+0357 end
+0358
+0359 fprintf('\n=== Compatibility ===\n');
+0360 fprintf(myStr(' > Checking function uniqueness',40))
+0361 checkFunctionUniqueness();
+0362
+0363 fprintf('\n*** checkInstallation complete ***\n');
0364 end
-0365 binDir = fullfile(ravenDir,'software');
-0366
-0367 binList = {fullfile(binDir,'blast+','blastp'); fullfile(binDir,'blast+','blastp.mac');
-0368 fullfile(binDir,'blast+','makeblastdb'); fullfile(binDir,'blast+','makeblastdb.mac');
-0369 fullfile(binDir,'cd-hit','cd-hit'); fullfile(binDir,'cd-hit','cd-hit.mac');
-0370 fullfile(binDir,'diamond','diamond'); fullfile(binDir,'diamond','diamond.mac');
-0371 fullfile(binDir,'hmmer','hmmbuild'); fullfile(binDir,'hmmer','hmmbuild.mac');
-0372 fullfile(binDir,'hmmer','hmmsearch'); fullfile(binDir,'hmmer','hmmsearch.mac');
-0373 fullfile(binDir,'GLPKmex','glpkcc.mexa64'); fullfile(binDir,'GLPKmex','glpkcc.mexglx'); fullfile(binDir,'GLPKmex','glpkcc.mexmaci64'); fullfile(binDir,'GLPKmex','glpkcc.mexmaca64');
-0374 fullfile(binDir,'libSBML','TranslateSBML_RAVEN.mexa64'); fullfile(binDir,'libSBML','TranslateSBML_RAVEN.mexglx'); fullfile(binDir,'libSBML','TranslateSBML_RAVEN.mexmaci64'); fullfile(binDir,'libSBML','TranslateSBML_RAVEN.mexmaca64');
-0375 fullfile(binDir,'libSBML','OutputSBML_RAVEN.mexa64'); fullfile(binDir,'libSBML','OutputSBML_RAVEN.mexglx'); fullfile(binDir,'libSBML','OutputSBML_RAVEN.mexmaci64'); fullfile(binDir,'libSBML','OutputSBML_RAVEN.mexmaca64');
-0376 fullfile(binDir,'mafft','mafft-linux64','mafft.bat');
-0377 fullfile(binDir,'mafft','mafft-mac','mafft.bat');};
-0378
-0379 for i=1:numel(binList)
-0380 [status,cmdout] = system(['chmod +x "' binList{i} '"']);
-0381 if status ~= 0
-0382 warning('Failed to make %s executable: %s ',binList{i},strip(cmdout))
-0383 end
+0365
+0366 function res = interpretResults(results)
+0367 if results.Failed==0 && results.Incomplete==0
+0368 fprintf('Pass\n');
+0369 res=true;
+0370 else
+0371 printOrange('Fail\n')
+0372 fprintf(' Download/compile the binary and rerun checkInstallation\n');
+0373 res=false;
+0374 end
+0375 end
+0376
+0377 function str = myStr(InputStr,len)
+0378 str=InputStr;
+0379 lenDiff = len - length(str);
+0380 if lenDiff < 0
+0381 warning('String too long');
+0382 else
+0383 str = [str blanks(lenDiff)];
0384 end
0385 end
0386
-0387 function printOrange(stringToPrint)
-0388
-0389
-0390
-0391 try useDesktop = usejava('desktop'); catch, useDesktop = false; end
-0392 if useDesktop
-0393 fprintf(['[\b' stringToPrint,']\b'])
-0394 else
-0395 fprintf(stringToPrint)
-0396 end
-0397 end
+0387 function status = makeBinaryExecutable(ravenDir)
+0388
+0389
+0390 if ispc
+0391 status = 0;
+0392 return;
+0393 end
+0394 binDir = fullfile(ravenDir,'software');
+0395
+0396 binList = {fullfile(binDir,'blast+','blastp'); fullfile(binDir,'blast+','blastp.mac');
+0397 fullfile(binDir,'blast+','makeblastdb'); fullfile(binDir,'blast+','makeblastdb.mac');
+0398 fullfile(binDir,'cd-hit','cd-hit'); fullfile(binDir,'cd-hit','cd-hit.mac');
+0399 fullfile(binDir,'diamond','diamond'); fullfile(binDir,'diamond','diamond.mac');
+0400 fullfile(binDir,'hmmer','hmmbuild'); fullfile(binDir,'hmmer','hmmbuild.mac');
+0401 fullfile(binDir,'hmmer','hmmsearch'); fullfile(binDir,'hmmer','hmmsearch.mac');
+0402 fullfile(binDir,'GLPKmex','glpkcc.mexa64'); fullfile(binDir,'GLPKmex','glpkcc.mexglx'); fullfile(binDir,'GLPKmex','glpkcc.mexmaci64'); fullfile(binDir,'GLPKmex','glpkcc.mexmaca64');
+0403 fullfile(binDir,'libSBML','TranslateSBML_RAVEN.mexa64'); fullfile(binDir,'libSBML','TranslateSBML_RAVEN.mexglx'); fullfile(binDir,'libSBML','TranslateSBML_RAVEN.mexmaci64'); fullfile(binDir,'libSBML','TranslateSBML_RAVEN.mexmaca64');
+0404 fullfile(binDir,'libSBML','OutputSBML_RAVEN.mexa64'); fullfile(binDir,'libSBML','OutputSBML_RAVEN.mexglx'); fullfile(binDir,'libSBML','OutputSBML_RAVEN.mexmaci64'); fullfile(binDir,'libSBML','OutputSBML_RAVEN.mexmaca64');
+0405 fullfile(binDir,'mafft','mafft-linux64','mafft.bat');
+0406 fullfile(binDir,'mafft','mafft-mac','mafft.bat');};
+0407
+0408 for i=1:numel(binList)
+0409 [status,cmdout] = system(['chmod +x "' binList{i} '"']);
+0410 if status ~= 0
+0411 warning('Failed to make %s executable: %s ',binList{i},strip(cmdout))
+0412 end
+0413 end
+0414 end
+0415
+0416 function printOrange(stringToPrint)
+0417
+0418
+0419
+0420 try useDesktop = usejava('desktop'); catch, useDesktop = false; end
+0421 if useDesktop
+0422 fprintf(['[\b' stringToPrint,']\b'])
+0423 else
+0424 fprintf(stringToPrint)
+0425 end
+0426 end
Generated by m2html © 2005