如何解决 Visual Studio 2015 中的这个编译错误?

How can I resolve this compile error in Visual Studio 2015?

我正在尝试在 Visual Studio 2015 年编译 CFortranTranslator

出现以下错误:

1>------ Rebuild All started: Project: CFortranTranslator, Configuration: Debug x64 ------
2>------ Rebuild All started: Project: cpptest, Configuration: Debug x64 ------
1>  Process "for90.y" bison file
2>  main.cpp
1>C:\Users\pc\source\repos\CFortranTranslator\src\grammar\custom_build_rules\win_flex_bison_custom_build.targets(55,5): error MSB3721: The command "
1>C:\Users\pc\source\repos\CFortranTranslator\src\grammar\custom_build_rules\win_flex_bison_custom_build.targets(55,5): error MSB3721: start /B /WAIT /D "C:\Users\pc\source\repos\CFortranTranslator\src\grammar\" win_bison.exe --output="for90.tab.cpp" --defines="for90.tab.h"  "for90.y"
1>C:\Users\pc\source\repos\CFortranTranslator\src\grammar\custom_build_rules\win_flex_bison_custom_build.targets(55,5): error MSB3721: exit /b %errorlevel%" exited with code 1.
2>  cpptest.vcxproj -> C:\Users\pc\source\repos\CFortranTranslator\vsbuild\x64\Debug\cpptest.exe
2>  cpptest.vcxproj -> C:\Users\pc\source\repos\CFortranTranslator\vsbuild\x64\Debug\cpptest.pdb (Partial PDB)
========== Rebuild All: 1 succeeded, 1 failed, 0 skipped ==========

flex-bison已经在指定目录中:

那么,我应该怎么做才能解决这个问题?

编辑: 按照罗伯特的指示进行操作后,与 Flex/Bison 相关的错误消失了。多亏了他。

但是,现在,我发现应用程序没有找到 Boost,即使它已经安装了。

1>------ Rebuild All started: Project: CFortranTranslator, Configuration: Debug x64 ------
1>  Process "for90.y" bison file
1>  Process "for90.l" flex file
1>  lazygen.cpp
1>  gen_variable.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_vardef.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_type.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_suite.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_stmt.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_select.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_program.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_paramtable.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_label.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_io.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_if.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_function.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_feature.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_exp.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_doc.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_do.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_dimenslice.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_config.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_callable.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  Generating Code...
1>  Compiling...
1>  gen_attr_describer.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_arraybuilder.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  gen_common.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  Variable.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  tokenizer.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  parser.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  Intent.cpp
1>  Function.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  attribute.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  main.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  simple_lexer.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  for90.tab.cpp
1>c1xx : fatal error C1083: Cannot open source file: '..\src\grammar\for90.tab.cpp': No such file or directory
1>  getopt2.cpp
1>  develop.cpp
1>c:\users\pc\source\repos\calvinneo\cfortrantranslator\src\parser\variable.h(22): fatal error C1083: Cannot open include file: 'boost/optional/optional.hpp': No such file or directory
1>  forstdio.cpp
1>  forlang.cpp
1>  forfilesys.cpp
1>  for90std.cpp
1>  farray.cpp
1>  Generating Code...
========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========

EDIT-2:

我解决了 Boost 问题。

现在,我遇到以下错误:

for90.tab.cpp
1>c1xx : fatal error C1083: Cannot open source file: '..\src\grammar\for90.tab.cpp': No such file or directory

打开文件:

... \CFortranTranslator\src\grammar\custom_build_rules\win_flex_bison_custom_build.props
  1. 转到第 16、17、18 行

       <CommandLineTemplate>
       start /B /WAIT /D "%(RootDir)%(Directory)" win_bison.exe [AllOptions] [AdditionalOptions] "%(Filename)%(Extension)"
       exit /b %errorlevel%</CommandLineTemplate>
    

替换为(仅 1 行):

  <CommandLineTemplate>start /B /WAIT /D "%(RootDir)%(Directory)" win_bison.exe [AllOptions] [AdditionalOptions] "%(Filename)%(Extension)" &amp; exit /b %errorlevel%</CommandLineTemplate>
  1. 在(现在)第 34、35、36 行:

       <CommandLineTemplate>
       start /B /WAIT /D "%(RootDir)%(Directory)" win_flex.exe [AllOptions] [AdditionalOptions] "%(Filename)%(Extension)"
       exit /b %errorlevel%</CommandLineTemplate>
    

替换为(仅 1 行):

  <CommandLineTemplate>start /B /WAIT /D "%(RootDir)%(Directory)" win_flex.exe [AllOptions] [AdditionalOptions] "%(Filename)%(Extension)" &amp; exit /b %errorlevel%</CommandLineTemplate>
  1. 保存文件并构建