[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Build errors. Again.
- Subject: Re: Build errors. Again.
- From: Ori Bernstein <ori@xxxxxxxxxxxxxx>
- Date: Fri, 19 Jun 2015 16:50:22 -0700
- To: Ryan Gonzalez <rymg19@xxxxxxxxx>
- Cc: myrddin-dev@xxxxxxxxxxxxxx
> On Jun 19, 2015, at 3:39 PM, Ryan Gonzalez <rymg19@xxxxxxxxx> wrote:
>
> So, I tweaked sysselect.sh, and came up with the following patch:
<snip>
Huh, have you pulled recently? I should have replaced that with a loop...
http://git.eigenstate.org/ori/mc.git/tree/sysselect.sh <http://git.eigenstate.org/ori/mc.git/tree/sysselect.sh>
> Now, there was only more error:
>
> ...
> ../6/6m -I . install.myr
> ../6/6m -I . clean.myr
> ../6/6m -I . test.myr
> ../6/6m -I . main.myr
> main.myr:102: Undeclared var std.getcwd
> make: *** [buildmyr] Error 1
>
> However, I simply deleted my installed libstd and it worked.
>
> So, two issues:
>
> 1. sysselect.sh conditionals messed up.
> 2. An installed libstd affects the build.
>
> I was going to try to fix the latter, but, looking main.c, it seems that the install directory is always appended lastly to the incdirs list. Weird.
Yeah; The install directory should be overridden.
I'm not sure why your build is missing it -- the 'main.myr' command that gets run on my system is this:
6m -I ../libregex -I ../libbio -I ../libstd -I /Users/orib/bin/lib/myr main.myr
Which definitely includes the previous directories first.
> Anyway, now Myrddin builds! Thanks for the help!
>
>
> On Fri, Jun 19, 2015 at 5:05 PM, Ori Bernstein <ori@xxxxxxxxxxxxxx <mailto:ori@xxxxxxxxxxxxxx>> wrote:
> The way that the build continues after the error says that it's trying to run the bootstrap script,
> which (these days) lives in bld/bootstrap/bootstrap-$SYS.myr, and is kicked off whenever mbld
> fails. (I should probably change that.)
>
> So, first off:
>
> > ... lots of other output...
>
> The actual mbld failure is probably buried in there -- there were a number of changes, so it's probably
> not recognizing either a new build attribute or target type (IIRC, I changed up 'gen' targets a bit recently).
>
> Now, as far as the fallback failing: The syserrno+foo.myr is selected from the base name 'syserrno'
> using sysselect.sh; what happens if you run:
>
> cd libstd
> ../sysselect.sh syserrno
>
> It looks like it's adding a spurious '+x64' to some files, which is causing issues. I'm a bit confused about
> why, because it definitely checks for whether the files exist.
>
> Assuming that gives the wrong file, you can either try fixing it, or if you have trouble fixing the hack
> bit, it's probably not too hard to just edit the bootstrap script to hardcode files that actually exist.
>
> (I should probably drop sysselect.sh and just generate the bootstrap scripts with hardcoded names;
> it's been flaky in the past.)
>
>
> > On Jun 19, 2015, at 10:46 AM, Ryan Gonzalez <rymg19@xxxxxxxxx <mailto:rymg19@xxxxxxxxx>> wrote:
> >
> > Unable to open file syserrno+linux-x64.myr
> >
>
>
>
>
>
> --
> Ryan
> [ERROR]: Your autotools build scripts are 200 lines longer than your program. Something’s wrong.
> http://kirbyfan64.github.io/ <http://kirbyfan64.github.io/>