ksh dev@4467eaff does not build on macOS Intel/ARM 13.6.8
Closed this issue · 8 comments
Same error message received on both. Build fails with the below.
# src/lib/libast/Mamfile: 3289-3294: make sfextern.o
+ compile /Users/mwilson/src/ksh/src/lib/libast/sfio/sfextern.c -Iport -I/Users/mwilson/src/ksh/src/lib/libast/port -Isfio -I/Users/mwilson/src/ksh/src/lib/libast/sfio
+ s=/Users/mwilson/src/ksh/src/lib/libast/sfio/sfextern.c
+ shift
+ cc -D_BLD_ast -Os -fno-strict-aliasing -I. -I/Users/mwilson/src/ksh/src/lib/libast -Icomp -I/Users/mwilson/src/ksh/src/lib/libast/comp -Iport -I/Users/mwilson/src/ksh/src/lib/libast/port -Isfio -I/Users/mwilson/src/ksh/src/lib/libast/sfio -Iinclude -I/Users/mwilson/src/ksh/src/lib/libast/include -Istd -I/Users/mwilson/src/ksh/src/lib/libast/std -c /Users/mwilson/src/ksh/src/lib/libast/sfio/sfextern.c
In file included from /Users/mwilson/src/ksh/src/lib/libast/sfio/sfextern.c:19:
In file included from /Users/mwilson/src/ksh/src/lib/libast/sfio/sfhdr.h:44:
In file included from /Users/mwilson/src/ksh/src/lib/libast/include/sfio_t.h:56:
In file included from /Users/mwilson/src/ksh/src/lib/libast/include/sfio.h:34:
/Users/mwilson/src/ksh/src/lib/libast/include/ast_std.h:35:10: fatal error: 'ast_common.h' file not found
#include <ast_common.h>
^~~~~~~~~~~~~~
1 error generated.
mamake [lib/libast]: *** exit code 1 making sfextern.o
mamake: *** exit code 1 making lib/libast
mamake: *** exit code 1 making all
tee: /Users/mwilson/src/ksh/arch/darwin.arm64-64/lib/package/gen/make.out: No such file or directory
package: make failed at Fri Aug 2 06:24:24 PDT 2024 in /Users/mwilson/src/ksh/arch/darwin.arm64-64
This makes no sense. Have you tried deleting arch
and rebuilding from scratch? Could I have a complete build log?
just tried on my intel macbook (OSX 12.7) and 4467eaf compiles just fine (also no need to first nuke arch
).
I think you can close it. I should have tried removing arch
first. Do that and the build succeeds on both architectures.
Thanks. That' still indicative of a possible oversight somewhere. Deleting arch
should not be necessary unless something outside the build system itself messed it up. But since I can't investigate the details of what happened on your end, there's nothing left to do here. If there is a remaining dependency bug in the build system, hopefully I'll run into it at some point and fix it.
Next time I'll save make.out
.
I'm manually tracing dependencies in the files indicated in your error, and haven't found any problems in the Mamfile dependency declarations so far.
But I did just notice that I'd overlooked this in your reported output:
tee: /Users/mwilson/src/ksh/arch/darwin.arm64-64/lib/package/gen/make.out: No such file or directory
The only explanation I can think of for that is that your arch/darwin.arm64-64
directory somehow got deleted, moved or renamed before the build was finished, so that tee
was unable to append the failure message to make.out
on exit and was able to write it to your terminal only. (Since tee -a
creates the indicated file if it doesn't exist, the "no such file or directory" error from tee
really means the directory in which to create the file didn't exist.)
If you are sure you had nothing interfering with the build process, then it looks there may have been file system corruption going on. You might want to run Disk First Aid from Disk Utility just to be sure.
Nothing found when running First Aid.
But it threw the exact same thing on both machines. Now I REALLY wish I'd saved the file from one or the other of them.