-
Notifications
You must be signed in to change notification settings - Fork 14
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
Error installing coinutils on Mac M1 #62
Comments
This doesn't really seem to be a problem with the homebrew recipe per se, but just an issue with CoinUtils itself. Looks like it should be easy to isolate and debug. It's a failure of a test dividing a packed vector by an empty (all zeros) packed vector element-wise. So it's basically testing what happens when we divide by zero. The result is apparently supposed to be "infinity" and I guess what is failing here is that the compiler must not be adhering to some IEEE standard or another. This looks like a failure that is unlikely to affect any real computation. I can't imagine a solver actually performing this operation, but technically, it should work. It's going to be hard to track down without direct access to an M1 box, but if you're willing, it shouldn't be too difficult to see what's going on by just building CoinUtils with debugging enabled and running the unit (or pulling it out into a small demonstration code). The operator being tested is defined here: and the test itself is here: Maybe you could open an issue in CoinUtils (I can't transfer this one, since it's in a different organization). |
I've got the same problem and tried to debug it. Here's what I've found:
So, I hope that current development from master will soon be released as new version, and that homebrew formulas will be updated accordingly. For now I will stick to building from source. |
@Alexander-Belyi Thanks very much for following up and for this explanation. I'm hoping we can indeed get the |
@tkralphs just wondering if there was any update on the next CoinUtils release? Cheers! |
I made some progress, but not there yet, thanks for the ping. Optimistically, I will get to it soon! |
Great, thanks for the update! |
Hi all. While installing CBC using Brew I got the same message I believe as @dirkschumacher above:
After which I tried to run cbc for solving a model I have created. But when I enter "cbc" in the terminal I get the following: Is this due to the fact that I have a M1 Pro processor and that the issue with |
Yes, exactly. The build process never completed, so there is no |
… it in that case. This should fix coin-or-tools/homebrew-coinor#62
I've finally found some time to look into this and do some releases. Sorry for the long delay---the fix I landed on turned out not to be too difficult. As @Alexander-Belyi made clear above, this test just doesn't make sense when I made the new release that should fix this, but I'm having major troubles upgrading packages on my now very old OS X box that I use for testing, so I haven't been able to push the changes to the recipe. If anyone wants to do this and open a PR, that would be helpful. The download URL should be changed to Github: https://github.com/coin-or/CoinUtils/archive/refs/tags/releases/2.11.5.tar.gz. There is also a recipe in homebrew core that I assume will get an auto update (?), so that could also be an easier path. I'll be making releases for all the packages in the Cbc stack in the next day or two (Osi is also done already), so all will need to be modified. |
@tkralphs this is great, thanks! I'm happy to help with this, just don't quite know the steps to go through. Is it a case of updating coinutils.rb to point to the latest release, and them somehow testing it locally? Edit - I see you say what to do so it's just testing locally that needs doing. |
If you just do |
I'm seeing the same error, is it possible that something is being cached?
|
Argh, the failure analyzed by @Alexander-Belyi is actually different than the one originally reported, though they have the same cause. Looks like we need another release :). Oh well, this will give me a chance to further refine my release automation! Stay tuned... |
OK, there's now a release 2.11.6, which I tested by forcing COIN_C_FINITE to be undefined. Everything passed for me. Can you try it? Same procedure... |
Thanks, @tkralphs, for getting to this! Also, please, note that probably the second fix should be applied to |
Thanks everyone! |
Yes, thanks for the reminder. This is done now. I assume that everything is working with the new releases and we can close this issue? |
Great, thanks. Yes, everything works for me. |
Yes all working well, thanks! |
@Alexander-Belyi I've now made releases Clp 1.17.7, Cgl 0.60.4, and Cbc 2.10.6 as well. |
@tkralphs Something is wrong with Cbc 2.10.6: the script gets stuck when running |
Hmm, everything seems to go smoothly on CI and on my local tests. |
It worked fine for me on an M1 using the most recent homebrew formula. |
By the way, if anyone can easily help set up CI here, I would be grateful. I'm struggling to get homebrew packages upgraded on my old OS X box, so I currently have no way of doing any testing. I may just get a Mac mini one of these days, but in the meantime, it would be nice to have a robust CI working. |
Yes, sir: #68 |
@dpo Good to see you, thanks! |
No, I was just using the existing formula ##################################################
### Building ThirdParty/Metis 1.3.10
##################################################
projects/coinbrew/ThirdParty/Metis/metis-4.0/Lib/compress.c:151:3: error: implicit declaration of function '__GKfree' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
GKfree(&keys, &map, &mark, LTERM);
^
projects/coinbrew/ThirdParty/Metis/metis-4.0/Lib/rename.h:380:19: note: expanded from macro 'GKfree'
#define GKfree __GKfree
^
1 error generated.
make: *** [compress.lo] Error 1 I don't see this dependency on Metis in |
Metis is an optional dependency, so you can build with |
Hmm, it builds without problems using |
If I recall, there are options |
Thanks, yes, it helps. |
Ah, that helps. But it's weird... do you have the coin_data_sample package installed? I think if you can ctrl-C out of the build process, it will give you the option to drop into a shell in the build directory. Grab the |
I have a MacBook M1 here and just tried to install
coinutils
but it fails onmake test
The text was updated successfully, but these errors were encountered: