-
Notifications
You must be signed in to change notification settings - Fork 4
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
Make test fails for CBC with 78 unresolved external symbols when building using msvc at command line #62
Comments
Attachment config.site by devos created at 2018-01-03 09:02:42 |
Attachment config.log by devos created at 2018-01-03 09:02:58 |
Attachment config-cbc.log by devos created at 2018-01-03 09:03:14 |
Attachment config-cgl.log by devos created at 2018-01-03 09:03:27 |
Attachment msys_vars.log by devos created at 2018-01-03 09:03:44 |
Attachment make.log by devos created at 2018-01-03 09:03:57 |
Attachment maketest.log by devos created at 2018-01-03 09:04:08 |
Comment by @tkralphs created at 2018-01-04 15:40:17 Most likely, the problem is that you need the dos2unix command installed. See https://projects.coin-or.org/OS/attachment/ticket/62/make.log#L2747 I don't recall if that command can be installed with pacman, but some Googling should yield a solution. I guess we should be checking for dos2unix and throwing an error in configuration if it's not found. I opened a new issue here. |
Comment by devos created at 2018-01-04 15:58:38 Thank you. I have installed dos2unix and will run make again now. |
Comment by devos created at 2018-01-04 20:54:29 Installing dos2unix seems to have addressed the 78 unresolved externals for CBC. Now there is an error that seems to be related to CppAD and SPEED_DIRS: make[1]: Leaving directory `/c/coin-os/5287.1/Cbc' Making all in cppad make[1]: Entering directory `/c/coin-os/5287.1/cppad' cp cppad/configure.hpp ../../cppad/cppad/configure.hpp SPEED_DIRS = make[1]: SPEED_DIRS: Command not found make[1]: * * * [../../cppad/cppad/configure.hpp] Error 127 make[1]: Leaving directory `/c/coin-os/5287.1/cppad' make: * * * [all-recursive] Error 1 There are also 14 occurrences of the following warning; it was also in the last make. Will this cause any problems?: libtool: link: warning: undefined symbols not allowed in i686-pc-mingw32 shared libraries |
Attachment [make 1-4-18 141pm.log](https://www.coin-or.org/issue-attachments/OS/ticket62/make 1-4-18 141pm.log) by devos created at 2018-01-04 20:55:19 |
Comment by devos created at 2018-01-04 21:05:36 I also got the following warning. Do I need to do anything for this?:
|
Comment by devos created at 2018-01-04 21:36:25 I found two recommendations online regarding the libtool: link: warning: undefined symbols not allowed in i686-pc-mingw32 shared libraries. Do you recommend either/both of these solutions?:
|
Comment by devos created at 2018-01-05 14:53:35 I have attached the config.log from the cppad subdirectory (config-cppad.log). Could the errors reported there be the cause of the 'SPEED_DIRS: Command not found' error? |
Attachment config-cppad.log by devos created at 2018-01-05 14:54:49 |
Comment by devos created at 2018-01-05 18:58:12 The makefile in the cppad subdirectory has these lines:
Maybe these lines were commented out because Ipopt was skipped in the configuration step. If I build CppAD using cmake prior to running configure, how would I prevent configure from writing over the CppAD make files? |
Comment by devos created at 2018-01-05 19:21:26 I found these lines in cppad\makefile.am.
My problem may be that CppAD_HAVE_AR is not set. Where/how do I set that? |
Comment by devos created at 2018-01-08 22:04:13 I was finally able to get the build to complete. These are the steps I took:
|
Issue created by migration from Trac.
Original creator: devos
Original creation time: 2018-01-03 09:01:27
Keywords: trunk 5287, OS, CBC
Using Microsoft cl compiler and MSYS following instructions in Optimization Services Manual, make test fails for trunk d2ae03a -- cbc.exe : fatal error LNK1120: 78 unresolved externals (see attached maketest.log, make.log, config.log, config-cbc.log, config-cgl.log).
Also attached are a file containing all environment variables as defined in MSYS prompt window (msys_vars.log) and config.site file. I discovered that I had to add the 'enable_msvc=yes' configuration option to get CppAD to build.
I skipped Ipopt, DyLP, Couenne, Bonmin, Vol, and SYMPHONY and have only Glpk, ASL, and Metis in third party. (I excluded Ipopt, Mumps, Blas, and Lapack due to lack of a Fortran compiler.)
Is there some other configuration option that must be included to allow CBC to build?
Is there some misconfiguration of my environment variables or incompatibility among the components?
Did CBC fail due to one of the third party projects that were excluded?
Is there a change needed to the make file?
Or something else?
The text was updated successfully, but these errors were encountered: