It's exactly as you said. When I ran make for the first time I failed
because uuid.h was missing, so I installed it and just ran make again
letting it pick up where it left off. This resulted in the "malformed
fasl-object header" problem when it came time to install. The strip
command had nothing to do with it.
My experiment was just a stab in the dark inspired by an answer you gave
on github about a year ago to someone with a similar problem. The real
reason it worked was that I started from the beginning by executing both
configure and make in an empty build directory and with uuid.h already
in place. (I have verified this on my system by rerunning it without
disabling strip.)
To summarize, the wrong thing to do was:
- configure
- make (and fail)
- install uuid.h
- make
- make install (and fail)
The right thing to do was:
- install uuid.h
- configure
- make
- make install
Thank you for your help.
EdK
Matthew Flatt writes:
> Did you have "uuid-dev" installed when when you started compiling?
>
> I tried a build on a fresh installation, and eventually got an error
> about "uuid.h" missing. After installing it, the build continued but
> eventually failed with a "malformed fasl-object header in petite"
> error. The problem is that a `configure` step had gone bad (too
> quietly) since "uuid.h" was missing.
>
> So, I wonder if the issue is related to `strip`, or if it was just that
> you re-ran `configure` after installing "uuid-dev".
>
> I'll look into improving the `configure` script, in any case.
>
> At Sat, 23 Nov 2019 08:24:25 -0800 (PST), EdK wrote: