Ah. On further inspection, the reason libffi is not compiled is most likely because it is disabled in the initial configure: *** This configuration is not supported in the following subdirectories: gnattools gotools target-libada target-libphobos target-zlib target-libbacktrace target-libgfortran target-libgo target-libffi target-libobjc target-liboffloadmic (Any other directories should still work fine.) On Tue, May 17, 2022 at 10:29 PM Zopolis0 <creatorsmithmdt@xxxxxxxxx> wrote: > Alright so looking at the include paths passed to it via the command line, > it uses -I../../../../gcj/libjava/../libffi/include, which seems to be > correct from what I can tell, it's definitely the right path to libjava, > and looks to be the right path to libffi. However, in the build directory, > grepping for libffi only reveals results in documentation and makefiles, > and I cannot find any libffi directory. I presume this is because it is > compiling libjava before libffi for some reason? In the libffi include > directory there's no ffi.h, only a ffi.h.in, so it looks like it needs to > be generated first. Is there anywhere within the sources that sets what > order things are compiled in? > > On Tue, May 17, 2022 at 4:12 PM Zopolis0 <creatorsmithmdt@xxxxxxxxx> > wrote: > >> That's what I was doing, with --enable-languages=java. >> >> On Mon, May 16, 2022 at 11:06 AM Zopolis0 <creatorsmithmdt@xxxxxxxxx> >> wrote: >> >>> While attempting to compile gcj on my mster branch ( >>> https://github.com/Zopolis4/gcj/tree/mster) , the compilation fails >>> because several files within libjava are unable to include ffi.h because >>> they cannot find it. >>> In file included from ../../../../gcj/libjava/defineclass.cc:24: >>> ../../../../gcj/libjava/include/java-interp.h:40:10: fatal error: ffi.h: >>> No such file or directory >>> 40 | #include <ffi.h> >>> | ^~~~~~~ >>> This is despite, as far as I can tell, the compilation of libffi being >>> enabled as part of libjava in makefile.def. >>> >>