[odb-users] libodb-mysql: no rule to update
odb\mysql\details\(c|i|h)xx{options}
Feiyun Wang
feiyunw at yahoo.com
Thu May 31 11:04:21 EDT 2018
Hi,
I got some error when building libodb-mysql with build2 and VS2017:
````
D:\Program Files (x86)\Microsoft Visual Studio\2017\Community>set PATH=C:\build2\bin;%PATH%
D:\Program Files (x86)\Microsoft Visual Studio\2017\Community>cd /d d:\prj\odb\
d:\prj\odb>mkdir libodb-vs2017-release
d:\prj\odb>b config.cxx=cl config.cc.coptions=/O2 "configure(libodb/@libodb-vs2017-release/)"
...
d:\prj\odb>b libodb-vs2017-release/
...
d:\prj\odb>mkdir libmysqlclient-vs2017-release
d:\prj\odb>b config.cxx=cl config.cc.coptions="/O2 /wd4819" "configure(libmysqlclient/@libmysqlclient-vs2017-release/)"
...
d:\prj\odb>b libmysqlclient-vs2017-release/
...
d:\prj\odb>mkdir libodb-mysql-vs2017-release
d:\prj\odb>b config.cxx=cl config.cc.coptions=/O2 config.import.libmysqlclient=libmysqlclient-vs2017-release/ config.import.libodb=libodb-vs2017-release/ "configure(libodb-mysql/@libodb-mysql-vs2017-release/)"
mkdir -p libodb-mysql-vs2017-release\build\
save libodb-mysql-vs2017-release\build\config.build
mkdir -p libodb-mysql-vs2017-release\tests\build\
save libodb-mysql-vs2017-release\tests\build\config.build
d:\prj\odb>b libodb-mysql-vs2017-release/
error: no rule to update libodb-mysql-vs2017-release\odb\mysql\details\cxx{options}
info: re-run with --verbose 4 for more information
info: while applying rule cxx.compile to update libodb-mysql-vs2017-release\odb\mysql\details\obja{options}
info: while applying rule cxx.link to update libodb-mysql-vs2017-release\odb\mysql\liba{odb-mysql}
info: while applying rule bin.lib to update libodb-mysql-vs2017-release\odb\mysql\lib{odb-mysql}
info: while applying rule alias to update libodb-mysql-vs2017-release\odb\dir{mysql\}
info: while applying rule alias to update libodb-mysql-vs2017-release\dir{odb\}
info: while applying rule alias to update dir{libodb-mysql-vs2017-release\}
mkdir libodb-mysql-vs2017-release\fsdir{odb\}
mkdir libodb-mysql-vs2017-release\odb\fsdir{mysql\}
error: no rule to update libodb-mysql-vs2017-release\odb\mysql\details\ixx{options}
info: re-run with --verbose 4 for more information
info: while applying rule cxx.link to update libodb-mysql-vs2017-release\odb\mysql\liba{odb-mysql}
info: while applying rule bin.lib to update libodb-mysql-vs2017-release\odb\mysql\lib{odb-mysql}
info: while applying rule alias to update libodb-mysql-vs2017-release\odb\dir{mysql\}
info: while applying rule alias to update libodb-mysql-vs2017-release\dir{odb\}
info: while applying rule alias to update dir{libodb-mysql-vs2017-release\}
error: no rule to update libodb-mysql-vs2017-release\odb\mysql\details\hxx{options}
info: re-run with --verbose 4 for more information
info: while applying rule cxx.link to update libodb-mysql-vs2017-release\odb\mysql\liba{odb-mysql}
info: while applying rule bin.lib to update libodb-mysql-vs2017-release\odb\mysql\lib{odb-mysql}
info: while applying rule alias to update libodb-mysql-vs2017-release\odb\dir{mysql\}
info: while applying rule alias to update libodb-mysql-vs2017-release\dir{odb\}
info: while applying rule alias to update dir{libodb-mysql-vs2017-release\}
ver libodb-mysql\odb\mysql\version-build2.hxx.in
info: failed to update dir{libodb-mysql-vs2017-release\}
d:\prj\odb>b --verbose 4 libodb-mysql-vs2017-release/
...
cl -ID:\prj\odb\libodb-vs2017-release -ID:\prj\odb\libodb -DLIBODB_BUILD2 -DLIBODB_SHARED -ID:\prj\odb\libmysqlclient-vs2017-release -ID:\prj\odb\libmysqlclient -ID:\prj\odb\libodb-mysql-vs2017-release -ID:\prj\odb\libodb-mysql -DLIBODB_MYSQL_BUILD2 -DLIBODB_MYSQL_SHARED_BUILD /O2 /nologo /EHsc /MD /P /showIncludes /C /WX /Fi: D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\traits.dll.obj.ii /TP D:\prj\odb\libodb-mysql\odb\mysql\traits.cxx
trace: cxx::compile_rule::extract_headers: non-existent header 'odb/mysql/details/options.hxx'
trace: cxx::compile_rule::append_prefixes: overriding dependency prefix odb\
existing mapping to D:\prj\odb\libodb-mysql-vs2017-release\ priority 1
new mapping to D:\prj\odb\libodb-vs2017-release\ priority 0
trace: cxx::compile_rule::extract_headers: mapped as auto-generated D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\options.hxx
trace: version::in_rule::match: no manifest prerequisite for target D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\hxx{options.hxx}
trace: version::in_rule::match: no in file prerequisite for target D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\hxx{options.hxx}
trace: file_rule::match: no existing file for target D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\hxx{options.hxx}
error: no rule to update D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\hxx{options.hxx}
info: while extracting header dependencies from D:\prj\odb\libodb-mysql\odb\mysql\cxx{database.cxx}@D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\
info: while applying rule cxx.compile to update D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\objs{database.dll.obj}
info: while applying rule cxx.link to update D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\libs{odb-mysql.dll}
info: while applying rule bin.lib to update D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\lib{odb-mysql}
info: while applying rule alias to update D:\prj\odb\libodb-mysql-vs2017-release\odb\dir{mysql\}
info: while applying rule alias to update D:\prj\odb\libodb-mysql-vs2017-release\dir{odb\}
info: while applying rule alias to update D:\prj\odb\dir{libodb-mysql-vs2017-release\}
trace: version::in_rule::match: no manifest prerequisite for target D:\prj\odb\libodb-mysql\odb\mysql\details\build2\h{config.h}@D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\build2\
trace: version::in_rule::match: no in file prerequisite for target D:\prj\odb\libodb-mysql\odb\mysql\details\build2\h{config.h}@D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\build2\
cl -ID:\prj\odb\libodb-vs2017-release -ID:\prj\odb\libodb -DLIBODB_BUILD2 -DLIBODB_STATIC -ID:\prj\odb\libmysqlclient-vs2017-release -ID:\prj\odb\libmysqlclient -ID:\prj\odb\libodb-mysql-vs2017-release -ID:\prj\odb\libodb-mysql -DLIBODB_MYSQL_BUILD2 -DLIBODB_MYSQL_STATIC_BUILD /O2 /nologo /EHsc /MD /P /showIncludes /C /WX /Fi: D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\traits.lib.obj.ii /TP D:\prj\odb\libodb-mysql\odb\mysql\traits.cxx
trace: version::in_rule::match: no manifest prerequisite for target D:\prj\odb\libodb-mysql\odb\mysql\details\build2\h{config-vc.h}@D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\build2\
cl -ID:\prj\odb\libodb-vs2017-release -ID:\prj\odb\libodb -DLIBODB_BUILD2 -DLIBODB_STATIC -ID:\prj\odb\libmysqlclient-vs2017-release -ID:\prj\odb\libmysqlclient -ID:\prj\odb\libodb-mysql-vs2017-release -ID:\prj\odb\libodb-mysql -DLIBODB_MYSQL_BUILD2 -DLIBODB_MYSQL_STATIC_BUILD /O2 /nologo /EHsc /MD /P /showIncludes /C /WX /Fi: D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\transaction-impl.lib.obj.ii /TP D:\prj\odb\libodb-mysql\odb\mysql\transaction-impl.cxx
trace: version::in_rule::match: no in file prerequisite for target D:\prj\odb\libodb-mysql\odb\mysql\details\build2\h{config-vc.h}@D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\build2\
trace: version::in_rule::match: no manifest prerequisite for target D:\prj\odb\libodb-mysql\odb\mysql\cxx{transaction.cxx}@D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\
trace: version::in_rule::match: no manifest prerequisite for target D:\prj\odb\libodb-mysql\odb\mysql\details\build2\h{config-vc-stub.h}@D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\build2\
trace: version::in_rule::match: no in file prerequisite for target D:\prj\odb\libodb-mysql\odb\mysql\cxx{transaction.cxx}@D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\
trace: version::in_rule::match: no in file prerequisite for target D:\prj\odb\libodb-mysql\odb\mysql\details\build2\h{config-vc-stub.h}@D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\build2\
trace: version::in_rule::match: no manifest prerequisite for target D:\prj\odb\libodb-mysql\odb\mysql\details\hxx{config.hxx}@D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\
cl -ID:\prj\odb\libodb-vs2017-release -ID:\prj\odb\libodb -DLIBODB_BUILD2 -DLIBODB_STATIC -ID:\prj\odb\libmysqlclient-vs2017-release -ID:\prj\odb\libmysqlclient -ID:\prj\odb\libodb-mysql-vs2017-release -ID:\prj\odb\libodb-mysql -DLIBODB_MYSQL_BUILD2 -DLIBODB_MYSQL_STATIC_BUILD /O2 /nologo /EHsc /MD /P /showIncludes /C /WX /Fi: D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\transaction.lib.obj.ii /TP D:\prj\odb\libodb-mysql\odb\mysql\transaction.cxx
trace: version::in_rule::match: no manifest prerequisite for target D:\prj\odb\libodb-mysql\odb\mysql\details\build2\h{config-stub.h}@D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\build2\
trace: version::in_rule::match: no in file prerequisite for target D:\prj\odb\libodb-mysql\odb\mysql\details\hxx{config.hxx}@D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\
trace: version::in_rule::match: no in file prerequisite for target D:\prj\odb\libodb-mysql\odb\mysql\details\build2\h{config-stub.h}@D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\build2\
trace: version::in_rule::match: no manifest prerequisite for target D:\prj\odb\libodb-mysql\odb\mysql\details\hxx{conversion.hxx}@D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\
trace: search_existing_file: no existing file for prerequisite D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\:details\cxx{options.?}
trace: version::in_rule::match: no manifest prerequisite for target D:\prj\odb\libodb-mysql\odb\mysql\details\hxx{export.hxx}@D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\
trace: version::in_rule::match: no in file prerequisite for target D:\prj\odb\libodb-mysql\odb\mysql\details\hxx{conversion.hxx}@D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\
trace: version::in_rule::match: no manifest prerequisite for target D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\cxx{options.?}
trace: version::in_rule::match: no in file prerequisite for target D:\prj\odb\libodb-mysql\odb\mysql\details\hxx{export.hxx}@D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\
trace: version::in_rule::match: no manifest prerequisite for target D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\ixx{options.?}
trace: version::in_rule::match: no in file prerequisite for target D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\cxx{options.?}
trace: version::in_rule::match: no in file prerequisite for target D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\ixx{options.?}
trace: file_rule::match: no existing file for target D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\cxx{options.cxx}
trace: file_rule::match: no existing file for target D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\ixx{options.ixx}
error: no rule to update D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\cxx{options.cxx}
info: while applying rule cxx.compile to update D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\obja{options.lib.obj}
info: while applying rule cxx.link to update D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\liba{odb-mysql.lib}
info: while applying rule bin.lib to update D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\lib{odb-mysql}
info: while applying rule alias to update D:\prj\odb\libodb-mysql-vs2017-release\odb\dir{mysql\}
info: while applying rule alias to update D:\prj\odb\libodb-mysql-vs2017-release\dir{odb\}
info: while applying rule alias to update D:\prj\odb\dir{libodb-mysql-vs2017-release\}
error: no rule to update D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\ixx{options.ixx}
info: while applying rule cxx.link to update D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\liba{odb-mysql.lib}
info: while applying rule bin.lib to update D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\lib{odb-mysql}
info: while applying rule alias to update D:\prj\odb\libodb-mysql-vs2017-release\odb\dir{mysql\}
info: while applying rule alias to update D:\prj\odb\libodb-mysql-vs2017-release\dir{odb\}
info: while applying rule alias to update D:\prj\odb\dir{libodb-mysql-vs2017-release\}
cl -ID:\prj\odb\libodb-vs2017-release -ID:\prj\odb\libodb -DLIBODB_BUILD2 -DLIBODB_SHARED -ID:\prj\odb\libmysqlclient-vs2017-release -ID:\prj\odb\libmysqlclient -ID:\prj\odb\libodb-mysql-vs2017-release -ID:\prj\odb\libodb-mysql -DLIBODB_MYSQL_BUILD2 -DLIBODB_MYSQL_SHARED_BUILD /O2 /nologo /EHsc /MD /P /showIncludes /C /WX /Fi: D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\transaction.dll.obj.ii /TP D:\prj\odb\libodb-mysql\odb\mysql\transaction.cxx
trace: cxx::compile_rule::extract_headers: non-existent header 'odb/mysql/details/options.hxx'
trace: cxx::compile_rule::append_prefixes: overriding dependency prefix odb\
existing mapping to D:\prj\odb\libodb-mysql-vs2017-release\ priority 1
new mapping to D:\prj\odb\libodb-vs2017-release\ priority 0
trace: cxx::compile_rule::extract_headers: mapped as auto-generated D:\prj\odb\libodb-mysql-vs2017-release\odb\mysql\details\options.hxx
info: failed to update D:\prj\odb\dir{libodb-mysql-vs2017-release\}
d:\prj\odb>
````
My test versions are:
- libodb-mysql
Revision: dcd4b078c8da2ab68cb8fdadac52cae4499dd502
Author: Boris Kolpackov <boris at codesynthesis.com>
Date: 2018/5/29 21:18:38
Message:
Adjust external dependencies to use ^-constraint
- libodb
Revision: 0930b3a28774175e3a984b6d77e3f7587f2844af
Author: Boris Kolpackov <boris at codesynthesis.com>
Date: 2018/5/29 20:46:09
Message:
Bump version to 2.5.0-b.7
- libmysqlclient
Revision: a3852af60947ee6073818b70783f0b82b4813001
Author: Boris Kolpackov <boris at codesynthesis.com>
Date: 2018/5/31 15:10:07
Message:
Bump version to 5.7.20+1, master is open for business
Sincerely,
Feiyun Wang
More information about the odb-users
mailing list