Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[v6.10] Python, Gurobi, GLPK and SCIP: Linear solver not recognized #1181

Closed
tsamawi opened this issue Apr 10, 2019 · 19 comments
Closed

[v6.10] Python, Gurobi, GLPK and SCIP: Linear solver not recognized #1181

tsamawi opened this issue Apr 10, 2019 · 19 comments
Assignees
Labels
Bug Build: Makefile Makefile based build issue Lang: C++ Native implementation issue OS: Windows Windows OS Solver: CPLEX CPLEX Solver related issue Solver: Gurobi GUROBI Solver related issue
Milestone

Comments

@tsamawi
Copy link

tsamawi commented Apr 10, 2019

Hello,

I am trying to use the Python interface to Google OR Tools. I was able to get CPLEX to work, but Gurobi fails with the following error:

WARNING: Logging before InitGoogleLogging() is written to STDERR
F0410 10:53:33.057327 94268 linear_solver.cc:393] Linear solver not recognized.
*** Check failure stack trace: ***

I've tried building Google OR-Tools Tag v6.10 and branch v6.10.x with Gurobi. For both installations, I added the following lines to Makefile.local :

WINDOWS_GUROBI_DIR=C:\dev\linear_solvers\Gurobi
GUROBI_LIB_VERSION=81

The Gurobi directory above contains 'win64', and both versions of Google OR Tools are able to build Gurobi without any errors.

I have also edited my user and system variables to include:

GUROBI_HOME: C:\dev\linear_solvers\Gurobi\win64
GRB_LICENSE_FILE: C:\Users\tsamawi\gurobi.lic

The local and system Path also includes GUROBI_HOME.

My understanding of this error is that it usually occurs when there is a problem with the installation of the IP engine itself. For example, when I installed CPLEX's free trial, and ran an example which went over the allowable limit of 1000 variables and 1000 constraints I saw this error. When I ran an example within the bounds of the free trial, it ran just fine.

So I checked my installation of Gurobi. I made sure to install gurobipy and I was even able to run this python example just fine.

I built OR Tools 6.1 and 6.10.x multiple times, making sure to run tools\make clean_third_party and tool\make uninstall_python between builds but I get the same error referenced above.

My environment is as follows:

  • Google OR Tools Python Wrapper
  • Windows 10.0.16299 Build 16299
  • Python 3.6.7
  • Gurobi 8.1.1

Have you run into similar issues with Gurobi @lperron? If not, are there more detailed log files I can access?

Thank you,
Tameem

@Mizux
Copy link
Collaborator

Mizux commented Apr 11, 2019

seems to come from:

LOG(FATAL) << "Linear solver not recognized.";

because somehow USE_GUROBI was not defined during the compilation...

ifdef WINDOWS_GUROBI_DIR
ifeq ($(PTRLENGTH),64)
GUROBI_INC = /I"$(WINDOWS_GUROBI_DIR)\win64\include" /DUSE_GUROBI
GUROBI_SWIG = -I"$(WINDOWS_GUROBI_DIR)/win64/include" -DUSE_GUROBI
DYNAMIC_GUROBI_LNK = "$(WINDOWS_GUROBI_DIR)\win64\lib\gurobi$(GUROBI_LIB_VERSION).lib"
STATIC_GUROBI_LNK = $(DYNAMIC_GUROBI_LNK)
else
GUROBI_INC = /I"$(WINDOWS_GUROBI_DIR)\win32\include" /DUSE_GUROBI
GUROBI_SWIG = -I"$(WINDOWS_GUROBI_DIR)/win32/include" -DUSE_GUROBI
DYNAMIC_GUROBI_LNK = "$(WINDOWS_GUROBI_DIR)\\win32\lib\gurobi$(GUROBI_LIB_VERSION).lib"
STATIC_GUROBI_LNK = $(DYNAMIC_GUROBI_LNK)
endif
endif

DEPENDENCIES_INC = /I$(INC_DIR) /I$(GEN_DIR) \
$(ZLIB_INC) $(GFLAGS_INC) $(GLOG_INC) $(PROTOBUF_INC) \
$(COIN_INC) \
/DUSE_GLOP /DUSE_BOP \
$(GLPK_INC) $(SCIP_INC) $(GUROBI_INC) $(CPLEX_INC)
CFLAGS = -nologo $(SYSCFLAGS) /D__WIN32__ /DPSAPI_VERSION=1 \
/DNOMINMAX /DWIN32_LEAN_AND_MEAN=1 /D_CRT_SECURE_NO_WARNINGS \
$(DEBUG) $(DEPENDENCIES_INC)

objs/linear_solver/linear_solver.$O: \
ortools/linear_solver/linear_solver.cc \
ortools/linear_solver/linear_solver.h ortools/base/commandlineflags.h \
ortools/base/integral_types.h ortools/base/logging.h \
ortools/base/macros.h ortools/base/status.h ortools/base/timer.h \
ortools/base/basictypes.h ortools/gen/ortools/glop/parameters.pb.h \
ortools/linear_solver/linear_expr.h \
ortools/gen/ortools/linear_solver/linear_solver.pb.h \
ortools/gen/ortools/util/optional_boolean.pb.h \
ortools/port/proto_utils.h ortools/port/file.h \
ortools/base/accurate_sum.h ortools/base/canonical_errors.h \
ortools/base/map_util.h ortools/base/stl_util.h \
ortools/linear_solver/model_exporter.h ortools/base/hash.h \
ortools/linear_solver/model_validator.h ortools/util/fp_utils.h | $(OBJ_DIR)/linear_solver
$(CCC) $(CFLAGS) -c $(SRC_DIR)$Sortools$Slinear_solver$Slinear_solver.cc $(OBJ_OUT)$(OBJ_DIR)$Slinear_solver$Slinear_solver.$O

this is use when building the lib so you must use make clean_cc / make cc to take it into account, cleaning third_party or python should not have impact IMHO (ed not 100% for python since we pass the flag to swig.exe...)

  • Can you try to build against the last stable version v7.0 ?

  • You can also try to run make detect_cc and give us the output (It must have USE_GUROBI has compilation define in CFLAGS)

currently investigating...

@Mizux Mizux changed the title Python, Gurobi: Linear solver not recognized [v6.10] Python, Gurobi: Linear solver not recognized Apr 11, 2019
@Mizux Mizux added Bug Build: Makefile Makefile based build issue Lang: C++ Native implementation issue OS: Windows Windows OS Solver: Gurobi GUROBI Solver related issue labels Apr 11, 2019
@Mizux Mizux added this to To do in User Question via automation Apr 11, 2019
@tsamawi
Copy link
Author

tsamawi commented Apr 12, 2019

So just as an FYI, I'm trying to build Google OR Tools with all linear solvers it supports. So far I've run into the following errors when building from stable:

Building on X64 Native Tools Command Prompt for VS 2017.
tools\make third_party runs through just fine.
tools\make python fails in the following places:

CPLEX Issues

STATIC_CPLEX_LNK = "$(WINDOWS_CPLEX_DIR)\\cplex.lib"
CPLEX has a version number similar to Gurobi. Makefile.local might be edited to include a variable CPLEX_LIB_VERSION. I manually changed it to STATIC_CPLEX_LNK = "$(WINDOWS_CPLEX_DIR)\\cplex1280.lib" for now.

GLPK Issues

DYNAMIC_GLPK_LNK = "$(WINDOWS_GLPK_DIR)\\lib\\glpk.lib"
STATIC_GLPK_LNK = "$(WINDOWS_GLPK_DIR)\\lib\\glpk.lib"
I changed glpk.lib to glpk_4_65.lib on lines 114 and 115.

extern "C" {
#include "glpk.h"
}
I get an error because glpk.h does not exist in the directory ortools/linear_solver. I manually copied this over from my glpk installation. It was located under glpk-4.65\src\glpk.h.

GLPK_INC = /I"$(WINDOWS_GLPK_DIR)\\include" /DUSE_GLPK
GLPK_SWIG = -I"$(WINDOWS_GLPK_DIR)/include" -DUSE_GLPK
My installation of GLPK does not contain a lib directory. I downloaded GLPK for Windows winglpk. This is essentially an already built GLPK.

SCIP Issues

.\\ortools\\linear_solver\\scip_interface.cc(28): fatal error C1083: Cannot open include file: 'ortools/base/status_macros.h': No such file or directory

#include "ortools/base/status_macros.h"
I copied status_macros.h from or-tools\dependencies\sources\protobuf-3.6.1\src\google\protobuf\stubs to or-tools\ortools\base.

.\ortools/base/status_macros.h(38): fatal error C1083: Cannot open include file: 'google/protobuf/stubs/statusor.h': No such file or directory
Copied or-tools\dependencies\install\include\google to or-tools\ortools\base and it worked.

Until finally, I can do no more...
It crashes as seen below:

md lib
lib \
 /OUT:lib\\ortools.lib \
 objs/base/bitmap.obj objs/base/file.obj objs/base/random.obj objs/base/recordio.obj objs/base/sysinfo.obj objs/base/threadpool.obj objs/base/timer.obj \
 objs/port/file_nonport.obj objs/port/sysinfo_nonport.obj \
 objs/util/bitset.obj objs/util/cached_log.obj objs/util/file_util.obj objs/util/fp_utils.obj objs/util/graph_export.obj objs/util/piecewise_linear_function.obj objs/util/proto_tools.obj objs/util/range_query_function.obj objs/util/rational_approximation.obj objs/util/sigint.obj objs/util/sorted_interval_list.obj objs/util/stats.obj objs/util/time_limit.obj objs/util/optional_boolean.pb.obj \
 objs/data/jobshop_scheduling_parser.obj objs/data/rcpsp_parser.obj objs/data/set_covering_data.obj objs/data/set_covering_parser.obj objs/data/jobshop_scheduling.pb.obj objs/data/rcpsp.pb.obj \
 objs/lp_data/lp_data.obj objs/lp_data/lp_data_utils.obj objs/lp_data/lp_decomposer.obj objs/lp_data/lp_print_utils.obj objs/lp_data/lp_types.obj objs/lp_data/lp_utils.obj objs/lp_data/matrix_scaler.obj objs/lp_data/matrix_utils.obj objs/lp_data/model_reader.obj objs/lp_data/mps_reader.obj objs/lp_data/proto_utils.obj objs/lp_data/sparse.obj objs/lp_data/sparse_column.obj \
 objs/glop/basis_representation.obj objs/glop/dual_edge_norms.obj objs/glop/entering_variable.obj objs/glop/initial_basis.obj objs/glop/lp_solver.obj objs/glop/lu_factorization.obj objs/glop/markowitz.obj objs/glop/preprocessor.obj objs/glop/primal_edge_norms.obj objs/glop/reduced_costs.obj objs/glop/revised_simplex.obj objs/glop/status.obj objs/glop/update_row.obj objs/glop/variable_values.obj objs/glop/variables_info.obj objs/glop/parameters.pb.obj \
 objs/graph/assignment.obj objs/graph/astar.obj objs/graph/bellman_ford.obj objs/graph/cliques.obj objs/graph/connected_components.obj objs/graph/dijkstra.obj objs/graph/linear_assignment.obj objs/graph/max_flow.obj objs/graph/min_cost_flow.obj objs/graph/shortestpaths.obj objs/graph/util.obj objs/graph/flow_problem.pb.obj \
 objs/algorithms/dynamic_partition.obj objs/algorithms/dynamic_permutation.obj objs/algorithms/find_graph_symmetries.obj objs/algorithms/hungarian.obj objs/algorithms/knapsack_solver.obj objs/algorithms/knapsack_solver_for_cuts.obj objs/algorithms/sparse_permutation.obj \
 objs/sat/all_different.obj objs/sat/boolean_problem.obj objs/sat/circuit.obj objs/sat/clause.obj objs/sat/cp_constraints.obj objs/sat/cp_model.obj objs/sat/cp_model_checker.obj objs/sat/cp_model_expand.obj objs/sat/cp_model_lns.obj objs/sat/cp_model_loader.obj objs/sat/cp_model_objective.obj objs/sat/cp_model_presolve.obj objs/sat/cp_model_search.obj objs/sat/cp_model_solver.obj objs/sat/cp_model_symmetries.obj objs/sat/cp_model_utils.obj objs/sat/cumulative.obj objs/sat/cuts.obj objs/sat/diffn.obj objs/sat/disjunctive.obj objs/sat/drat_checker.obj objs/sat/drat_proof_handler.obj objs/sat/drat_writer.obj objs/sat/encoding.obj objs/sat/integer.obj objs/sat/integer_expr.obj objs/sat/integer_search.obj objs/sat/intervals.obj objs/sat/linear_constraint.obj objs/sat/linear_constraint_manager.obj objs/sat/linear_programming_constraint.obj objs/sat/linear_relaxation.obj objs/sat/lp_utils.obj objs/sat/optimization.obj objs/sat/overload_checker.obj objs/sat/pb_constraint.obj objs/sat/precedences.obj objs/sat/probing.obj objs/sat/pseudo_costs.obj objs/sat/restart.obj objs/sat/sat_decision.obj objs/sat/sat_solver.obj objs/sat/simplification.obj objs/sat/symmetry.obj objs/sat/synchronization.obj objs/sat/table.obj objs/sat/theta_tree.obj objs/sat/timetable.obj objs/sat/timetable_edgefinding.obj objs/sat/util.obj objs/sat/boolean_problem.pb.obj objs/sat/cp_model.pb.obj objs/sat/sat_parameters.pb.obj \
 objs/bop/bop_base.obj objs/bop/bop_fs.obj objs/bop/bop_lns.obj objs/bop/bop_ls.obj objs/bop/bop_portfolio.obj objs/bop/bop_solution.obj objs/bop/bop_solver.obj objs/bop/bop_util.obj objs/bop/complete_optimizer.obj objs/bop/integral_solver.obj objs/bop/bop_parameters.pb.obj \
 objs/linear_solver/bop_interface.obj objs/linear_solver/cbc_interface.obj objs/linear_solver/clp_interface.obj objs/linear_solver/cplex_interface.obj objs/linear_solver/glop_interface.obj objs/linear_solver/glop_utils.obj objs/linear_solver/glpk_interface.obj objs/linear_solver/gurobi_interface.obj objs/linear_solver/linear_expr.obj objs/linear_solver/linear_solver.obj objs/linear_solver/model_exporter.obj objs/linear_solver/model_validator.obj objs/linear_solver/scip_interface.obj objs/linear_solver/linear_solver.pb.obj \
 objs/constraint_solver/alldiff_cst.obj objs/constraint_solver/assignment.obj objs/constraint_solver/constraint_solver.obj objs/constraint_solver/constraints.obj objs/constraint_solver/count_cst.obj objs/constraint_solver/default_search.obj objs/constraint_solver/demon_profiler.obj objs/constraint_solver/deviation.obj objs/constraint_solver/diffn.obj objs/constraint_solver/element.obj objs/constraint_solver/expr_array.obj objs/constraint_solver/expr_cst.obj objs/constraint_solver/expressions.obj objs/constraint_solver/graph_constraints.obj objs/constraint_solver/interval.obj objs/constraint_solver/local_search.obj objs/constraint_solver/model_cache.obj objs/constraint_solver/pack.obj objs/constraint_solver/range_cst.obj objs/constraint_solver/resource.obj objs/constraint_solver/routing.obj objs/constraint_solver/routing_flags.obj objs/constraint_solver/routing_flow.obj objs/constraint_solver/routing_index_manager.obj objs/constraint_solver/routing_lp_scheduling.obj objs/constraint_solver/routing_neighborhoods.obj objs/constraint_solver/routing_parameters.obj objs/constraint_solver/routing_search.obj objs/constraint_solver/sched_constraints.obj objs/constraint_solver/sched_expr.obj objs/constraint_solver/sched_search.obj objs/constraint_solver/search.obj objs/constraint_solver/table.obj objs/constraint_solver/timetabling.obj objs/constraint_solver/trace.obj objs/constraint_solver/utilities.obj objs/constraint_solver/visitor.obj objs/constraint_solver/assignment.pb.obj objs/constraint_solver/demon_profiler.pb.obj objs/constraint_solver/routing_enums.pb.obj objs/constraint_solver/routing_parameters.pb.obj objs/constraint_solver/search_limit.pb.obj objs/constraint_solver/solver_parameters.pb.obj \
 psapi.lib ws2_32.lib shlwapi.lib "C:\dev\linear_solvers\glpk_4.65\w64\\glpk_4_65.lib" "C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\lib\\scip.lib" "C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\lib\\soplex.lib" /ignore:4006 "C:\dev\linear_solvers\Gurobi\win64\lib\gurobi81.lib" "C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex\\cplex1280.lib" "dependencies\\install\lib\zlib.lib" "dependencies\\install\lib\gflags_static.lib" "dependencies\\install\lib\glog.lib" "dependencies\\install\lib\libprotobuf.lib" "dependencies\\install\lib\absl_*.lib" "dependencies\\install\lib\coin\libCbcSolver.lib" "dependencies\\install\lib\coin\libCbc.lib" "dependencies\\install\lib\coin\libCgl.lib" "dependencies\\install\lib\coin\libClp.lib" "dependencies\\install\lib\coin\libOsiClp.lib" "dependencies\\install\lib\coin\libOsi.lib" "dependencies\\install\lib\coin\libCoinUtils.lib" \

Microsoft (R) Library Manager Version 14.16.27027.1
Copyright (C) Microsoft Corporation.  All rights reserved.

ws2_32.lib(WS2_32.dll) : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library
shlwapi.lib(SHLWAPI.dll) : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library
glpk_4_65.lib(glpk_4_65.dll) : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library
scip.lib(scip.dll) : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library
gurobi81.lib(gurobi81.dll) : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library
cplex1280.lib(cplex1280.dll) : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library
copy C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\bin\\scip.dll bin
        1 file(s) copied.
link /DLL /LTCG /debug \
  \
 /OUT:lib\\_pywrapknapsack_solver.dll \
 objs\\swig\\knapsack_solver_python_wrap.obj \
  lib\\ortools.lib \
 psapi.lib ws2_32.lib shlwapi.lib \
 "C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\\libs\\python36.lib" \

Microsoft (R) Incremental Linker Version 14.16.27027.1
Copyright (C) Microsoft Corporation.  All rights reserved.

   Creating library lib\\_pywrapknapsack_solver.lib and object lib\\_pywrapknapsack_solver.exp
ortools.lib(linear_solver.obj) : error LNK2001: unresolved external symbol "class operations_research::MPSolverInterface * __cdecl operations_research::BuildSCIPInterface(class operations_research::MPSolver * const)" (?BuildSCIPInterface@operations_research@@YAPEAVMPSolverInterface@1@QEAVMPSolver@1@@Z)
lib\\_pywrapknapsack_solver.dll : fatal error LNK1120: 1 unresolved externals
tools\make: *** [lib/_pywrapknapsack_solver.dll] Error 1120

Output of make detect_cc

Relevant info for the C++ build:
PROTOC = "dependencies/install\\bin\\protoc.exe"
CCC = cl /EHsc /MD /nologo
CFLAGS = -nologo  /D__WIN32__ /DPSAPI_VERSION=1 /DNOMINMAX /DWIN32_LEAN_AND_MEAN=1 /D_CRT_SECURE_NO_WARNINGS /O2 -DNDEBUG /I. /Iortools/gen /I"dependencies\\install\\include" /I"dependencies\\install\\include" /DGFLAGS_DLL_DECL= /DGFLAGS_DLL_DECLARE_FLAG= /DGFLAGS_DLL_DEFINE_FLAG= /I"dependencies\\install\\include" /DGOOGLE_GLOG_DLL_DECL= /I"dependencies\\install\\include" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CLP /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CBC /DUSE_GLOP /DUSE_BOP /I"C:\dev\linear_solvers\glpk_4.65\w64\\include" /DUSE_GLPK /I"C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\include" /DUSE_SCIP /I"C:\dev\linear_solvers\Gurobi\win64\include" /DUSE_GUROBI /I"C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex\\include" /DUSE_CPLEX
LDFLAGS =
LINK_CMD = lib
DEPENDENCIES_LNK = psapi.lib ws2_32.lib shlwapi.lib "C:\dev\linear_solvers\glpk_4.65\w64\\glpk_4_65.lib" "C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\lib\\scip.lib" "C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\lib\\soplex.lib" /ignore:4006 "C:\dev\linear_solvers\Gurobi\win64\lib\gurobi81.lib" "C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex\\cplex1280.lib" "dependencies\\install\lib\zlib.lib" "dependencies\\install\lib\gflags_static.lib" "dependencies\\install\lib\glog.lib" "dependencies\\install\lib\libprotobuf.lib" "dependencies\\install\lib\absl_*.lib" "dependencies\\install\lib\coin\libCbcSolver.lib" "dependencies\\install\lib\coin\libCbc.lib" "dependencies\\install\lib\coin\libCgl.lib" "dependencies\\install\lib\coin\libClp.lib" "dependencies\\install\lib\coin\libOsiClp.lib" "dependencies\\install\lib\coin\libOsi.lib" "dependencies\\install\lib\coin\libCoinUtils.lib"
SRC_DIR = .
GEN_DIR = ortools/gen
CC_EX_DIR = examples/cpp
OBJ_DIR = objs
LIB_DIR = lib
BIN_DIR = bin
prefix = C:\\Program Files\\or-tools
OR_TOOLS_LNK =  lib\\ortools.lib
OR_TOOLS_LDFLAGS =
OR_TOOLS_LIBS = lib/ortools.lib

@Mizux
Copy link
Collaborator

Mizux commented Apr 15, 2019

Thanks for the feedback !

I would add:
CPLEX seems to bump to v12.9.0
see: https://www.ibm.com/support/knowledgecenter/SSSA5P_12.9.0/ilog.odms.studio.help/Optimization_Studio/topics/COS_home.html

GLPK: if winglpk is the way to get GLPK on windows so we need to change our path accordingly -> Thanks for the hint !

SCIP currently tracked in #1188

@tsamawi
Copy link
Author

tsamawi commented Apr 18, 2019

Thank you for your help @Mizux!

So I went back to version 6.10.x, and did a clean build. I'm still unable to run Gurobi. I'm actually trying to get other solvers working as well (SCIP and GLPK) and they're also failing with the error:

WARNING: Logging before InitGoogleLogging() is written to STDERR
F0410 10:53:33.057327 94268 linear_solver.cc:393] Linear solver not recognized.
*** Check failure stack trace: ***

I've posted the output of tools\make python, tools\make install_python and tools\make detect_cc below. I've already run tools\make third_party. Any help would be greatly appreciated.

tools\make python

c:\dev\or-tools-6.10X\or-tools>tools\make python
lib \
 /OUT:lib\\ortools.lib \
 objs/base/bitmap.obj objs/base/file.obj objs/base/random.obj objs/base/recordio.obj objs/base/sysinfo.obj objs/base/threadpool.obj objs/base/timer.obj \
 objs/port/file_nonport.obj objs/port/sysinfo_nonport.obj \
 objs/util/bitset.obj objs/util/cached_log.obj objs/util/file_util.obj objs/util/fp_utils.obj objs/util/graph_export.obj objs/util/piecewise_linear_function.obj objs/util/proto_tools.obj objs/util/range_query_function.obj objs/util/rational_approximation.obj objs/util/sigint.obj objs/util/sorted_interval_list.obj objs/util/stats.obj objs/util/time_limit.obj objs/util/optional_boolean.pb.obj \
 objs/data/jobshop_scheduling_parser.obj objs/data/rcpsp_parser.obj objs/data/set_covering_data.obj objs/data/set_covering_parser.obj objs/data/jobshop_scheduling.pb.obj objs/data/rcpsp.pb.obj \
 objs/lp_data/lp_data.obj objs/lp_data/lp_data_utils.obj objs/lp_data/lp_decomposer.obj objs/lp_data/lp_print_utils.obj objs/lp_data/lp_types.obj objs/lp_data/lp_utils.obj objs/lp_data/matrix_scaler.obj objs/lp_data/matrix_utils.obj objs/lp_data/model_reader.obj objs/lp_data/mps_reader.obj objs/lp_data/proto_utils.obj objs/lp_data/sparse.obj objs/lp_data/sparse_column.obj \
 objs/glop/basis_representation.obj objs/glop/dual_edge_norms.obj objs/glop/entering_variable.obj objs/glop/initial_basis.obj objs/glop/lp_solver.obj objs/glop/lu_factorization.obj objs/glop/markowitz.obj objs/glop/preprocessor.obj objs/glop/primal_edge_norms.obj objs/glop/reduced_costs.obj objs/glop/revised_simplex.obj objs/glop/status.obj objs/glop/update_row.obj objs/glop/variable_values.obj objs/glop/variables_info.obj objs/glop/parameters.pb.obj \
 objs/graph/assignment.obj objs/graph/astar.obj objs/graph/bellman_ford.obj objs/graph/cliques.obj objs/graph/connected_components.obj objs/graph/dijkstra.obj objs/graph/linear_assignment.obj objs/graph/max_flow.obj objs/graph/min_cost_flow.obj objs/graph/shortestpaths.obj objs/graph/util.obj objs/graph/flow_problem.pb.obj \
 objs/algorithms/dynamic_partition.obj objs/algorithms/dynamic_permutation.obj objs/algorithms/find_graph_symmetries.obj objs/algorithms/hungarian.obj objs/algorithms/knapsack_solver.obj objs/algorithms/knapsack_solver_for_cuts.obj objs/algorithms/sparse_permutation.obj \
 objs/sat/all_different.obj objs/sat/boolean_problem.obj objs/sat/circuit.obj objs/sat/clause.obj objs/sat/cp_constraints.obj objs/sat/cp_model.obj objs/sat/cp_model_checker.obj objs/sat/cp_model_expand.obj objs/sat/cp_model_lns.obj objs/sat/cp_model_loader.obj objs/sat/cp_model_objective.obj objs/sat/cp_model_presolve.obj objs/sat/cp_model_search.obj objs/sat/cp_model_solver.obj objs/sat/cp_model_symmetries.obj objs/sat/cp_model_utils.obj objs/sat/cumulative.obj objs/sat/cuts.obj objs/sat/diffn.obj objs/sat/disjunctive.obj objs/sat/drat_checker.obj objs/sat/drat_proof_handler.obj objs/sat/drat_writer.obj objs/sat/encoding.obj objs/sat/integer.obj objs/sat/integer_expr.obj objs/sat/integer_search.obj objs/sat/intervals.obj objs/sat/linear_constraint.obj objs/sat/linear_constraint_manager.obj objs/sat/linear_programming_constraint.obj objs/sat/linear_relaxation.obj objs/sat/lp_utils.obj objs/sat/optimization.obj objs/sat/overload_checker.obj objs/sat/pb_constraint.obj objs/sat/precedences.obj objs/sat/probing.obj objs/sat/pseudo_costs.obj objs/sat/restart.obj objs/sat/sat_decision.obj objs/sat/sat_solver.obj objs/sat/simplification.obj objs/sat/symmetry.obj objs/sat/synchronization.obj objs/sat/table.obj objs/sat/theta_tree.obj objs/sat/timetable.obj objs/sat/timetable_edgefinding.obj objs/sat/util.obj objs/sat/boolean_problem.pb.obj objs/sat/cp_model.pb.obj objs/sat/sat_parameters.pb.obj \
 objs/bop/bop_base.obj objs/bop/bop_fs.obj objs/bop/bop_lns.obj objs/bop/bop_ls.obj objs/bop/bop_portfolio.obj objs/bop/bop_solution.obj objs/bop/bop_solver.obj objs/bop/bop_util.obj objs/bop/complete_optimizer.obj objs/bop/integral_solver.obj objs/bop/bop_parameters.pb.obj \
 objs/linear_solver/bop_interface.obj objs/linear_solver/cbc_interface.obj objs/linear_solver/clp_interface.obj objs/linear_solver/cplex_interface.obj objs/linear_solver/glop_interface.obj objs/linear_solver/glop_utils.obj objs/linear_solver/glpk_interface.obj objs/linear_solver/gurobi_interface.obj objs/linear_solver/linear_expr.obj objs/linear_solver/linear_solver.obj objs/linear_solver/model_exporter.obj objs/linear_solver/model_validator.obj objs/linear_solver/scip_interface.obj objs/linear_solver/linear_solver.pb.obj \
 objs/constraint_solver/alldiff_cst.obj objs/constraint_solver/assignment.obj objs/constraint_solver/constraint_solver.obj objs/constraint_solver/constraints.obj objs/constraint_solver/count_cst.obj objs/constraint_solver/default_search.obj objs/constraint_solver/demon_profiler.obj objs/constraint_solver/deviation.obj objs/constraint_solver/diffn.obj objs/constraint_solver/element.obj objs/constraint_solver/expr_array.obj objs/constraint_solver/expr_cst.obj objs/constraint_solver/expressions.obj objs/constraint_solver/graph_constraints.obj objs/constraint_solver/interval.obj objs/constraint_solver/local_search.obj objs/constraint_solver/model_cache.obj objs/constraint_solver/pack.obj objs/constraint_solver/range_cst.obj objs/constraint_solver/resource.obj objs/constraint_solver/routing.obj objs/constraint_solver/routing_flags.obj objs/constraint_solver/routing_flow.obj objs/constraint_solver/routing_index_manager.obj objs/constraint_solver/routing_lp_scheduling.obj objs/constraint_solver/routing_neighborhoods.obj objs/constraint_solver/routing_parameters.obj objs/constraint_solver/routing_search.obj objs/constraint_solver/sched_constraints.obj objs/constraint_solver/sched_expr.obj objs/constraint_solver/sched_search.obj objs/constraint_solver/search.obj objs/constraint_solver/table.obj objs/constraint_solver/timetabling.obj objs/constraint_solver/trace.obj objs/constraint_solver/utilities.obj objs/constraint_solver/visitor.obj objs/constraint_solver/assignment.pb.obj objs/constraint_solver/demon_profiler.pb.obj objs/constraint_solver/routing_enums.pb.obj objs/constraint_solver/routing_parameters.pb.obj objs/constraint_solver/search_limit.pb.obj objs/constraint_solver/solver_parameters.pb.obj \
 psapi.lib ws2_32.lib shlwapi.lib "C:\dev\linear_solvers\glpk_4.65\w64\\glpk_4_65.lib" "C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\lib\\scip.lib" "C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\lib\\soplex.lib" /ignore:4006 "C:\dev\linear_solvers\Gurobi\win64\lib\gurobi81.lib" "C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex\\cplex1280.lib" "dependencies\\install\lib\zlib.lib" "dependencies\\install\lib\gflags_static.lib" "dependencies\\install\lib\glog.lib" "dependencies\\install\lib\libprotobuf.lib" "dependencies\\install\lib\absl_*.lib" "dependencies\\install\lib\coin\libCbcSolver.lib" "dependencies\\install\lib\coin\libCbc.lib" "dependencies\\install\lib\coin\libCgl.lib" "dependencies\\install\lib\coin\libClp.lib" "dependencies\\install\lib\coin\libOsiClp.lib" "dependencies\\install\lib\coin\libOsi.lib" "dependencies\\install\lib\coin\libCoinUtils.lib" \

Microsoft (R) Library Manager Version 14.16.27027.1
Copyright (C) Microsoft Corporation.  All rights reserved.

ws2_32.lib(WS2_32.dll) : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library
shlwapi.lib(SHLWAPI.dll) : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library
glpk_4_65.lib(glpk_4_65.dll) : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library
scip.lib(scip.dll) : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library
gurobi81.lib(gurobi81.dll) : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library
cplex1280.lib(cplex1280.dll) : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library
cplex_interface.obj : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library
copy C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\bin\\scip.dll bin
        1 file(s) copied.
link /DLL /LTCG /debug \
  \
 /OUT:lib\\_pywrapknapsack_solver.dll \
 objs\\swig\\knapsack_solver_python_wrap.obj \
  lib\\ortools.lib \
 psapi.lib ws2_32.lib shlwapi.lib \
 "C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\\libs\\python36.lib" \

Microsoft (R) Incremental Linker Version 14.16.27027.1
Copyright (C) Microsoft Corporation.  All rights reserved.

   Creating library lib\\_pywrapknapsack_solver.lib and object lib\\_pywrapknapsack_solver.exp
LINK : /LTCG specified but no code generation required; remove /LTCG from the link command line to improve linker performance
copy lib\\_pywrapknapsack_solver.dll ortools\\gen\\ortools\\algorithms\\_pywrapknapsack_solver.pyd
        1 file(s) copied.
"dependencies\\install\\swigwin-3.0.12\\swig.exe" -I"dependencies/install/include" -I"dependencies/install/include" -DGFLAGS_DLL_DECL= -DGFLAGS_DLL_DECLARE_FLAG= -DGFLAGS_DLL_DEFINE_FLAG= -I"dependencies/install/include" -DGOOGLE_GLOG_DLL_DECL= -I"dependencies/install/include" -I"dependencies/install/include" -I"dependencies/install/include/coin" -DUSE_CLP -I"dependencies/install/include" -I"dependencies/install/include/coin" -DUSE_CBC -DUSE_GLOP -DUSE_BOP -DABSL_MUST_USE_RESULT -I"C:\dev\linear_solvers\glpk_4.65\w64/include" -DUSE_GLPK -I"C:\dev\linear_solvers\SCIPOptSuite_6.0.1/include" -DUSE_SCIP -I"C:\dev\linear_solvers\Gurobi/win64/include" -DUSE_GUROBI -I"C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex/include" -DUSE_CPLEX -I. -c++ -python -py3 -DPY3 \
 -o ortools\\gen\\ortools\\graph\\graph_python_wrap.cc \
 -module pywrapgraph \
 ortools\\graph\\python\\graph.i
ortools\base\integral_types.h(32) : Warning 302: Identifier 'int32' redefined (ignored),
ortools\base\base.i(27) : Warning 302: previous definition of 'int32'.
ortools\base\integral_types.h(37) : Warning 302: Identifier 'uint32' redefined (ignored),
ortools\base\base.i(28) : Warning 302: previous definition of 'uint32'.
cl /EHsc /MD /nologo -nologo  /D__WIN32__ /DPSAPI_VERSION=1 /DNOMINMAX /DWIN32_LEAN_AND_MEAN=1 /D_CRT_SECURE_NO_WARNINGS /O2 -DNDEBUG /I. /Iortools/gen /I"dependencies\\install\\include" /I"dependencies\\install\\include" /DGFLAGS_DLL_DECL= /DGFLAGS_DLL_DECLARE_FLAG= /DGFLAGS_DLL_DEFINE_FLAG= /I"dependencies\\install\\include" /DGOOGLE_GLOG_DLL_DECL= /I"dependencies\\install\\include" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CLP /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CBC /DUSE_GLOP /DUSE_BOP /I"C:\dev\linear_solvers\glpk_4.65\w64\\include" /DUSE_GLPK /I"C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\include" /DUSE_SCIP /I"C:\dev\linear_solvers\Gurobi\win64\include" /DUSE_GUROBI /I"C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex\\include" /DUSE_CPLEX /I"C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\\include" -DPY3 \
 -c ortools\\gen/ortools/graph/graph_python_wrap.cc \
 /Foobjs\\swig\\graph_python_wrap.obj
graph_python_wrap.cc
link /DLL /LTCG /debug \
  \
 /OUT:lib\\_pywrapgraph.dll \
 objs\\swig\\graph_python_wrap.obj \
  lib\\ortools.lib \
 psapi.lib ws2_32.lib shlwapi.lib \
 "C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\\libs\\python36.lib" \

Microsoft (R) Incremental Linker Version 14.16.27027.1
Copyright (C) Microsoft Corporation.  All rights reserved.

   Creating library lib\\_pywrapgraph.lib and object lib\\_pywrapgraph.exp
LINK : /LTCG specified but no code generation required; remove /LTCG from the link command line to improve linker performance
copy lib\\_pywrapgraph.dll ortools\\gen\\ortools\\graph\\_pywrapgraph.pyd
        1 file(s) copied.
"dependencies/install\\bin\\protoc.exe" --proto_path=. --python_out=ortools\\gen \
 .\\ortools\\constraint_solver\\assignment.proto
"dependencies/install\\bin\\protoc.exe" --proto_path=. --python_out=ortools\\gen \
 .\\ortools\\constraint_solver\\routing_enums.proto
"dependencies/install\\bin\\protoc.exe" --proto_path=. --python_out=ortools\\gen \
 .\\ortools\\constraint_solver\\solver_parameters.proto
"dependencies/install\\bin\\protoc.exe" --proto_path=. --python_out=ortools\\gen \
 .\\ortools\\constraint_solver\\routing_parameters.proto
"dependencies/install\\bin\\protoc.exe" --proto_path=. --python_out=ortools\\gen \
 .\\ortools\\constraint_solver\\search_limit.proto
"dependencies\\install\\swigwin-3.0.12\\swig.exe" -I"dependencies/install/include" -I"dependencies/install/include" -DGFLAGS_DLL_DECL= -DGFLAGS_DLL_DECLARE_FLAG= -DGFLAGS_DLL_DEFINE_FLAG= -I"dependencies/install/include" -DGOOGLE_GLOG_DLL_DECL= -I"dependencies/install/include" -I"dependencies/install/include" -I"dependencies/install/include/coin" -DUSE_CLP -I"dependencies/install/include" -I"dependencies/install/include/coin" -DUSE_CBC -DUSE_GLOP -DUSE_BOP -DABSL_MUST_USE_RESULT -I"C:\dev\linear_solvers\glpk_4.65\w64/include" -DUSE_GLPK -I"C:\dev\linear_solvers\SCIPOptSuite_6.0.1/include" -DUSE_SCIP -I"C:\dev\linear_solvers\Gurobi/win64/include" -DUSE_GUROBI -I"C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex/include" -DUSE_CPLEX -I. -c++ -python -py3 -DPY3 \
 -o ortools\\gen\\ortools\\constraint_solver\\constraint_solver_python_wrap.cc \
 -module pywrapcp \
 ./ortools/constraint_solver\\python\\routing.i
ortools\base\integral_types.h(32) : Warning 302: Identifier 'int32' redefined (ignored),
ortools\base\base.i(27) : Warning 302: previous definition of 'int32'.
ortools\base\integral_types.h(37) : Warning 302: Identifier 'uint32' redefined (ignored),
ortools\base\base.i(28) : Warning 302: previous definition of 'uint32'.
ortools\constraint_solver\routing.h(2296) : Warning 325: Nested struct not currently supported (StartEndValue ignored)
ortools\constraint_solver\routing.h(2669) : Warning 325: Nested struct not currently supported (SavingsParameters ignored)
ortools\constraint_solver\routing.h(2692) : Warning 325: Nested struct not currently supported (VehicleClassEntry ignored)
ortools\constraint_solver\python\constraint_solver.i(356) : Warning 509: Overloaded method operations_research::Solver::GuidedLocalSearch(bool,operations_research::IntVar *const,operations_research::Solver::IndexEvaluator2,int64,std::vector< operations_research::IntVar * > const &,double) effectively ignored,
ortools\constraint_solver\constraint_solver.h(2176) : Warning 509: as it is shadowed by operations_research::Solver::MakeGuidedLocalSearch(bool,operations_research::IntVar *const,operations_research::Solver::IndexEvaluator2,int64,std::vector< operations_research::IntVar * > const &,double).
ortools\constraint_solver\constraint_solver.h(3250) : Warning 473: Returning a pointer or reference in a director method is not recommended.
ortools\constraint_solver\constraint_solver.h(3585) : Warning 473: Returning a pointer or reference in a director method is not recommended.
.\ortools\constraint_solver\python\routing.i(65) : Warning 509: Overloaded method operations_research::RoutingModel::AddMatrixDimension(std::vector< std::vector< int64 > > const &,int64,bool,std::string const &) effectively ignored,
ortools\constraint_solver\routing.h(452) : Warning 509: as it is shadowed by operations_research::RoutingModel::AddMatrixDimension(std::vector< std::vector< int64 > >,int64,bool,std::string const &).
tools\win\sed.exe -i -e 's/< long long >/< int64 >/g' \
 ortools\\gen\\ortools\\constraint_solver\\constraint_solver_python_wrap.cc
tools\win\sed.exe -i -e 's/< long long,long long >/< int64, int64 >/g' \
 ortools\\gen\\ortools\\constraint_solver\\constraint_solver_python_wrap.cc
tools\win\sed.exe -i -e 's/< long long,std::allocator/< int64, std::allocator/g' \
 ortools\\gen\\ortools\\constraint_solver\\constraint_solver_python_wrap.cc
tools\win\sed.exe -i -e 's/,long long,/,int64,/g' \
 ortools\\gen\\ortools\\constraint_solver\\constraint_solver_python_wrap.cc
cl /EHsc /MD /nologo -nologo  /D__WIN32__ /DPSAPI_VERSION=1 /DNOMINMAX /DWIN32_LEAN_AND_MEAN=1 /D_CRT_SECURE_NO_WARNINGS /O2 -DNDEBUG /I. /Iortools/gen /I"dependencies\\install\\include" /I"dependencies\\install\\include" /DGFLAGS_DLL_DECL= /DGFLAGS_DLL_DECLARE_FLAG= /DGFLAGS_DLL_DEFINE_FLAG= /I"dependencies\\install\\include" /DGOOGLE_GLOG_DLL_DECL= /I"dependencies\\install\\include" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CLP /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CBC /DUSE_GLOP /DUSE_BOP /I"C:\dev\linear_solvers\glpk_4.65\w64\\include" /DUSE_GLPK /I"C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\include" /DUSE_SCIP /I"C:\dev\linear_solvers\Gurobi\win64\include" /DUSE_GUROBI /I"C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex\\include" /DUSE_CPLEX /I"C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\\include" -DPY3 \
 -c ortools\\gen\\ortools\\constraint_solver\\constraint_solver_python_wrap.cc \
 /Foobjs\\swig\\constraint_solver_python_wrap.obj
constraint_solver_python_wrap.cc
link /DLL /LTCG /debug \
  \
 /OUT:lib\\_pywrapcp.dll \
 objs\\swig\\constraint_solver_python_wrap.obj \
  lib\\ortools.lib \
 psapi.lib ws2_32.lib shlwapi.lib \
 "C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\\libs\\python36.lib" \

Microsoft (R) Incremental Linker Version 14.16.27027.1
Copyright (C) Microsoft Corporation.  All rights reserved.

   Creating library lib\\_pywrapcp.lib and object lib\\_pywrapcp.exp
LINK : /LTCG specified but no code generation required; remove /LTCG from the link command line to improve linker performance
copy lib\\_pywrapcp.dll ortools\\gen\\ortools\\constraint_solver\\_pywrapcp.pyd
        1 file(s) copied.
"dependencies/install\\bin\\protoc.exe" --proto_path=. --python_out=ortools\\gen \
 ./ortools/util/optional_boolean.proto
"dependencies/install\\bin\\protoc.exe" --proto_path=. --python_out=ortools\\gen \
 ./ortools/linear_solver/linear_solver.proto
"dependencies\\install\\swigwin-3.0.12\\swig.exe" -I"dependencies/install/include" -I"dependencies/install/include" -DGFLAGS_DLL_DECL= -DGFLAGS_DLL_DECLARE_FLAG= -DGFLAGS_DLL_DEFINE_FLAG= -I"dependencies/install/include" -DGOOGLE_GLOG_DLL_DECL= -I"dependencies/install/include" -I"dependencies/install/include" -I"dependencies/install/include/coin" -DUSE_CLP -I"dependencies/install/include" -I"dependencies/install/include/coin" -DUSE_CBC -DUSE_GLOP -DUSE_BOP -DABSL_MUST_USE_RESULT -I"C:\dev\linear_solvers\glpk_4.65\w64/include" -DUSE_GLPK -I"C:\dev\linear_solvers\SCIPOptSuite_6.0.1/include" -DUSE_SCIP -I"C:\dev\linear_solvers\Gurobi/win64/include" -DUSE_GUROBI -I"C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex/include" -DUSE_CPLEX -I. -c++ -python -py3 -DPY3 \
 -o ortools\\gen\\ortools\\linear_solver\\linear_solver_python_wrap.cc \
 -module pywraplp \
 ./ortools/linear_solver\\python\\linear_solver.i
ortools\base\integral_types.h(32) : Warning 302: Identifier 'int32' redefined (ignored),
ortools\base\base.i(27) : Warning 302: previous definition of 'int32'.
ortools\base\integral_types.h(37) : Warning 302: Identifier 'uint32' redefined (ignored),
ortools\base\base.i(28) : Warning 302: previous definition of 'uint32'.
ortools\linear_solver\linear_solver.h(738) : Warning 509: Overloaded method operations_research::operator <<(std::ostream &,operations_research::MPSolver::ResultStatus) effectively ignored,
ortools\linear_solver\linear_solver.h(732) : Warning 509: as it is shadowed by operations_research::operator <<(std::ostream &,operations_research::MPSolver::OptimizationProblemType).
cl /EHsc /MD /nologo -nologo  /D__WIN32__ /DPSAPI_VERSION=1 /DNOMINMAX /DWIN32_LEAN_AND_MEAN=1 /D_CRT_SECURE_NO_WARNINGS /O2 -DNDEBUG /I. /Iortools/gen /I"dependencies\\install\\include" /I"dependencies\\install\\include" /DGFLAGS_DLL_DECL= /DGFLAGS_DLL_DECLARE_FLAG= /DGFLAGS_DLL_DEFINE_FLAG= /I"dependencies\\install\\include" /DGOOGLE_GLOG_DLL_DECL= /I"dependencies\\install\\include" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CLP /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CBC /DUSE_GLOP /DUSE_BOP /I"C:\dev\linear_solvers\glpk_4.65\w64\\include" /DUSE_GLPK /I"C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\include" /DUSE_SCIP /I"C:\dev\linear_solvers\Gurobi\win64\include" /DUSE_GUROBI /I"C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex\\include" /DUSE_CPLEX /I"C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\\include" -DPY3 \
 -c ortools\\gen\\ortools\\linear_solver\\linear_solver_python_wrap.cc \
 /Foobjs\\swig\\linear_solver_python_wrap.obj
linear_solver_python_wrap.cc
link /DLL /LTCG /debug \
  \
 /OUT:lib\\_pywraplp.dll \
 objs\\swig\\linear_solver_python_wrap.obj \
  lib\\ortools.lib \
 psapi.lib ws2_32.lib shlwapi.lib \
 "C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\\libs\\python36.lib" \

Microsoft (R) Incremental Linker Version 14.16.27027.1
Copyright (C) Microsoft Corporation.  All rights reserved.

   Creating library lib\\_pywraplp.lib and object lib\\_pywraplp.exp
LINK : /LTCG specified but no code generation required; remove /LTCG from the link command line to improve linker performance
copy lib\\_pywraplp.dll ortools\\gen\\ortools\\linear_solver\\_pywraplp.pyd
        1 file(s) copied.
"dependencies/install\\bin\\protoc.exe" --proto_path=. --python_out=ortools\\gen \
 ./ortools/sat/cp_model.proto
"dependencies/install\\bin\\protoc.exe" --proto_path=. --python_out=ortools\\gen \
 ./ortools/sat/sat_parameters.proto
"dependencies\\install\\swigwin-3.0.12\\swig.exe" -I"dependencies/install/include" -I"dependencies/install/include" -DGFLAGS_DLL_DECL= -DGFLAGS_DLL_DECLARE_FLAG= -DGFLAGS_DLL_DEFINE_FLAG= -I"dependencies/install/include" -DGOOGLE_GLOG_DLL_DECL= -I"dependencies/install/include" -I"dependencies/install/include" -I"dependencies/install/include/coin" -DUSE_CLP -I"dependencies/install/include" -I"dependencies/install/include/coin" -DUSE_CBC -DUSE_GLOP -DUSE_BOP -DABSL_MUST_USE_RESULT -I"C:\dev\linear_solvers\glpk_4.65\w64/include" -DUSE_GLPK -I"C:\dev\linear_solvers\SCIPOptSuite_6.0.1/include" -DUSE_SCIP -I"C:\dev\linear_solvers\Gurobi/win64/include" -DUSE_GUROBI -I"C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex/include" -DUSE_CPLEX -I. -c++ -python -py3 -DPY3 \
 -o ortools\\gen\\ortools\\sat\\sat_python_wrap.cc \
 -module pywrapsat \
 ./ortools/sat\\python\\sat.i
ortools\base\integral_types.h(32) : Warning 302: Identifier 'int32' redefined (ignored),
ortools\base\base.i(27) : Warning 302: previous definition of 'int32'.
ortools\base\integral_types.h(37) : Warning 302: Identifier 'uint32' redefined (ignored),
ortools\base\base.i(28) : Warning 302: previous definition of 'uint32'.
cl /EHsc /MD /nologo -nologo  /D__WIN32__ /DPSAPI_VERSION=1 /DNOMINMAX /DWIN32_LEAN_AND_MEAN=1 /D_CRT_SECURE_NO_WARNINGS /O2 -DNDEBUG /I. /Iortools/gen /I"dependencies\\install\\include" /I"dependencies\\install\\include" /DGFLAGS_DLL_DECL= /DGFLAGS_DLL_DECLARE_FLAG= /DGFLAGS_DLL_DEFINE_FLAG= /I"dependencies\\install\\include" /DGOOGLE_GLOG_DLL_DECL= /I"dependencies\\install\\include" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CLP /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CBC /DUSE_GLOP /DUSE_BOP /I"C:\dev\linear_solvers\glpk_4.65\w64\\include" /DUSE_GLPK /I"C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\include" /DUSE_SCIP /I"C:\dev\linear_solvers\Gurobi\win64\include" /DUSE_GUROBI /I"C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex\\include" /DUSE_CPLEX /I"C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\\include" -DPY3 \
 -c ortools\\gen\\ortools\\sat\\sat_python_wrap.cc \
 /Foobjs\\swig\\sat_python_wrap.obj
sat_python_wrap.cc
link /DLL /LTCG /debug \
  \
 /OUT:lib\\_pywrapsat.dll \
 objs\\swig\\sat_python_wrap.obj \
  lib\\ortools.lib \
 psapi.lib ws2_32.lib shlwapi.lib \
 "C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\\libs\\python36.lib" \

Microsoft (R) Incremental Linker Version 14.16.27027.1
Copyright (C) Microsoft Corporation.  All rights reserved.

   Creating library lib\\_pywrapsat.lib and object lib\\_pywrapsat.exp
LINK : /LTCG specified but no code generation required; remove /LTCG from the link command line to improve linker performance
copy lib\\_pywrapsat.dll ortools\\gen\\ortools\\sat\\_pywrapsat.pyd
        1 file(s) copied.
"dependencies/install\\bin\\protoc.exe" --proto_path=. --python_out=ortools\\gen \
 ./ortools/data/rcpsp.proto
"dependencies\\install\\swigwin-3.0.12\\swig.exe" -I"dependencies/install/include" -I"dependencies/install/include" -DGFLAGS_DLL_DECL= -DGFLAGS_DLL_DECLARE_FLAG= -DGFLAGS_DLL_DEFINE_FLAG= -I"dependencies/install/include" -DGOOGLE_GLOG_DLL_DECL= -I"dependencies/install/include" -I"dependencies/install/include" -I"dependencies/install/include/coin" -DUSE_CLP -I"dependencies/install/include" -I"dependencies/install/include/coin" -DUSE_CBC -DUSE_GLOP -DUSE_BOP -DABSL_MUST_USE_RESULT -I"C:\dev\linear_solvers\glpk_4.65\w64/include" -DUSE_GLPK -I"C:\dev\linear_solvers\SCIPOptSuite_6.0.1/include" -DUSE_SCIP -I"C:\dev\linear_solvers\Gurobi/win64/include" -DUSE_GUROBI -I"C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex/include" -DUSE_CPLEX -I. -c++ -python -py3 -DPY3 \
 -o ortools\\gen\\ortools\\data\\rcpsp_python_wrap.cc \
 -module pywraprcpsp \
 ./ortools/data\\python\\rcpsp.i
ortools\base\integral_types.h(32) : Warning 302: Identifier 'int32' redefined (ignored),
ortools\base\base.i(27) : Warning 302: previous definition of 'int32'.
ortools\base\integral_types.h(37) : Warning 302: Identifier 'uint32' redefined (ignored),
ortools\base\base.i(28) : Warning 302: previous definition of 'uint32'.
cl /EHsc /MD /nologo -nologo  /D__WIN32__ /DPSAPI_VERSION=1 /DNOMINMAX /DWIN32_LEAN_AND_MEAN=1 /D_CRT_SECURE_NO_WARNINGS /O2 -DNDEBUG /I. /Iortools/gen /I"dependencies\\install\\include" /I"dependencies\\install\\include" /DGFLAGS_DLL_DECL= /DGFLAGS_DLL_DECLARE_FLAG= /DGFLAGS_DLL_DEFINE_FLAG= /I"dependencies\\install\\include" /DGOOGLE_GLOG_DLL_DECL= /I"dependencies\\install\\include" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CLP /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CBC /DUSE_GLOP /DUSE_BOP /I"C:\dev\linear_solvers\glpk_4.65\w64\\include" /DUSE_GLPK /I"C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\include" /DUSE_SCIP /I"C:\dev\linear_solvers\Gurobi\win64\include" /DUSE_GUROBI /I"C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex\\include" /DUSE_CPLEX /I"C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\\include" -DPY3 \
 -c ortools\\gen\\ortools\\data\\rcpsp_python_wrap.cc \
 /Foobjs\\swig\\rcpsp_python_wrap.obj
rcpsp_python_wrap.cc
link /DLL /LTCG /debug \
  \
 /OUT:lib\\_pywraprcpsp.dll \
 objs\\swig\\rcpsp_python_wrap.obj \
  lib\\ortools.lib \
 psapi.lib ws2_32.lib shlwapi.lib \
 "C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\\libs\\python36.lib" \

Microsoft (R) Incremental Linker Version 14.16.27027.1
Copyright (C) Microsoft Corporation.  All rights reserved.

   Creating library lib\\_pywraprcpsp.lib and object lib\\_pywraprcpsp.exp
LINK : /LTCG specified but no code generation required; remove /LTCG from the link command line to improve linker performance
copy lib\\_pywraprcpsp.dll ortools\\gen\\ortools\\data\\_pywraprcpsp.pyd
        1 file(s) copied.

tools\make install_python

c:\dev\or-tools-6.10X\or-tools>tools\make install_python
md temp_python36
md temp_python36\\ortools
copy tools\\setup.py temp_python36\\ortools
        1 file(s) copied.
tools\win\sed.exe -i -e 's/ORTOOLS_PYTHON_VERSION/ortools/' temp_python36\\ortools\\setup.py
tools\win\sed.exe -i -e 's/VVVV/7.0.6546/' temp_python36\\ortools\\setup.py
tools\win\sed.exe -i -e 's/PROTOBUF_TAG/3.6.1/' temp_python36\\ortools\\setup.py
tools\win\sed.exe -i -e 's/\.dll/\.pyd/' temp_python36/ortools/setup.py
tools\win\sed.exe -i -e '/DELETEWIN/d' temp_python36/ortools/setup.py
tools\win\sed.exe -i -e 's/DELETEUNIX/          /g' temp_python36/ortools/setup.py
del temp_python36\ortools\setup.py-e
Could Not Find c:\dev\or-tools-6.10X\or-tools\temp_python36\ortools\setup.py-e
copy tools\\README.pypi temp_python36\\ortools\\README.txt
        1 file(s) copied.
copy LICENSE-2.0.txt temp_python36\\ortools
        1 file(s) copied.
md temp_python36\\ortools\\ortools
copy ortools\\gen\\ortools\\__init__.py temp_python36\\ortools\\ortools\\__init__.py
        1 file(s) copied.
echo __version__ = "7.0.6546" >> \
 temp_python36\\ortools\\ortools\\__init__.py
tools\win\rm.exe -rf temp_python36\\ortools\\ortools\\algorithms
md temp_python36\\ortools\\ortools\\algorithms
tools\win\touch.exe temp_python36\\ortools\\ortools\\algorithms\\__init__.py
copy ortools\\gen\\ortools\\algorithms\\pywrapknapsack_solver.py temp_python36\\ortools\\ortools\\algorithms
        1 file(s) copied.
copy ortools\\gen\\ortools\\algorithms\\_pywrapknapsack_solver.* temp_python36\\ortools\\ortools\\algorithms
ortools\\gen\\ortools\\algorithms\\_pywrapknapsack_solver.pyd
        1 file(s) copied.
tools\win\rm.exe -rf temp_python36\\ortools\\ortools\\graph
md temp_python36\\ortools\\ortools\\graph
tools\win\touch.exe temp_python36\\ortools\\ortools\\graph\\__init__.py
copy ortools\\gen\\ortools\\graph\\pywrapgraph.py temp_python36\\ortools\\ortools\\graph
        1 file(s) copied.
copy ortools\\gen\\ortools\\graph\\_pywrapgraph.* temp_python36\\ortools\\ortools\\graph
ortools\\gen\\ortools\\graph\\_pywrapgraph.pyd
        1 file(s) copied.
tools\win\rm.exe -rf temp_python36\\ortools\\ortools\\constraint_solver
md temp_python36\\ortools\\ortools\\constraint_solver
tools\win\touch.exe temp_python36\\ortools\\ortools\\constraint_solver\\__init__.py
copy ortools\\gen\\ortools\\constraint_solver\\*.py temp_python36\\ortools\\ortools\\constraint_solver
ortools\\gen\\ortools\\constraint_solver\\assignment_pb2.py
ortools\\gen\\ortools\\constraint_solver\\pywrapcp.py
ortools\\gen\\ortools\\constraint_solver\\routing_enums_pb2.py
ortools\\gen\\ortools\\constraint_solver\\routing_parameters_pb2.py
ortools\\gen\\ortools\\constraint_solver\\search_limit_pb2.py
ortools\\gen\\ortools\\constraint_solver\\solver_parameters_pb2.py
        6 file(s) copied.
copy ortools\\gen\\ortools\\constraint_solver\\_pywrapcp.* temp_python36\\ortools\\ortools\\constraint_solver
ortools\\gen\\ortools\\constraint_solver\\_pywrapcp.pyd
        1 file(s) copied.
tools\win\rm.exe -rf temp_python36\\ortools\\ortools\\linear_solver
md temp_python36\\ortools\\ortools\\linear_solver
tools\win\touch.exe temp_python36\\ortools\\ortools\\linear_solver\\__init__.py
copy ortools\\linear_solver\\*.py temp_python36\\ortools\\ortools\\linear_solver
ortools\\linear_solver\\linear_solver_natural_api.py
ortools\\linear_solver\\__init__.py
        2 file(s) copied.
copy ortools\\gen\\ortools\\linear_solver\\*.py temp_python36\\ortools\\ortools\\linear_solver
ortools\\gen\\ortools\\linear_solver\\linear_solver_pb2.py
ortools\\gen\\ortools\\linear_solver\\pywraplp.py
        2 file(s) copied.
copy ortools\\gen\\ortools\\linear_solver\\_pywraplp.* temp_python36\\ortools\\ortools\\linear_solver
ortools\\gen\\ortools\\linear_solver\\_pywraplp.pyd
        1 file(s) copied.
tools\win\rm.exe -rf temp_python36\\ortools\\ortools\\sat
md temp_python36\\ortools\\ortools\\sat
tools\win\touch.exe temp_python36\\ortools\\ortools\\sat\\__init__.py
copy ortools\\sat\\doc\\*.md temp_python36\\ortools\\ortools\\sat
ortools\\sat\\doc\\boolean_logic.md
ortools\\sat\\doc\\channeling.md
ortools\\sat\\doc\\integer_arithmetic.md
ortools\\sat\\doc\\navbar.md
ortools\\sat\\doc\\README.md
ortools\\sat\\doc\\reference.md
ortools\\sat\\doc\\scheduling.md
ortools\\sat\\doc\\solver.md
        8 file(s) copied.
copy ortools\\sat\\*.py temp_python36\\ortools\\ortools\\sat
ortools\\sat\\__init__.py
        1 file(s) copied.
copy ortools\\gen\\ortools\\sat\\*.py temp_python36\\ortools\\ortools\\sat
ortools\\gen\\ortools\\sat\\cp_model_pb2.py
ortools\\gen\\ortools\\sat\\pywrapsat.py
ortools\\gen\\ortools\\sat\\sat_parameters_pb2.py
        3 file(s) copied.
copy ortools\\gen\\ortools\\sat\\_pywrapsat.* temp_python36\\ortools\\ortools\\sat
ortools\\gen\\ortools\\sat\\_pywrapsat.pyd
        1 file(s) copied.
md temp_python36\\ortools\\ortools\\sat\\python
copy ortools\\sat\\python\\*.py temp_python36\\ortools\\ortools\\sat\\python
ortools\\sat\\python\\cp_model.py
ortools\\sat\\python\\cp_model_helper.py
ortools\\sat\\python\\visualization.py
ortools\\sat\\python\\__init__.py
        4 file(s) copied.
tools\win\rm.exe -rf temp_python36\\ortools\\ortools\\data
md temp_python36\\ortools\\ortools\\data
tools\win\touch.exe temp_python36\\ortools\\ortools\\data\\__init__.py
copy ortools\\gen\\ortools\\data\\*.py temp_python36\\ortools\\ortools\\data
ortools\\gen\\ortools\\data\\pywraprcpsp.py
ortools\\gen\\ortools\\data\\rcpsp_pb2.py
        2 file(s) copied.
copy ortools\\gen\\ortools\\data\\_pywraprcpsp.* temp_python36\\ortools\\ortools\\data
ortools\\gen\\ortools\\data\\_pywraprcpsp.pyd
        1 file(s) copied.
tools\win\rm.exe -rf temp_python36\\ortools\\ortools\\util
md temp_python36\\ortools\\ortools\\util
tools\win\touch.exe temp_python36\\ortools\\ortools\\util\\__init__.py
copy ortools\\gen\\ortools\\util\\*.py temp_python36\\ortools\\ortools\\util
ortools\\gen\\ortools\\util\\optional_boolean_pb2.py
        1 file(s) copied.
cd temp_python36\\ortools && "C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\python.exe" setup.py bdist_wheel
running bdist_wheel
running build
running build_py
creating build
creating build\lib
creating build\lib\ortools
copying ortools\__init__.py -> build\lib\ortools
creating build\lib\ortools\algorithms
copying ortools\algorithms\pywrapknapsack_solver.py -> build\lib\ortools\algorithms
copying ortools\algorithms\__init__.py -> build\lib\ortools\algorithms
creating build\lib\ortools\constraint_solver
copying ortools\constraint_solver\assignment_pb2.py -> build\lib\ortools\constraint_solver
copying ortools\constraint_solver\pywrapcp.py -> build\lib\ortools\constraint_solver
copying ortools\constraint_solver\routing_enums_pb2.py -> build\lib\ortools\constraint_solver
copying ortools\constraint_solver\routing_parameters_pb2.py -> build\lib\ortools\constraint_solver
copying ortools\constraint_solver\search_limit_pb2.py -> build\lib\ortools\constraint_solver
copying ortools\constraint_solver\solver_parameters_pb2.py -> build\lib\ortools\constraint_solver
copying ortools\constraint_solver\__init__.py -> build\lib\ortools\constraint_solver
creating build\lib\ortools\data
copying ortools\data\pywraprcpsp.py -> build\lib\ortools\data
copying ortools\data\rcpsp_pb2.py -> build\lib\ortools\data
copying ortools\data\__init__.py -> build\lib\ortools\data
creating build\lib\ortools\graph
copying ortools\graph\pywrapgraph.py -> build\lib\ortools\graph
copying ortools\graph\__init__.py -> build\lib\ortools\graph
creating build\lib\ortools\linear_solver
copying ortools\linear_solver\linear_solver_natural_api.py -> build\lib\ortools\linear_solver
copying ortools\linear_solver\linear_solver_pb2.py -> build\lib\ortools\linear_solver
copying ortools\linear_solver\pywraplp.py -> build\lib\ortools\linear_solver
copying ortools\linear_solver\__init__.py -> build\lib\ortools\linear_solver
creating build\lib\ortools\sat
copying ortools\sat\cp_model_pb2.py -> build\lib\ortools\sat
copying ortools\sat\pywrapsat.py -> build\lib\ortools\sat
copying ortools\sat\sat_parameters_pb2.py -> build\lib\ortools\sat
copying ortools\sat\__init__.py -> build\lib\ortools\sat
creating build\lib\ortools\sat\python
copying ortools\sat\python\cp_model.py -> build\lib\ortools\sat\python
copying ortools\sat\python\cp_model_helper.py -> build\lib\ortools\sat\python
copying ortools\sat\python\visualization.py -> build\lib\ortools\sat\python
copying ortools\sat\python\__init__.py -> build\lib\ortools\sat\python
creating build\lib\ortools\util
copying ortools\util\optional_boolean_pb2.py -> build\lib\ortools\util
copying ortools\util\__init__.py -> build\lib\ortools\util
running egg_info
creating ortools.egg-info
writing ortools.egg-info\PKG-INFO
writing dependency_links to ortools.egg-info\dependency_links.txt
writing requirements to ortools.egg-info\requires.txt
writing top-level names to ortools.egg-info\top_level.txt
writing manifest file 'ortools.egg-info\SOURCES.txt'
reading manifest file 'ortools.egg-info\SOURCES.txt'
writing manifest file 'ortools.egg-info\SOURCES.txt'
copying ortools\algorithms\_pywrapknapsack_solver.pyd -> build\lib\ortools\algorithms
copying ortools\constraint_solver\_pywrapcp.pyd -> build\lib\ortools\constraint_solver
copying ortools\data\_pywraprcpsp.pyd -> build\lib\ortools\data
copying ortools\graph\_pywrapgraph.pyd -> build\lib\ortools\graph
copying ortools\linear_solver\_pywraplp.pyd -> build\lib\ortools\linear_solver
copying ortools\sat\_pywrapsat.pyd -> build\lib\ortools\sat
copying ortools\sat\boolean_logic.md -> build\lib\ortools\sat
copying ortools\sat\channeling.md -> build\lib\ortools\sat
copying ortools\sat\integer_arithmetic.md -> build\lib\ortools\sat
copying ortools\sat\navbar.md -> build\lib\ortools\sat
copying ortools\sat\README.md -> build\lib\ortools\sat
copying ortools\sat\reference.md -> build\lib\ortools\sat
copying ortools\sat\scheduling.md -> build\lib\ortools\sat
copying ortools\sat\solver.md -> build\lib\ortools\sat
running build_ext
installing to build\bdist.win-amd64\wheel
running install
running install_lib
creating build\bdist.win-amd64
creating build\bdist.win-amd64\wheel
creating build\bdist.win-amd64\wheel\ortools
creating build\bdist.win-amd64\wheel\ortools\algorithms
copying build\lib\ortools\algorithms\pywrapknapsack_solver.py -> build\bdist.win-amd64\wheel\.\ortools\algorithms
copying build\lib\ortools\algorithms\_pywrapknapsack_solver.pyd -> build\bdist.win-amd64\wheel\.\ortools\algorithms
copying build\lib\ortools\algorithms\__init__.py -> build\bdist.win-amd64\wheel\.\ortools\algorithms
creating build\bdist.win-amd64\wheel\ortools\constraint_solver
copying build\lib\ortools\constraint_solver\assignment_pb2.py -> build\bdist.win-amd64\wheel\.\ortools\constraint_solvercopying build\lib\ortools\constraint_solver\pywrapcp.py -> build\bdist.win-amd64\wheel\.\ortools\constraint_solver
copying build\lib\ortools\constraint_solver\routing_enums_pb2.py -> build\bdist.win-amd64\wheel\.\ortools\constraint_solver
copying build\lib\ortools\constraint_solver\routing_parameters_pb2.py -> build\bdist.win-amd64\wheel\.\ortools\constraint_solver
copying build\lib\ortools\constraint_solver\search_limit_pb2.py -> build\bdist.win-amd64\wheel\.\ortools\constraint_solver
copying build\lib\ortools\constraint_solver\solver_parameters_pb2.py -> build\bdist.win-amd64\wheel\.\ortools\constraint_solver
copying build\lib\ortools\constraint_solver\_pywrapcp.pyd -> build\bdist.win-amd64\wheel\.\ortools\constraint_solver
copying build\lib\ortools\constraint_solver\__init__.py -> build\bdist.win-amd64\wheel\.\ortools\constraint_solver
creating build\bdist.win-amd64\wheel\ortools\data
copying build\lib\ortools\data\pywraprcpsp.py -> build\bdist.win-amd64\wheel\.\ortools\data
copying build\lib\ortools\data\rcpsp_pb2.py -> build\bdist.win-amd64\wheel\.\ortools\data
copying build\lib\ortools\data\_pywraprcpsp.pyd -> build\bdist.win-amd64\wheel\.\ortools\data
copying build\lib\ortools\data\__init__.py -> build\bdist.win-amd64\wheel\.\ortools\data
creating build\bdist.win-amd64\wheel\ortools\graph
copying build\lib\ortools\graph\pywrapgraph.py -> build\bdist.win-amd64\wheel\.\ortools\graph
copying build\lib\ortools\graph\_pywrapgraph.pyd -> build\bdist.win-amd64\wheel\.\ortools\graph
copying build\lib\ortools\graph\__init__.py -> build\bdist.win-amd64\wheel\.\ortools\graph
creating build\bdist.win-amd64\wheel\ortools\linear_solver
copying build\lib\ortools\linear_solver\linear_solver_natural_api.py -> build\bdist.win-amd64\wheel\.\ortools\linear_solver
copying build\lib\ortools\linear_solver\linear_solver_pb2.py -> build\bdist.win-amd64\wheel\.\ortools\linear_solver
copying build\lib\ortools\linear_solver\pywraplp.py -> build\bdist.win-amd64\wheel\.\ortools\linear_solver
copying build\lib\ortools\linear_solver\_pywraplp.pyd -> build\bdist.win-amd64\wheel\.\ortools\linear_solver
copying build\lib\ortools\linear_solver\__init__.py -> build\bdist.win-amd64\wheel\.\ortools\linear_solver
creating build\bdist.win-amd64\wheel\ortools\sat
copying build\lib\ortools\sat\boolean_logic.md -> build\bdist.win-amd64\wheel\.\ortools\sat
copying build\lib\ortools\sat\channeling.md -> build\bdist.win-amd64\wheel\.\ortools\sat
copying build\lib\ortools\sat\cp_model_pb2.py -> build\bdist.win-amd64\wheel\.\ortools\sat
copying build\lib\ortools\sat\integer_arithmetic.md -> build\bdist.win-amd64\wheel\.\ortools\sat
copying build\lib\ortools\sat\navbar.md -> build\bdist.win-amd64\wheel\.\ortools\sat
creating build\bdist.win-amd64\wheel\ortools\sat\python
copying build\lib\ortools\sat\python\cp_model.py -> build\bdist.win-amd64\wheel\.\ortools\sat\python
copying build\lib\ortools\sat\python\cp_model_helper.py -> build\bdist.win-amd64\wheel\.\ortools\sat\python
copying build\lib\ortools\sat\python\visualization.py -> build\bdist.win-amd64\wheel\.\ortools\sat\python
copying build\lib\ortools\sat\python\__init__.py -> build\bdist.win-amd64\wheel\.\ortools\sat\python
copying build\lib\ortools\sat\pywrapsat.py -> build\bdist.win-amd64\wheel\.\ortools\sat
copying build\lib\ortools\sat\README.md -> build\bdist.win-amd64\wheel\.\ortools\sat
copying build\lib\ortools\sat\reference.md -> build\bdist.win-amd64\wheel\.\ortools\sat
copying build\lib\ortools\sat\sat_parameters_pb2.py -> build\bdist.win-amd64\wheel\.\ortools\sat
copying build\lib\ortools\sat\scheduling.md -> build\bdist.win-amd64\wheel\.\ortools\sat
copying build\lib\ortools\sat\solver.md -> build\bdist.win-amd64\wheel\.\ortools\sat
copying build\lib\ortools\sat\_pywrapsat.pyd -> build\bdist.win-amd64\wheel\.\ortools\sat
copying build\lib\ortools\sat\__init__.py -> build\bdist.win-amd64\wheel\.\ortools\sat
creating build\bdist.win-amd64\wheel\ortools\util
copying build\lib\ortools\util\optional_boolean_pb2.py -> build\bdist.win-amd64\wheel\.\ortools\util
copying build\lib\ortools\util\__init__.py -> build\bdist.win-amd64\wheel\.\ortools\util
copying build\lib\ortools\__init__.py -> build\bdist.win-amd64\wheel\.\ortools
running install_egg_info
Copying ortools.egg-info to build\bdist.win-amd64\wheel\.\ortools-7.0.6546-py3.6.egg-info
running install_scripts
c:\users\tsamawi\appdata\local\programs\python\python36\lib\site-packages\wheel\pep425tags.py:80: RuntimeWarning: Config variable 'Py_DEBUG' is unset, Python ABI tag may be incorrect
  warn=(impl == 'cp')):
c:\users\tsamawi\appdata\local\programs\python\python36\lib\site-packages\wheel\pep425tags.py:84: RuntimeWarning: Config variable 'WITH_PYMALLOC' is unset, Python ABI tag may be incorrect
  warn=(impl == 'cp')):
adding license file "LICENSE-2.0.txt" (matched pattern "LICEN[CS]E*")
creating build\bdist.win-amd64\wheel\ortools-7.0.6546.dist-info\WHEEL
creating 'dist\ortools-7.0.6546-cp36-cp36m-win_amd64.whl' and adding 'build\bdist.win-amd64\wheel' to it
adding 'ortools/__init__.py'
adding 'ortools/algorithms/__init__.py'
adding 'ortools/algorithms/_pywrapknapsack_solver.pyd'
adding 'ortools/algorithms/pywrapknapsack_solver.py'
adding 'ortools/constraint_solver/__init__.py'
adding 'ortools/constraint_solver/_pywrapcp.pyd'
adding 'ortools/constraint_solver/assignment_pb2.py'
adding 'ortools/constraint_solver/pywrapcp.py'
adding 'ortools/constraint_solver/routing_enums_pb2.py'
adding 'ortools/constraint_solver/routing_parameters_pb2.py'
adding 'ortools/constraint_solver/search_limit_pb2.py'
adding 'ortools/constraint_solver/solver_parameters_pb2.py'
adding 'ortools/data/__init__.py'
adding 'ortools/data/_pywraprcpsp.pyd'
adding 'ortools/data/pywraprcpsp.py'
adding 'ortools/data/rcpsp_pb2.py'
adding 'ortools/graph/__init__.py'
adding 'ortools/graph/_pywrapgraph.pyd'
adding 'ortools/graph/pywrapgraph.py'
adding 'ortools/linear_solver/__init__.py'
adding 'ortools/linear_solver/_pywraplp.pyd'
adding 'ortools/linear_solver/linear_solver_natural_api.py'
adding 'ortools/linear_solver/linear_solver_pb2.py'
adding 'ortools/linear_solver/pywraplp.py'
adding 'ortools/sat/README.md'
adding 'ortools/sat/__init__.py'
adding 'ortools/sat/_pywrapsat.pyd'
adding 'ortools/sat/boolean_logic.md'
adding 'ortools/sat/channeling.md'
adding 'ortools/sat/cp_model_pb2.py'
adding 'ortools/sat/integer_arithmetic.md'
adding 'ortools/sat/navbar.md'
adding 'ortools/sat/pywrapsat.py'
adding 'ortools/sat/reference.md'
adding 'ortools/sat/sat_parameters_pb2.py'
adding 'ortools/sat/scheduling.md'
adding 'ortools/sat/solver.md'
adding 'ortools/sat/python/__init__.py'
adding 'ortools/sat/python/cp_model.py'
adding 'ortools/sat/python/cp_model_helper.py'
adding 'ortools/sat/python/visualization.py'
adding 'ortools/util/__init__.py'
adding 'ortools/util/optional_boolean_pb2.py'
adding 'ortools-7.0.6546.dist-info/LICENSE-2.0.txt'
adding 'ortools-7.0.6546.dist-info/METADATA'
adding 'ortools-7.0.6546.dist-info/WHEEL'
adding 'ortools-7.0.6546.dist-info/top_level.txt'
adding 'ortools-7.0.6546.dist-info/RECORD'
removing build\bdist.win-amd64\wheel
cd "temp_python36\\ortools" && "C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\python.exe" setup.py install --user
running install
running bdist_egg
running egg_info
writing ortools.egg-info\PKG-INFO
writing dependency_links to ortools.egg-info\dependency_links.txt
writing requirements to ortools.egg-info\requires.txt
writing top-level names to ortools.egg-info\top_level.txt
reading manifest file 'ortools.egg-info\SOURCES.txt'
writing manifest file 'ortools.egg-info\SOURCES.txt'
installing library code to build\bdist.win-amd64\egg
running install_lib
running build_py
running build_ext
creating build\bdist.win-amd64\egg
creating build\bdist.win-amd64\egg\ortools
creating build\bdist.win-amd64\egg\ortools\algorithms
copying build\lib\ortools\algorithms\pywrapknapsack_solver.py -> build\bdist.win-amd64\egg\ortools\algorithms
copying build\lib\ortools\algorithms\_pywrapknapsack_solver.pyd -> build\bdist.win-amd64\egg\ortools\algorithms
copying build\lib\ortools\algorithms\__init__.py -> build\bdist.win-amd64\egg\ortools\algorithms
creating build\bdist.win-amd64\egg\ortools\constraint_solver
copying build\lib\ortools\constraint_solver\assignment_pb2.py -> build\bdist.win-amd64\egg\ortools\constraint_solver
copying build\lib\ortools\constraint_solver\pywrapcp.py -> build\bdist.win-amd64\egg\ortools\constraint_solver
copying build\lib\ortools\constraint_solver\routing_enums_pb2.py -> build\bdist.win-amd64\egg\ortools\constraint_solver
copying build\lib\ortools\constraint_solver\routing_parameters_pb2.py -> build\bdist.win-amd64\egg\ortools\constraint_solver
copying build\lib\ortools\constraint_solver\search_limit_pb2.py -> build\bdist.win-amd64\egg\ortools\constraint_solver
copying build\lib\ortools\constraint_solver\solver_parameters_pb2.py -> build\bdist.win-amd64\egg\ortools\constraint_solver
copying build\lib\ortools\constraint_solver\_pywrapcp.pyd -> build\bdist.win-amd64\egg\ortools\constraint_solver
copying build\lib\ortools\constraint_solver\__init__.py -> build\bdist.win-amd64\egg\ortools\constraint_solver
creating build\bdist.win-amd64\egg\ortools\data
copying build\lib\ortools\data\pywraprcpsp.py -> build\bdist.win-amd64\egg\ortools\data
copying build\lib\ortools\data\rcpsp_pb2.py -> build\bdist.win-amd64\egg\ortools\data
copying build\lib\ortools\data\_pywraprcpsp.pyd -> build\bdist.win-amd64\egg\ortools\data
copying build\lib\ortools\data\__init__.py -> build\bdist.win-amd64\egg\ortools\data
creating build\bdist.win-amd64\egg\ortools\graph
copying build\lib\ortools\graph\pywrapgraph.py -> build\bdist.win-amd64\egg\ortools\graph
copying build\lib\ortools\graph\_pywrapgraph.pyd -> build\bdist.win-amd64\egg\ortools\graph
copying build\lib\ortools\graph\__init__.py -> build\bdist.win-amd64\egg\ortools\graph
creating build\bdist.win-amd64\egg\ortools\linear_solver
copying build\lib\ortools\linear_solver\linear_solver_natural_api.py -> build\bdist.win-amd64\egg\ortools\linear_solver
copying build\lib\ortools\linear_solver\linear_solver_pb2.py -> build\bdist.win-amd64\egg\ortools\linear_solver
copying build\lib\ortools\linear_solver\pywraplp.py -> build\bdist.win-amd64\egg\ortools\linear_solver
copying build\lib\ortools\linear_solver\_pywraplp.pyd -> build\bdist.win-amd64\egg\ortools\linear_solver
copying build\lib\ortools\linear_solver\__init__.py -> build\bdist.win-amd64\egg\ortools\linear_solver
creating build\bdist.win-amd64\egg\ortools\sat
copying build\lib\ortools\sat\boolean_logic.md -> build\bdist.win-amd64\egg\ortools\sat
copying build\lib\ortools\sat\channeling.md -> build\bdist.win-amd64\egg\ortools\sat
copying build\lib\ortools\sat\cp_model_pb2.py -> build\bdist.win-amd64\egg\ortools\sat
copying build\lib\ortools\sat\integer_arithmetic.md -> build\bdist.win-amd64\egg\ortools\sat
copying build\lib\ortools\sat\navbar.md -> build\bdist.win-amd64\egg\ortools\sat
creating build\bdist.win-amd64\egg\ortools\sat\python
copying build\lib\ortools\sat\python\cp_model.py -> build\bdist.win-amd64\egg\ortools\sat\python
copying build\lib\ortools\sat\python\cp_model_helper.py -> build\bdist.win-amd64\egg\ortools\sat\python
copying build\lib\ortools\sat\python\visualization.py -> build\bdist.win-amd64\egg\ortools\sat\python
copying build\lib\ortools\sat\python\__init__.py -> build\bdist.win-amd64\egg\ortools\sat\python
copying build\lib\ortools\sat\pywrapsat.py -> build\bdist.win-amd64\egg\ortools\sat
copying build\lib\ortools\sat\README.md -> build\bdist.win-amd64\egg\ortools\sat
copying build\lib\ortools\sat\reference.md -> build\bdist.win-amd64\egg\ortools\sat
copying build\lib\ortools\sat\sat_parameters_pb2.py -> build\bdist.win-amd64\egg\ortools\sat
copying build\lib\ortools\sat\scheduling.md -> build\bdist.win-amd64\egg\ortools\sat
copying build\lib\ortools\sat\solver.md -> build\bdist.win-amd64\egg\ortools\sat
copying build\lib\ortools\sat\_pywrapsat.pyd -> build\bdist.win-amd64\egg\ortools\sat
copying build\lib\ortools\sat\__init__.py -> build\bdist.win-amd64\egg\ortools\sat
creating build\bdist.win-amd64\egg\ortools\util
copying build\lib\ortools\util\optional_boolean_pb2.py -> build\bdist.win-amd64\egg\ortools\util
copying build\lib\ortools\util\__init__.py -> build\bdist.win-amd64\egg\ortools\util
copying build\lib\ortools\__init__.py -> build\bdist.win-amd64\egg\ortools
byte-compiling build\bdist.win-amd64\egg\ortools\algorithms\pywrapknapsack_solver.py to pywrapknapsack_solver.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\algorithms\__init__.py to __init__.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\constraint_solver\assignment_pb2.py to assignment_pb2.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\constraint_solver\pywrapcp.py to pywrapcp.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\constraint_solver\routing_enums_pb2.py to routing_enums_pb2.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\constraint_solver\routing_parameters_pb2.py to routing_parameters_pb2.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\constraint_solver\search_limit_pb2.py to search_limit_pb2.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\constraint_solver\solver_parameters_pb2.py to solver_parameters_pb2.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\constraint_solver\__init__.py to __init__.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\data\pywraprcpsp.py to pywraprcpsp.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\data\rcpsp_pb2.py to rcpsp_pb2.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\data\__init__.py to __init__.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\graph\pywrapgraph.py to pywrapgraph.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\graph\__init__.py to __init__.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\linear_solver\linear_solver_natural_api.py to linear_solver_natural_api.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\linear_solver\linear_solver_pb2.py to linear_solver_pb2.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\linear_solver\pywraplp.py to pywraplp.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\linear_solver\__init__.py to __init__.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\sat\cp_model_pb2.py to cp_model_pb2.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\sat\python\cp_model.py to cp_model.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\sat\python\cp_model_helper.py to cp_model_helper.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\sat\python\visualization.py to visualization.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\sat\python\__init__.py to __init__.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\sat\pywrapsat.py to pywrapsat.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\sat\sat_parameters_pb2.py to sat_parameters_pb2.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\sat\__init__.py to __init__.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\util\optional_boolean_pb2.py to optional_boolean_pb2.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\util\__init__.py to __init__.cpython-36.pyc
byte-compiling build\bdist.win-amd64\egg\ortools\__init__.py to __init__.cpython-36.pyc
creating build\bdist.win-amd64\egg\EGG-INFO
copying ortools.egg-info\PKG-INFO -> build\bdist.win-amd64\egg\EGG-INFO
copying ortools.egg-info\SOURCES.txt -> build\bdist.win-amd64\egg\EGG-INFO
copying ortools.egg-info\dependency_links.txt -> build\bdist.win-amd64\egg\EGG-INFO
copying ortools.egg-info\requires.txt -> build\bdist.win-amd64\egg\EGG-INFO
copying ortools.egg-info\top_level.txt -> build\bdist.win-amd64\egg\EGG-INFO
writing build\bdist.win-amd64\egg\EGG-INFO\native_libs.txt
zip_safe flag not set; analyzing archive contents...
ortools.algorithms.__pycache__.pywrapknapsack_solver.cpython-36: module references __file__
ortools.constraint_solver.__pycache__.pywrapcp.cpython-36: module references __file__
ortools.data.__pycache__.pywraprcpsp.cpython-36: module references __file__
ortools.graph.__pycache__.pywrapgraph.cpython-36: module references __file__
ortools.linear_solver.__pycache__.__init__.cpython-36: module references __path__
ortools.linear_solver.__pycache__.pywraplp.cpython-36: module references __file__
ortools.sat.__pycache__.__init__.cpython-36: module references __path__
ortools.sat.__pycache__.pywrapsat.cpython-36: module references __file__
creating 'dist\ortools-7.0.6546-py3.6-win-amd64.egg' and adding 'build\bdist.win-amd64\egg' to it
removing 'build\bdist.win-amd64\egg' (and everything under it)
Processing ortools-7.0.6546-py3.6-win-amd64.egg
removing 'c:\users\tsamawi\appdata\roaming\python\python36\site-packages\ortools-7.0.6546-py3.6-win-amd64.egg' (and everything under it)
creating c:\users\tsamawi\appdata\roaming\python\python36\site-packages\ortools-7.0.6546-py3.6-win-amd64.egg
Extracting ortools-7.0.6546-py3.6-win-amd64.egg to c:\users\tsamawi\appdata\roaming\python\python36\site-packages
ortools 7.0.6546 is already the active version in easy-install.pth

Installed c:\users\tsamawi\appdata\roaming\python\python36\site-packages\ortools-7.0.6546-py3.6-win-amd64.egg
Processing dependencies for ortools==7.0.6546
Searching for six==1.11.0
Best match: six 1.11.0
Adding six 1.11.0 to easy-install.pth file

Using c:\users\tsamawi\appdata\local\programs\python\python36\lib\site-packages
Searching for protobuf==3.6.1
Best match: protobuf 3.6.1
Adding protobuf 3.6.1 to easy-install.pth file

Using c:\users\tsamawi\appdata\local\programs\python\python36\lib\site-packages
Searching for setuptools==40.8.0
Best match: setuptools 40.8.0
Adding setuptools 40.8.0 to easy-install.pth file
Installing easy_install-script.py script to C:\Users\tsamawi\AppData\Roaming\Python\Python36\Scripts
Installing easy_install.exe script to C:\Users\tsamawi\AppData\Roaming\Python\Python36\Scripts
Installing easy_install-3.6-script.py script to C:\Users\tsamawi\AppData\Roaming\Python\Python36\Scripts
Installing easy_install-3.6.exe script to C:\Users\tsamawi\AppData\Roaming\Python\Python36\Scripts

Using c:\users\tsamawi\appdata\local\programs\python\python36\lib\site-packages
Finished processing dependencies for ortools==7.0.6546

tools\make detect_cc

c:\dev\or-tools-6.10X\or-tools>tools\make detect_cc
Relevant info for the C++ build:
PROTOC = "dependencies/install\\bin\\protoc.exe"
CCC = cl /EHsc /MD /nologo
CFLAGS = -nologo  /D__WIN32__ /DPSAPI_VERSION=1 /DNOMINMAX /DWIN32_LEAN_AND_MEAN=1 /D_CRT_SECURE_NO_WARNINGS /O2 -DNDEBUG /I. /Iortools/gen /I"dependencies\\install\\include" /I"dependencies\\install\\include" /DGFLAGS_DLL_DECL= /DGFLAGS_DLL_DECLARE_FLAG= /DGFLAGS_DLL_DEFINE_FLAG= /I"dependencies\\install\\include" /DGOOGLE_GLOG_DLL_DECL= /I"dependencies\\install\\include" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CLP /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CBC /DUSE_GLOP /DUSE_BOP /I"C:\dev\linear_solvers\glpk_4.65\w64\\include" /DUSE_GLPK /I"C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\include" /DUSE_SCIP /I"C:\dev\linear_solvers\Gurobi\win64\include" /DUSE_GUROBI /I"C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex\\include" /DUSE_CPLEX
LDFLAGS =
LINK_CMD = lib
DEPENDENCIES_LNK = psapi.lib ws2_32.lib shlwapi.lib "C:\dev\linear_solvers\glpk_4.65\w64\\glpk_4_65.lib" "C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\lib\\scip.lib" "C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\lib\\soplex.lib" /ignore:4006 "C:\dev\linear_solvers\Gurobi\win64\lib\gurobi81.lib" "C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex\\cplex1280.lib" "dependencies\\install\lib\zlib.lib" "dependencies\\install\lib\gflags_static.lib" "dependencies\\install\lib\glog.lib" "dependencies\\install\lib\libprotobuf.lib" "dependencies\\install\lib\absl_*.lib" "dependencies\\install\lib\coin\libCbcSolver.lib" "dependencies\\install\lib\coin\libCbc.lib" "dependencies\\install\lib\coin\libCgl.lib" "dependencies\\install\lib\coin\libClp.lib" "dependencies\\install\lib\coin\libOsiClp.lib" "dependencies\\install\lib\coin\libOsi.lib" "dependencies\\install\lib\coin\libCoinUtils.lib"
SRC_DIR = .
GEN_DIR = ortools/gen
CC_EX_DIR = examples/cpp
OBJ_DIR = objs
LIB_DIR = lib
BIN_DIR = bin
prefix = C:\\Program Files\\or-tools
OR_TOOLS_LNK =  lib\\ortools.lib
OR_TOOLS_LDFLAGS =
OR_TOOLS_LIBS = lib/ortools.lib

@tsamawi tsamawi changed the title [v6.10] Python, Gurobi: Linear solver not recognized [v6.10] Python, Gurob, GLPK and SCIPi: Linear solver not recognized Apr 18, 2019
@tsamawi tsamawi changed the title [v6.10] Python, Gurob, GLPK and SCIPi: Linear solver not recognized [v6.10] Python, Gurobi, GLPK and SCIP: Linear solver not recognized Apr 18, 2019
@Mizux
Copy link
Collaborator

Mizux commented Apr 18, 2019

can you provide us, the output of make detect_python to know if SWIG correctly get the /DUSE_XXX CFLAGS as well when building the solver wrapper (ed pywraplp).

off topic? todo(mizux): check why python wheel grab all the .md files :(

@Mizux
Copy link
Collaborator

Mizux commented Apr 18, 2019

Also first, we should check that external solver are working in C++ before testing them in python:

make run SOURCE=examples/tests/lp_test.cc

src: https://github.com/google/or-tools/blob/v6.10.x/examples/tests/lp_test.cc

then after we should test in python from the "build dir"

make run SOURCE=examples/tests/lp_test.py

src: https://github.com/google/or-tools/blob/v6.10.x/examples/tests/lp_test.py

then make install_python etc...

Sorry to ask so much tests...

@tsamawi
Copy link
Author

tsamawi commented Apr 18, 2019

Pas de problème

make detect_python

Relevant info for the Python build:
WINDOWS_PATH_TO_PYTHON = "C:\Users\tsamawi\AppData\Local\Programs\Python\Python36"
PYTHON_COMPILER = python.exe
PYTHON_EXECUTABLE = "C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\python.exe"
PYTHON_VERSION = 36
PYTHON3 = true
PYTHON_INC = /I"C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\\include"
PYTHON_LNK = "C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\\libs\\python36.lib"
PYTHON_LDFLAGS =
SWIG_BINARY = "dependencies\\install\\swigwin-3.0.12\\swig.exe"
SWIG_INC = -I"dependencies/install/include" -I"dependencies/install/include" -DGFLAGS_DLL_DECL= -DGFLAGS_DLL_DECLARE_FLAG= -DGFLAGS_DLL_DEFINE_FLAG= -I"dependencies/install/include" -DGOOGLE_GLOG_DLL_DECL= -I"dependencies/install/include" -I"dependencies/install/include" -I"dependencies/install/include/coin" -DUSE_CLP -I"dependencies/install/include" -I"dependencies/install/include/coin" -DUSE_CBC -DUSE_GLOP -DUSE_BOP -DABSL_MUST_USE_RESULT -I"C:\dev\linear_solvers\glpk_4.65\w64/include" -DUSE_GLPK -I"C:\dev\linear_solvers\SCIPOptSuite_6.0.1/include" -DUSE_SCIP -I"C:\dev\linear_solvers\Gurobi/win64/include" -DUSE_GUROBI -I"C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex/include" -DUSE_CPLEX
SWIG_PYTHON3_FLAG = -py3 -DPY3
SWIG_PYTHON_LIB_SUFFIX = dll
SET_PYTHONPATH = "set PYTHONPATH=c:\\dev\\or-tools-6.10X\\or-tools;c:\\dev\\or-tools-6.10X\\or-tools\\dependencies\\sources\\protobuf-3.6.1\\python &&"

make run SOURCE=examples/tests/lp_test.py

c:\dev\or-tools-6.10X\or-tools>make run SOURCE=examples/tests/lp_test.py
set PYTHONPATH=c:\\dev\\or-tools-6.10X\\or-tools;c:\\dev\\or-tools-6.10X\\or-tools\\dependencies\\sources\\protobuf-3.6.1\\python && "C:\Users\tsamawi\AppData\Local\Programs\Python\Python36\python.exe" examples\\tests\\lp_test.py

------ Linear programming example with GLOP_LINEAR_PROGRAMMING ------

*** Natural language API ***
Number of variables = 3
Number of constraints = 3
Problem solved in 2.000000 milliseconds
Optimal objective value = 733.333333
x1 = 33.333333
x2 = 66.666667
x3 = 0.000000
Advanced usage:
Problem solved in 2 iterations
x1: reduced cost = 0.000000
x2: reduced cost = 0.000000
x3: reduced cost = -2.666667
constraint 0: dual value = 0.666667
               activity = 600.000000
constraint 1: dual value = -0.000000
               activity = 200.000000
constraint 2: dual value = 3.333333
               activity = 100.000000
Sum of vars: (((<ortools.linear_solver.linear_solver_natural_api.VariableExpr object at 0x000001F72D5A8208> + 0) + x2) + x3) = 100.0

*** C++ style API ***
Number of variables = 3
Number of constraints = 3
Problem solved in 1.000000 milliseconds
Optimal objective value = 733.333333
x1 = 33.333333
x2 = 66.666667
x3 = 0.000000
Advanced usage:
Problem solved in 2 iterations
x1: reduced cost = 0.000000
x2: reduced cost = 0.000000
x3: reduced cost = -2.666667
constraint 0: dual value = 3.333333
               activity = 100.000000
constraint 1: dual value = 0.666667
               activity = 600.000000
constraint 2: dual value = -0.000000
               activity = 200.000000

------ Linear programming example with CLP_LINEAR_PROGRAMMING ------

*** Natural language API ***
Number of variables = 3
Number of constraints = 3
Problem solved in 1.000000 milliseconds
Optimal objective value = 733.333333
x1 = 33.333333
x2 = 66.666667
x3 = 0.000000
Advanced usage:
Problem solved in 2 iterations
x1: reduced cost = -0.000000
x2: reduced cost = 0.000000
x3: reduced cost = -2.666667
constraint 0: dual value = 0.666667
               activity = 600.000000
constraint 1: dual value = -0.000000
               activity = 200.000000
constraint 2: dual value = 3.333333
               activity = 100.000000
Sum of vars: (((<ortools.linear_solver.linear_solver_natural_api.VariableExpr object at 0x000001F72D54D7B8> + 0) + x2) + x3) = 100.0

*** C++ style API ***
Number of variables = 3
Number of constraints = 3
Problem solved in 1.000000 milliseconds
Optimal objective value = 733.333333
x1 = 33.333333
x2 = 66.666667
x3 = 0.000000
Advanced usage:
Problem solved in 2 iterations
x1: reduced cost = -0.000000
x2: reduced cost = 0.000000
x3: reduced cost = -2.666667
constraint 0: dual value = 3.333333
               activity = 100.000000
constraint 1: dual value = 0.666667
               activity = 600.000000
constraint 2: dual value = -0.000000
               activity = 200.000000

make run SOURCE=examples/tests/lp_test.cc

c:\dev\or-tools-6.10X\or-tools>make run SOURCE=examples/tests/lp_test.cc
cl /EHsc /MD /nologo -nologo  /D__WIN32__ /DPSAPI_VERSION=1 /DNOMINMAX /DWIN32_LEAN_AND_MEAN=1 /D_CRT_SECURE_NO_WARNINGS /O2 -DNDEBUG /I. /Iortools/gen /I"dependencies\\install\\include" /I"dependencies\\install\\include" /DGFLAGS_DLL_DECL= /DGFLAGS_DLL_DECLARE_FLAG= /DGFLAGS_DLL_DEFINE_FLAG= /I"dependencies\\install\\include" /DGOOGLE_GLOG_DLL_DECL= /I"dependencies\\install\\include" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CLP /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CBC /DUSE_GLOP /DUSE_BOP /I"C:\dev\linear_solvers\glpk_4.65\w64\\include" /DUSE_GLPK /I"C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\include" /DUSE_SCIP /I"C:\dev\linear_solvers\Gurobi\win64\include" /DUSE_GUROBI /I"C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex\\include" /DUSE_CPLEX \
 -c examples\\tests\\lp_test.cc \
 /Foobjs\\lp_test.obj
lp_test.cc
cl /EHsc /MD /nologo -nologo  /D__WIN32__ /DPSAPI_VERSION=1 /DNOMINMAX /DWIN32_LEAN_AND_MEAN=1 /D_CRT_SECURE_NO_WARNINGS /O2 -DNDEBUG /I. /Iortools/gen /I"dependencies\\install\\include" /I"dependencies\\install\\include" /DGFLAGS_DLL_DECL= /DGFLAGS_DLL_DECLARE_FLAG= /DGFLAGS_DLL_DEFINE_FLAG= /I"dependencies\\install\\include" /DGOOGLE_GLOG_DLL_DECL= /I"dependencies\\install\\include" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CLP /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CBC /DUSE_GLOP /DUSE_BOP /I"C:\dev\linear_solvers\glpk_4.65\w64\\include" /DUSE_GLPK /I"C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\include" /DUSE_SCIP /I"C:\dev\linear_solvers\Gurobi\win64\include" /DUSE_GUROBI /I"C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex\\include" /DUSE_CPLEX \
 objs\\lp_test.obj \
  lib\\ortools.lib  \
 /Febin\\lp_test.exe
bin\\lp_test.exe
I0418 16:26:57.044550 220896 lp_test.cc:79] ---- Linear programming example with GLOP ----
I0418 16:26:57.045560 220896 lp_test.cc:50] Number of variables = 2
I0418 16:26:57.048068 220896 lp_test.cc:51] Number of constraints = 3
I0418 16:26:57.050585 220896 lp_test.cc:58] Solution:
I0418 16:26:57.051092 220896 lp_test.cc:59] x = 6
I0418 16:26:57.052070 220896 lp_test.cc:60] y = 4
I0418 16:26:57.052608 220896 lp_test.cc:61] Optimal objective value = 34
I0418 16:26:57.053092 220896 lp_test.cc:62]
I0418 16:26:57.054064 220896 lp_test.cc:63] Advanced usage:
I0418 16:26:57.054558 220896 lp_test.cc:64] Problem solved in 9 milliseconds
I0418 16:26:57.055066 220896 lp_test.cc:65] Problem solved in 2 iterations
I0418 16:26:57.056066 220896 lp_test.cc:66] x: reduced cost = 8.88178e-16
I0418 16:26:57.059065 220896 lp_test.cc:67] y: reduced cost = 0
I0418 16:26:57.059564 220896 lp_test.cc:69] c0: dual value = 2.33333 activity = 14
I0418 16:26:57.060065 220896 lp_test.cc:71] c1: dual value = -0 activity = 14
I0418 16:26:57.060569 220896 lp_test.cc:73] c2: dual value = 0.666667 activity = 2
I0418 16:26:57.061564 220896 lp_test.cc:83] ---- Linear programming example with CLP ----
I0418 16:26:57.062067 220896 lp_test.cc:50] Number of variables = 2
I0418 16:26:57.062564 220896 lp_test.cc:51] Number of constraints = 3
I0418 16:26:57.064599 220896 lp_test.cc:58] Solution:
I0418 16:26:57.065104 220896 lp_test.cc:59] x = 6
I0418 16:26:57.065564 220896 lp_test.cc:60] y = 4
I0418 16:26:57.066066 220896 lp_test.cc:61] Optimal objective value = 34
I0418 16:26:57.066570 220896 lp_test.cc:62]
I0418 16:26:57.067566 220896 lp_test.cc:63] Advanced usage:
I0418 16:26:57.068064 220896 lp_test.cc:64] Problem solved in 5 milliseconds
I0418 16:26:57.068563 220896 lp_test.cc:65] Problem solved in 2 iterations
I0418 16:26:57.068563 220896 lp_test.cc:66] x: reduced cost = -2.22045e-16
I0418 16:26:57.069063 220896 lp_test.cc:67] y: reduced cost = -2.22045e-16
I0418 16:26:57.069563 220896 lp_test.cc:69] c0: dual value = 2.33333 activity = 14
I0418 16:26:57.070567 220896 lp_test.cc:71] c1: dual value = -0 activity = 14
I0418 16:26:57.071066 220896 lp_test.cc:73] c2: dual value = 0.666667 activity = 2
I0418 16:26:57.071565 220896 lp_test.cc:87] ---- Linear programming example with GLPK ----
F0418 16:26:57.072064 220896 linear_solver.cc:393] Linear solver not recognized.
*** Check failure stack trace: ***
make: *** [run] Error -1073740791

@Mizux
Copy link
Collaborator

Mizux commented Apr 18, 2019

So what I see:

  • USE_XXX are correctly inserted in the command line in python (detect_python SWIG_INC) and when building the C++ sample test_lp.cc
  • at runtime in C++ the sample crash, it seems the lib still does not recognize the GLPK (i.e. optional) solver -> (my hypothesis) did you clean before enabling all solvers ?
make clean_cc
make cc
make run SOURCE=examples/tests/lp_test.cc

should make it, once the "test" pass, do the same for the python layer
i.e.

make clean_python
make python

note: I suppose you export the WINDOWS_XXXX_DIR for each solver or set it in the Makefile.local otherwise you need to pass them at each command etc...

@tsamawi
Copy link
Author

tsamawi commented Apr 19, 2019

After running make cc I ran into the following issues:

  1. .\\ortools\\linear_solver\\scip_interface.cc(28): fatal error C1083: Cannot open include file: 'ortools/base/status_macros.h': No such file or directory tools\make: *** [objs/linear_solver/scip_interface.obj] Error 2

Copied status_macros.h from or-tools-6.10X/or-tools/dependencies/sources/protobuf-3.6.1/src/google/protobuf/stubs to or-tools-6.10X/ortools/base/

  1. .\ortools/base/status.h(63): error C2617: 'util::OkStatus': inconsistent return statement .\ortools/base/status.h(63): note: see declaration of 'util::OkStatus' .\ortools/base/status_macros.h(38): fatal error C1083: Cannot open include file: 'google/protobuf/stubs/statusor.h': No such file or directory make: *** [objs/linear_solver/scip_interface.obj] Error 2

Copied the folder or-tools-6.10X/or-tools/dependencies/sources/protobuf-3.6.1/src/google to or-tools-6.10X/ortools/base/. It is still failing here.

Could this be a versioning issue? It's unusual to have files missing from the appropriate directories, unless these are known bugs.

@Mizux
Copy link
Collaborator

Mizux commented Apr 19, 2019

Are you using master or the v6.10.X branch

  • v6.10.X scip_interface does not need this file but is not anymore supported
    #include "ortools/base/commandlineflags.h"
    #include "ortools/base/hash.h"
    #include "ortools/base/integral_types.h"
    #include "ortools/base/logging.h"
    #include "ortools/base/port.h"
    #include "ortools/base/stringprintf.h"
    #include "ortools/base/timer.h"
    #include "ortools/linear_solver/linear_solver.h"
  • v7.0 tag or stable branch are broken (missign the file but scip_interface need it)
    #include "ortools/base/canonical_errors.h"
    #include "ortools/base/commandlineflags.h"
    #include "ortools/base/hash.h"
    #include "ortools/base/integral_types.h"
    #include "ortools/base/logging.h"
    #include "ortools/base/status.h"
    #include "ortools/base/status_macros.h"
    #include "ortools/base/timer.h"
    #include "ortools/linear_solver/linear_solver.h"
  • master have just been fixed (for this file but there is still issue which remains...)
    see https://github.com/google/or-tools/commits/master/ortools/base/status_macros.h

note: I'm "currently" working on master branch to fix all issue spotted little by little, sorry for the delay

@tsamawi
Copy link
Author

tsamawi commented Apr 19, 2019

My bad, it looks like I was on stable. I'm currently running through the build process on the branch 6.10.X. Standby for results...
No worries on the small issues, and thank you for your quick responses :)

@tsamawi
Copy link
Author

tsamawi commented Apr 24, 2019

Running tools\make python and tools\make cc under the branch 6.10.x both delete makefile.local as their first step.
Which files get run when you execute tools\make cc and tools\make python?

@Mizux
Copy link
Collaborator

Mizux commented Apr 25, 2019

All Makefile is in Makefile and makefiles directory.

concerning makefile.local the command make clean_third_party will remove it (don't remember why sorry), but please also notice the recipe and requirement

Makefile.local: makefiles/Makefile.third_party.$(SYSTEM).mk
-$(DEL) Makefile.local

My guess, when changing branch, makefiles/Makefile.third_party.win.mk has been touch so Make decided to rebuild it, and since the first command is to erase the actual one if any...

@tsamawi
Copy link
Author

tsamawi commented Apr 25, 2019

Is make python supposed to remove it as well? I just looked at the source code but I couldn't find a delete statement under make python.
I've removed line 177, and am re-running now.

@Mizux
Copy link
Collaborator

Mizux commented Apr 25, 2019

If i recall correctly python depends on cc which depends on $(OR-TOOLS_LIBS) which depends on dependencies/check.log which depends on Makefile.local which depends on makefiles/Makefile.third_party.win.mk ;)

note: dependencies/check.log build don't depends on build third parties (i.e. call target third_party) but just check they are availables...

note: I guess dependencies/check.log should also just check if Makefile.local is here than trying to rebuild it if needed. The point is to separate the third party setup/build from the ortools build. ortools build just check that third party has been build at least once...

@tsamawi
Copy link
Author

tsamawi commented Apr 25, 2019

tools\make python

copy ortools\\__init__.py ortools\\gen\\ortools\\__init__.py
        1 file(s) copied.
"dependencies\\install\\swigwin-3.0.12\\swig.exe" -I"dependencies/install/include" -I"dependencies/install/include" -DGFLAGS_DLL_DECL= -DGFLAGS_DLL_DECLARE_FLAG= -DGFLAGS_DLL_DEFINE_FLAG= -I"dependencies/install/include" -DGOOGLE_GLOG_DLL_DECL= -I"dependencies/install/include" -I"dependencies/install/include" -I"dependencies/install/include/coin" -DUSE_CLP -I"dependencies/install/include" -I"dependencies/install/include/coin" -DUSE_CBC -DUSE_GLOP -DUSE_BOP -DMUST_USE_RESULT -I"C:\dev\linear_solvers\glpk_4.65\w64/include" -DUSE_GLPK -I"C:\dev\linear_solvers\SCIPOptSuite_6.0.1/include" -DUSE_SCIP -IC:\dev\linear_solvers\Gurobi/win64/include -DUSE_GUROBI -I"C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex/include" -DUSE_CPLEX -I. -c++ -python -py3 -DPY3 \
 -o ortools\\gen\\ortools\\algorithms\\knapsack_solver_python_wrap.cc \
 -module pywrapknapsack_solver \
 ortools\\algorithms\\python\\knapsack_solver.i
cl /EHsc /MD /nologo -nologo  /D__WIN32__ /DPSAPI_VERSION=1 /DNOMINMAX /O2 -DNDEBUG /I. /Iortools/gen /I"dependencies\\install\\include" /I"dependencies\\install\\include" /DGFLAGS_DLL_DECL= /DGFLAGS_DLL_DECLARE_FLAG= /DGFLAGS_DLL_DEFINE_FLAG= /I"dependencies\\install\\include" /DGOOGLE_GLOG_DLL_DECL= /I"dependencies\\install\\include" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CLP /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /DUSE_CBC /DUSE_GLOP /DUSE_BOP /I"C:\dev\linear_solvers\glpk_4.65\w64\\include" /DUSE_GLPK /I"C:\dev\linear_solvers\SCIPOptSuite_6.0.1\\include" /DUSE_SCIP /IC:\dev\linear_solvers\Gurobi\win64\include /DUSE_GUROBI /I"C:\dev\linear_solvers\CPLEX_Studio_Community128\cplex\\include" /DUSE_CPLEX /IC:\Users\tsamawi\AppData\Local\Programs\Python\Python36\\include -DPY3 \
 -c ortools\\gen\\ortools\\algorithms\\knapsack_solver_python_wrap.cc \
 /Foobjs\\swig\\knapsack_solver_python_wrap.obj
knapsack_solver_python_wrap.cc
ZLIB: found
GFLAGS: found
GLOG: found
PROTOBUF: found
COINUTILS: found
OSI: found
CLP: found
CGL: found
CBC: found
SCIP: found
tools\win\touch.exe dependencies\check.log
cl /EHsc /MD /nologo -nologo  /D__WIN32__ /DPSAPI_VERSION=1 /DNOMINMAX /O2 -DNDEBUG /I. /Iortools/gen /I"dependencies\\install\\include" /I"dependencies\\install\\include" /DGFLAGS_DLL_DECL= /DGFLAGS_DLL_DECLARE_FLAG= /DGFLAGS_DLL_DEFINE_FLAG= /I"dependencies\\install\\include" /DGOOGLE_GLOG_DLL_DECL= /I"dependencies\\install\\include" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" /I"dependencies\\install\\include" /I"dependencies\\install\\include\\coin" 
.
.
.
   Creating library lib\\_pywraprcpsp.lib and object lib\\_pywraprcpsp.exp
LINK : /LTCG specified but no code generation required; remove /LTCG from the link command line to improve linker performance
copy lib\\_pywraprcpsp.dll ortools\\gen\\ortools\\data\\_pywraprcpsp.pyd
        1 file(s) copied.

Not sure why it's not detecting Gurobi. I'm running tools\make cc now. If tools\make cc is required, can we add it to the docs?

@tsamawi
Copy link
Author

tsamawi commented Apr 25, 2019

tools\make cc

c:\dev\or-tools-6.10X\or-tools>tools\make cc
tools\make: Nothing to be done for `cc'.

I'm also getting:

AttributeError: type object 'Solver' has no attribute 'SCIP_MIXED_INTEGER_PROGRAMMING'

@tsamawi
Copy link
Author

tsamawi commented May 1, 2019

Any updates?

@Mizux
Copy link
Collaborator

Mizux commented May 2, 2019

master branch has been fixed concerning SCIP integration.
I tested it on macOS, Windows and Linux please follow #1115

note: on windows the scip/src/CMakeLists.txt of SCIPoptsuite is broken -> you need to patch it see my comments...

@Mizux Mizux added the Solver: CPLEX CPLEX Solver related issue label May 6, 2019
@lperron lperron closed this as completed Aug 6, 2019
User Question automation moved this from To do to Done Aug 6, 2019
@Mizux Mizux self-assigned this Oct 26, 2020
@Mizux Mizux added this to the v8.0 milestone Feb 12, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Build: Makefile Makefile based build issue Lang: C++ Native implementation issue OS: Windows Windows OS Solver: CPLEX CPLEX Solver related issue Solver: Gurobi GUROBI Solver related issue
Projects
User Question
  
Done
Development

No branches or pull requests

3 participants