Opened 13 years ago
Closed 13 years ago
#34122 closed defect (fixed)
apple-gcc42: make: the `-j' option requires a positive integral argument
Reported by: | darylew@… | Owned by: | jeremyhu (Jeremy Huddleston Sequoia) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.0.4 |
Keywords: | Cc: | ryandesign (Ryan Carsten Schmidt) | |
Port: | apple-gcc42 |
Description
System: an August-2002 eMac G4 running Mac OS X 10.4.11 Tiger/PowerPC (32-bit)
Built-in Compiler: Apple-GCC 4.0.1 w/ XCode 2.5
A little while ago, I did the standard "selfupdate" and "update outdated" cycle. It ended because "apple-gcc42" was added as a dependency to something I already had. The log for that program indicated that it was expecting that my system to be more Intel compatible than it is.
Tried sending a message to the MacPorts-Users list for help, but it was rejected for attaching too large a document (the uncompressed log file). The admin suggested watching Issue #33939.
That issue just got fixed. I did "clean apple-gcc42", "selfupdate", and "update outdated". I got another bad ending due to apple-gcc42, but this time I can't find what exactly is wrong (from a brief search of the log, at least). I'm going to attach the log for apple-gcc42 from this second attempt.
Attachments (1)
Change History (11)
Changed 13 years ago by darylew@…
Attachment: | main.log.bz2 added |
---|
comment:1 Changed 13 years ago by darylew@…
Getting frustrated with all these setbacks, I did "port install gcc47". I was quite surprised that it wanted "apple-gcc42" (and "llvm-3.0") as dependencies. It's still building at this time, but the apple-gcc42 part passed!
(doing cctools-headers) ---> Building apple-gcc42 ---> Staging apple-gcc42 into destroot ---> Installing apple-gcc42 @5666.3_4 ---> Activating apple-gcc42 @5666.3_4 ---> Cleaning apple-gcc42 (doing llvm_select)
I didn't do any updates; was it just a minor data burp?
comment:2 follow-up: 3 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ryandesign@… added |
---|---|
Owner: | changed from macports-tickets@… to jeremyhu@… |
Summary: | Apple-GCC 4.2 doesn't build → apple-gcc42: make: the `-j' option requires a positive integral argument |
The problem in the log is:
:info:build + make '-j 1' DESTDIR=/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_apple-gcc42/apple-gcc42/work/objroot/dst-powerpc-powerpc install-gcc install-target 'CFLAGS=-g -O2 -std=gnu89' 'CXXFLAGS=-g -O2 -std=gnu89' :info:build make: the `-j' option requires a positive integral argument :info:build Usage: make [options] [target] ... :info:build Options: :info:build -b, -m Ignored for compatibility. :info:build -B, --always-make Unconditionally make all targets. :info:build -C DIRECTORY, --directory=DIRECTORY :info:build Change to DIRECTORY before doing anything. :info:build -d Print lots of debugging information. :info:build --debug[=FLAGS] Print various types of debugging information. :info:build -e, --environment-overrides :info:build Environment variables override makefiles. :info:build -f FILE, --file=FILE, --makefile=FILE :info:build Read FILE as a makefile. :info:build -h, --help Print this message and exit. :info:build -i, --ignore-errors Ignore errors from commands. :info:build -I DIRECTORY, --include-dir=DIRECTORY :info:build Search DIRECTORY for included makefiles. :info:build -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg. :info:build -k, --keep-going Keep going when some targets can't be made. :info:build -l [N], --load-average[=N], --max-load[=N] :info:build Don't start multiple jobs unless load is below N. :info:build -n, --just-print, --dry-run, --recon :info:build Don't actually run any commands; just print them. :info:build -o FILE, --old-file=FILE, --assume-old=FILE :info:build Consider FILE to be very old and don't remake it. :info:build -p, --print-data-base Print make's internal database. :info:build -q, --question Run no commands; exit status says if up to date. :info:build -r, --no-builtin-rules Disable the built-in implicit rules. :info:build -R, --no-builtin-variables Disable the built-in variable settings. :info:build -s, --silent, --quiet Don't echo commands. :info:build -S, --no-keep-going, --stop :info:build Turns off -k. :info:build -t, --touch Touch targets instead of remaking them. :info:build -v, --version Print the version number of make and exit. :info:build -w, --print-directory Print the current directory. :info:build --no-print-directory Turn off -w, even if it was turned on implicitly. :info:build -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE :info:build Consider FILE to be infinitely new. :info:build --warn-undefined-variables Warn when an undefined variable is referenced. :info:build -N OPTION, --NeXT-option=OPTION :info:build Turn on value of NeXT OPTION. :info:build :info:build This program built for powerpc-apple-darwin8.0 :info:build Report bugs to <bug-make@gnu.org> :info:build + exit 1 :info:build make: *** [install] Error 1
As I said, this problem was unfamiliar to me. ("1" looks like a positive integral argument to me.) I'm not sure why it occurred, nor why when you tried again it would then work.
Do not be surprised that gcc47 required apple-gcc42. We are considering making all ports require apple-gcc42 on Tiger, since the gcc 4.0 included with Tiger's Xcode is so old. More importantly, the linker in Tiger's Xcode is very old. llvm-3.0 is a dependency of ld64, and ld64 is a dependency of all the gcc4x ports now. I don't know why ld64 was added as a dependency of the gcc4x ports globally instead of just for Tiger but presumably there is a reason.
comment:3 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Replying to ryandesign@…:
I don't know why ld64 was added as a dependency of the gcc4x ports globally instead of just for Tiger but presumably there is a reason.
If you're interested, this topic is currently being discussed on the mailing list, so we needn't get into it in this ticket.
comment:4 follow-up: 7 Changed 13 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Can you please try installing the gmake port and seeing if that allows apple-gcc42 to build?
comment:5 follow-up: 6 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
- He said it already built, just by trying again (without cleaning).
- Just installing the gmake port won't do anything; MacPorts uses "make" and the gmake port installs "gmake". Getting the port to use gmake would involve changing build.cmd.
comment:6 Changed 13 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Replying to ryandesign@…:
- He said it already built, just by trying again (without cleaning).
Yeah, but I'm suspicious of things like that which magically go away. I would like to see a clean second attempt.
- Just installing the gmake port won't do anything; MacPorts uses "make" and the gmake port installs "gmake". Getting the port to use gmake would involve changing build.cmd.
True.
comment:7 follow-up: 8 Changed 13 years ago by darylew@…
Replying to jeremyhu@…:
Can you please try installing the gmake port and seeing if that allows apple-gcc42 to build?
I already have gmake installed:
gmake @3.82_0 (active) platform='darwin 8' archs='ppc'
(from "port -v installed gmake"). But as ryandesign@… said, it wouldn't matter because MacPorts isn't set up to call it when building apple-gcc42. Should I try cleaning/uninstalling apple-gcc42 and building it again, anyway?
On a related note, I reopened my issue #33268, since llvm-3.0 has become an indirect dependency for the later GCC lines. (Right after my "all-fixed?" comment, "llvm-3.0" followed "llvm_select" and failed building.)
comment:8 follow-up: 9 Changed 13 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Replying to darylew@…:
Should I try cleaning/uninstalling apple-gcc42 and building it again, anyway?
Please
On a related note, I reopened my issue #33268, since llvm-3.0 has become an indirect dependency for the later GCC lines. (Right after my "all-fixed?" comment, "llvm-3.0" followed "llvm_select" and failed building.)
See the dupe of it. Tiger/ppc is one of the least supported combinations due to lack of interest and resources. Please try llvm-2.9. If it builds, we'll use that for Tiger's cctools.
comment:9 Changed 13 years ago by darylew@…
Replying to jeremyhu@…:
Replying to darylew@…:
Should I try cleaning/uninstalling apple-gcc42 and building it again, anyway?
Please
It worked.
On a related note, I reopened my issue #33268, since llvm-3.0 has become an indirect dependency for the later GCC lines. (Right after my "all-fixed?" comment, "llvm-3.0" followed "llvm_select" and failed building.)
See the dupe of it. Tiger/ppc is one of the least supported combinations due to lack of interest and resources. Please try llvm-2.9. If it builds, we'll use that for Tiger's cctools.
This worked too. Here's my Terminal transcript:
[daryle]$ sudo port clean llvm-3.0 Password: ---> Cleaning llvm-3.0 [daryle]$ sudo port clean apple-gcc42 ---> Cleaning apple-gcc42 [daryle$ sudo port uninstall apple-gcc42 ---> Deactivating apple-gcc42 @5666.3_4 ---> Cleaning apple-gcc42 ---> Uninstalling apple-gcc42 @5666.3_4 ---> Cleaning apple-gcc42 [daryle]$ sudo port selfupdate ---> Updating MacPorts base sources using rsync MacPorts base version 2.0.4 installed, MacPorts base version 2.0.4 downloaded. ---> Updating the ports tree ---> MacPorts base is already the latest version The ports tree has been updated. To upgrade your installed ports, you should run port upgrade outdated [daryle]$ sudo port install apple-gcc42 ---> Computing dependencies for apple-gcc42 ---> Fetching archive for apple-gcc42 ---> Attempting to fetch apple-gcc42-5666.3_4.darwin_8.ppc.tbz2 from http://packages.macports.org/apple-gcc42 ---> Fetching apple-gcc42 ---> Verifying checksum(s) for apple-gcc42 ---> Extracting apple-gcc42 ---> Applying patches to apple-gcc42 ---> Configuring apple-gcc42 ---> Building apple-gcc42 ---> Staging apple-gcc42 into destroot ---> Installing apple-gcc42 @5666.3_4 ---> Activating apple-gcc42 @5666.3_4 ---> Cleaning apple-gcc42 [daryle]$ sudo port install llvm-2.9 ---> Computing dependencies for llvm-2.9 ---> Fetching archive for llvm-2.9 ---> Attempting to fetch llvm-2.9-2.9_4.darwin_8.ppc.tbz2 from http://packages.macports.org/llvm-2.9 ---> Fetching llvm-2.9 ---> Attempting to fetch llvm-2.9.tgz from http://ykf.ca.distfiles.macports.org/MacPorts/mpdistfiles/llvm ---> Verifying checksum(s) for llvm-2.9 ---> Extracting llvm-2.9 ---> Applying patches to llvm-2.9 ---> Configuring llvm-2.9 ---> Building llvm-2.9 ---> Staging llvm-2.9 into destroot ---> Installing llvm-2.9 @2.9_4 ---> Activating llvm-2.9 @2.9_4 ---> Cleaning llvm-2.9 [daryle@daryle-walkers-emac:daryle]$
After cctools gets running, I should be able to build current GCC (4.7) and LLVM/Clang (3.x) lines, right?
comment:10 Changed 13 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Resolution: | → fixed |
---|---|
Status: | new → closed |
Ok, I'm closing this since the reported issue isn't reproducing.
As for llvm-3.x on Tiger/ppc, please see #33987
The log file (compressed) from the second failed apple-gcc42 build