Eigenstate: myrddin-dev mailing list

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Build errors. Again.



> 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/> 


Follow-Ups:
Re: Build errors. Again.Ryan Gonzalez <rymg19@xxxxxxxxx>
References:
Build errors. Again.Ryan Gonzalez <rymg19@xxxxxxxxx>
Re: Build errors. Again.Ori Bernstein <ori@xxxxxxxxxxxxxx>
Re: Build errors. Again.Ryan Gonzalez <rymg19@xxxxxxxxx>