Opened 6 months ago

Last modified 6 months ago

#60414 assigned defect

base: (linux) failed to determine number of available CPUs

Reported by: kencu (Ken) Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.6.2
Keywords: linux Cc:
Port:

Description (last modified by kencu (Ken))

Warning: failed to determine the number of available CPUs (probably not supported on this platform)
Warning: defaulting to 2 jobs, consider setting buildmakejobs to a nonzero value in macports.conf

when running PortIndex after installing MacPorts 2.6.2 on Ubuntu Linux 20.04, this error is noted a number of times when parsing the Portfiles of various ports.

Change History (13)

comment:1 Changed 6 months ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Unfortunately, I have no access to a Linux machine to track down this error.
Unless someone can offer any insight, we might have to close it as won't fix.

comment:2 Changed 6 months ago by kencu (Ken)

Yeah -- dunno -- Ryan is asking us to make sure that our Portfiles work on Linux -- so I figured I might as well start to figure out if MacPorts works on Linux at all, and start opening some tickets to see what is what when it comes to MacPorts on Linux.

If it is going to be a "wontfix" for any linux issues, we might as well stop trying to support it with "platform darwin" everywhere. That could be a reasonable decision, I don't know.

comment:3 Changed 6 months ago by kencu (Ken)

As an aside, MP 2.6.2 installs on linux (Ubuntu 20.04, six days old now) with no trouble at all, after installing some required packages that are normally found on MacOS system installations, all of them (pretty much) outlined on the MP install page. So that went very smoothly, and kudos there to Josh et al...

comment:4 Changed 6 months ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

When any of us have an issue with an older system, we usually turn to ... Ken.
I am not sure if we have an equivalent person for Linux.
I would be happy to look around for a solution, but maintaining ports on the different versions of macOS is tricky enough.

Perhaps I am getting too far afield of this ticket.
How much effort to put into Linux may be an issue for the mailing lis.
In the meantime, as I said, I will try to solve this particular problem as best I am able.

comment:5 Changed 6 months ago by kencu (Ken)

Totally agree -- linux is kinda fun... up to the group. I certainly don't need to open any tickets.

Is there interest in a one-pager about how to install MacPorts on Ubuntu? That is actually pretty simple, if we want to encourage that process.

comment:6 Changed 6 months ago by kencu (Ken)

Hmmm ... may not be worth spending time on, in the end. Nothing will install, at all, not even a single simple port. Unless we get really lucky and there is some setting in macports.conf that suddenly makes it all work, this looks like a project...

comment:7 Changed 6 months ago by jmroot (Joshua Root)

This doesn't actually break anything and isn't really a problem with a specific port, base just has no support for determining the number of CPUs on Linux. You'll see this any time the default value of build.jobs is read.

comment:8 Changed 6 months ago by kencu (Ken)

Description: modified (diff)
Owner: MarcusCalhoun-Lopez deleted
Port: qt513-qtbase-docs removed
Summary: qt513-qtbase-docs: (linux) failed to determine number of available CPUsbase: (linux) failed to determine number of available CPUs

comment:9 Changed 6 months ago by kencu (Ken)

It is not unreasonable at this juncture to have some as-yet-not-yet-started linux instructions for MacPorts indicate that the user has to set the number of processors manually with buildmakejobs

comment:10 Changed 6 months ago by kencu (Ken)

HEY! MacPorts does work on Ubuntu linux after all.

The compiler selection logic is broken, but as Ubuntu either comes with clang-10 or I installed clang-10 along the way (not sure which one just now), if you force the compiler to bypass the compiler selection logic, it builds with /usr/bin/clang and that 'just works!'.

sudo port -v install libffi configure.compiler=clang
$ port -v installed
The following ports are currently installed:
  libffi @3.2.1_0 (active) platform='linux 5' archs='i386' date='2020-04-30T16:39:06-0700'

comment:11 Changed 6 months ago by kencu (Ken)

the archs are messed up, though:

$ file /opt/local/lib/libffi.so.6.0.4
/opt/local/lib/libffi.so.6.0.4: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=52e6b9a035a28a3ec9a4bd9953b5daa36d4d85be, not stripped

comment:12 in reply to:  2 Changed 6 months ago by ryandesign (Ryan Schmidt)

Replying to kencu:

Ryan is asking us to make sure that our Portfiles work on Linux

No, I'm not; I merely pointed out that a block you added to a port would cause a parse failure on any OS other than Darwin, and we want to avoid that a parse failure would exist on any system.

comment:13 Changed 6 months ago by kencu (Ken)

Yes "work on Linux" should have been worded "parse on Linux", apologies.

Note: See TracTickets for help on using tickets.