-
Notifications
You must be signed in to change notification settings - Fork 176
Improve install instructions, fix C++ compiler dependency #740
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
Improve install instructions, fix C++ compiler dependency #740
Conversation
This way, it is much more please to read as a text file, i.e. without rendering it on a website.
While many markdown parsers will automatically recognize HTTP urls and emails, not all do that. And if an URL is followed by e.g. a period, when rendering the markdown to HTML, that period may inadvertently end up as part of the hyperlink.
The term UNIX is trademarked and refers to *the* UNIX operating system, but not its derivates. Mac OS X actually is a direct descendant of a version UNIX, and thus directly related to UNIX (it is derived from FreeBSD, which in turn is derived from BSD UNIX). Thus it seems weird to refer to "Unix and OS X". However, some OS X users may not realize that a section about "Unix" is relevant for them, so I sometimes used expressions like "Unix (including OS X)". By the way, note that Linux (which most people will consider a Unix) strictly speaking is NOT a direct member of the Unix family: While developed to be compatible with UNIX, it (at least originally) shares no code with it, and thus is a "UNIX clone". So in a sense, it is a less "a Unix" than OS X. Of course that just shows how silly that distinction is, nothing else. I just mention it to reinforce that if we call Linux a Unix, then we should do so the same for OS X.
- Don't promise a binary distribution for OS X "soon": It helps nobody and just makes us look foolish when we don't deliver. And *if* we ever offer one, we can still tell people about it. - Fix spelling of 'Xcode', and update the installation instruction to match what was the standard for the past couple years. People on older systems will (still!) have to ask us or google to get instructions, but at least this way we don't needlessly confuse people who use OS X 10.9 or later.
|
The anupq comes from the InstPackages32.sh script, which contains: So at some point, someone thought these needed specially passing, and I just copied that on down. If a 32-bit build on a 64-bit machine just works, then I don't think there has to be a special case anymore. |
INSTALL.md
Outdated
|
|
||
| or | ||
|
|
||
| ./configure ABI=32 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These are identical?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Copy & paste error, thanks for spotting, will fix (but I'll give people some time to review more first :)
|
My patch to BuildPackages.sh was just the following. Feel free to modify or ignore as you wish. I think we can go further than this after your commit (perhaps gathering the packages that build, and don't build, to print some simple statistics at the very end). |
|
I think @alex-konovalov added that anupq build commands. Anyway, I now verified on two machines (one Ubuntu, one OS X) that correct 32 bit versions of anupq get built. I added your improvements for the output of You had two remarks on improving FAQ items. While these sound valid, I'd rather not address them with this PR, simply because I want to get this merged ASAP, and I don't have the nerves to fret over the perfect formulation there right now... |
018e0bc to
79ef037
Compare
New releases include the version in the directory name.
In particular, advertise bin/BuildPackages.sh and stop referencing the old InstPackages.sh and InstPackages32.sh scripts.
I could not determine its purpose. In particular, 32 bit builds seem to work fine without it.
|
It would be great if people could test this, e.g. perhaps @alex-konovalov could give it a spin? Once we merge this, we also should merge this back into master. And update http://www.gap-system.org/Download/tools.html suitably. |
|
@fingolfin @ChrisJefferson for ANUPQ, see gap-packages/anupq#17 - I was advised to always build it in 32-bit mode. |
|
@alex-konovalov I don't see how that answers anything -- it just contains a comment by you that you will from now on use that specific set of commands to compiler anupq, but it doesn't explain how you arrived at it... I vaguely recall giving some recommendations how compiling in 32bit mode might work, but I can't find it right now. |
|
@fingolfin I will check this, will plan to merge it next week (hopefully after current test failures will disappear) |
|
Here is one issue with Then this won't work quite right -- because for many packages (in particular: most (all?) that don't use autoconf), the build system won't detect that anything changed, and thus won't recompile the source files. So no 64 bit version is built, and/or there is a linker error. Perhaps we should insert a "make clean", before doing |
|
@fingolfin I assumed you know, because it was you who created that issue ;-) But I've tried to find some traces of that discussion on my machine, and can't find any too. I think some time ago there was a problem with building ANUPQ on a 64-bit machine, and it was suggested to try to always enforce its 32-builds. Of course, we can drop that and then see if the problem was fixed by some other changes happening in the meantime in ANUPQ, or if it is still there... |
|
@fingolfin regarding buildibg both a 32bit and 64bit version of GAP in the same source tree - |
|
Unfortunately, doing a Of course, we should probably move towards make packages |
|
Ahhhh, now I understand (I think). Seems we've been talking past each other: Yeah, there are (potential) issues with using anupq in 64 bit mode, and no, nobody worked on fixing them. So, that's what gap-packages/anupq#17 is about, and what I added to it. However, the anupq special case in So, now that this is clear, I can add back a new, "correct" special case for anupq. But first, I want to finally conduct some experiments to determine whether it is really necessary. |
|
I've checked this PR on my Ubuntu desktop and happy to merge it now. It will go into stable-4.8 where tests runs without diffs now, so we will now which change to blame :) |
This PR for the stable-4.8 branch
The latter script is meant to replace
InstPackages.sh.Before this merged, a few things need to happen (probably by adding commits to this PR):