boost编译之 fatal error C1083: Cannot open source file: 'yyacc.c': No such file or directory
2017-12-06 09:32
549 查看
环境:WINDOW10 1709 + VS2017 COMMUNITY
从http://www.boost.org/users/history/version_1_65_1.html下载windows版的boost,调用bootstrap.bat编译失败。
这个错误持续好久了,网上没找到相关线索,就自己琢磨了一下,原因是cmd执行过程中当前目录不对导致。
调用关系如下:
/bootstrap.bat 调用了 /tools/build/bootstrap.bat
/tools/build/bootstrap.bat 调用了 /tools/build/src/engine/build.bat
/tools/build/src/engine/build.bat 调用了 /.../config_toolset.bat
手动调用build.bat发现输出如下:
原来/tools/build/src/engine/build.bat:162 call config_toolset.bat 会更改当前文件夹。
于是在162行后增加一行:
有网友说,想编译64位的boost库,需要从VS的x64命令行启动,而不是随便一个cmd。
从http://www.boost.org/users/history/version_1_65_1.html下载windows版的boost,调用bootstrap.bat编译失败。
这个错误持续好久了,网上没找到相关线索,就自己琢磨了一下,原因是cmd执行过程中当前目录不对导致。
调用关系如下:
/bootstrap.bat 调用了 /tools/build/bootstrap.bat
/tools/build/bootstrap.bat 调用了 /tools/build/src/engine/build.bat
/tools/build/src/engine/build.bat 调用了 /.../config_toolset.bat
手动调用build.bat发现输出如下:
C:\boost_1_65_1\tools\build\src\engine>build.bat ********************************************************************** ** Visual Studio 2017 Developer Command Prompt v15.0.26730.8 ** Copyright (c) 2017 Microsoft Corporation ********************************************************************** [vcvarsall.bat] Environment initialized for: 'x86' ### ### Using 'vc141' toolset. ### C:\Users\tdl\source>if exist bootstrap rd /S /Q bootstrap C:\Users\tdl\source>md bootstrap C:\Users\tdl\source>cl /nologo /RTC1 /Zi /MTd /Fobootstrap/ /Fdbootstrap/ -DNT -DYYDEBUG -wd4996 kernel32.lib advapi32.lib user32.lib /Febootstrap\yyacc0 yyacc.c yyacc.c c1: fatal error C1083: Cannot open source file: 'yyacc.c': No such file or directory问题就暴露了,在engine文件夹下调用的bat,怎么后面报错时都是在/users/user/source下执行的?
原来/tools/build/src/engine/build.bat:162 call config_toolset.bat 会更改当前文件夹。
于是在162行后增加一行:
cd /d %~dp0把当前目录改回/tools/build/src/engine/,即可编译出Boost.Build
有网友说,想编译64位的boost库,需要从VS的x64命令行启动,而不是随便一个cmd。
相关文章推荐
- 【Note2】用keil对工程编译时,工程中已经包含的文件会报错:cannot open source input file usb_conf.h No such file or directory
- vs2008 编译出错 C1083 Cannot open include file: 'afxcontrolbars.h': No such file or directory
- error: #5: cannot open source input file "core_cm4.h": No such file or directory
- 编译Emacs出现libgif.so.7: cannot open shared object file: No such file or directory
- 编译Uboot时提示error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory
- VC编译程序时Cannot open precompiled header file: 'Debug/.pch': No such file or directory为什么
- VC++6.0编译时出现fatal error C1083: Cannot open include file: 'conio.h': No such file or directory解决
- cannot open source input file "printf.h": No such file or directory
- error: #5: cannot open source input file "core_cm3.h": No such file or directory
- 运行编译后的程序报错 error while loading shared libraries: lib*.so: cannot open shared object file: No such file or directory
- error:#5:cannotopensourceinputfile"stm32f10x_lib.h":Nosuchfileordirectory
- 编译WINCE应用出现:Cannot open include file: 'ceconfig.h': No such file or directory
- 预编译头文件(precompiled header)及VC编译程序时Cannot open precompiled header file: 'Debug/.pch': No such file or directory
- C语言编译错误 fatal error C1083: Cannot open include file: 'stdio.h': No such file or directory
- caffe编译出现 "libcudart.so.8.0 cannot open shared object file: No such file or directory"的错去
- autoware-ssd:caffe 编译报错 libhdf5_hl.so.10: cannot open shared object file: No such file or directory
- VC编译时出现 cannot open file '.'.\Debug\Test1.sbr': No such file or directory 怎么关闭Browser Info
- 【Linux】【编译】libmpc.so.3: cannot open shared object file: No such file or directory
- 关于:fatal error C1083: Cannot open source file: 'D:\DVBmj\FileReveiverTV2\XMLDom.cpp': No such file or directory
- MFC编译错误之cannot open file '.\Debug\xxxDlg.sbr': No such file or directory