Tito Mari Francis Escaño <titomarifran...@gmail.com> wrote: > Thanks for the response Omar. > The tarball can be downloaded from > https://sourceforge.net/projects/objc/files/src/objc-3.3.25.tar.gz
Sorry, with "attach the tarball" I meant the ports' tarball. I assumed you had a WIP port, apologies. > The error is illustrated below: > [image: portable obj compiler error.png] for these things please avoid images: just copy and past the text into the email. Oh, and when doing so, please include the full log (if possible, sometimes certain bits can be removed if are long and it's really, really, really unlikely to not have issues; in doubt include everything.) you can use script(1) to transcript your terminal session, or maybe something simpler like $ make 2>&1 | tee build.log and then include `build.log' in the email. I'm not joking, the most interesting thing (i.e. how lex.m was produced) is outside of your screenshot; most likely right in the line before the one at the top... > I already installed Bison hoping it will provide yacc.h, but it didn't also > include that file. > I also tried using the y.tab.h file but it had the same error. > I tried to comment out the yacc.h header, still got the same error message. First of all, from where did you get a /usr/local/bin/objc executable? I don't find anything that provides it in packages. I can't build this objc because I need a bootstrap compiler. I admit I haven't tried hard and only glazed ad the *.txt files; but when asking please include the list of things you did if they're not incredibly obvious. It's difficult to help without knowing what things you did. I don't have a magic ball. Anyway, I can *guess* what's happening. yacc (or bison) isn't producing the yacc.h file that is included in src/obj/lex.lm (there are other files named so, files, but I think it's from that.) You can take a look at what files are produced (maybe y.tab.h?) and patch lex.lm to include the correctly-named file. Or find a way to make yacc/bison (or whatever the configure choosen) to produce yacc.h (again, in case of yacc see the -d flag and -o). Since this is an autoconf-based project, remember to re-run ./configure if you install other software (it doesn't notice otherwise) > On Tue, Apr 19, 2022 at 1:44 AM Omar Polo <o...@openbsd.org> wrote: > > > Tito Mari Francis Escaño <titomarifran...@gmail.com> wrote: > > > Hi everyone, > > > I'm trying to build Portable Object Compiler from > > > https://sourceforge.net/projects/objc/ in OpenBSD snapshot but it keeps > > > complaining that it can't find yacc.h so it won't push through. > > > > It's always a good idea to share a tarball, especially when asking for > > help. It makes your situation "reproducible" (sorta) so it's easier for > > someone else to help you debug the issue. It's also incredibly useful > > to also copy/paste the *exect* output from your command, including the > > errors. > > > > > I have the build tools installed during initial installation, so I was > > > wondering where the problem is. > > > Is there such a thing as yacc.h in any package or ports? > > > > When in doubt you can use pkglocate to look for files owned by packages, > > even if you don't have them installed. It's an incredibly useful tool. > > However, in this case I doubt it'll help you. > > > > yacc is included in base and given that's a parser generator I don't > > find strange to have it as requirement for a compiler. Yacc usually > > generates a file called `y.tab.c' and, if -d is provided, it generates > > y.tab.h too. Bison (a GNU implementation of yacc) does the same but > > instead of the "y" uses the name of the yacc file as base for the output > > IIRC. > > > > Maybe playing with the -d, -b and/or -o flags helps? what if you > > "force" it to use GNU bison? > > > > > Please let me know. > > > Thanks. > > > > > >