On 23 Jul 2007, at 18:29, [EMAIL PROTECTED] wrote: >> - Do make depends for the GNUstep ports (gui, back, base). >> This is a nice easy way of getting the dependencies all >> installed without thinking. > > Done. Although, I find it strange that you want to do a > make depends instead of a full make. -back depends on > both -gui and -base, so the best you can get away with is > not compiling -back.
Probably true. I cheated and just installed the old version and then uninstalled it but kept the dependencies around. >> - Install GNUstep's version of libobjc (the one in the >> base system won't work). > > Really? Even though gnustep-* requires gcc42, which uses a > different libobjc than the gcc3 in the base system? GCC 4.2 is in the base system for -CURRENT, and the included libobjc broke things badly for me. >> - Install -base, -gui and -back as per the instructions >> on the GNUstep site. > > I grabbed -base from GNUstep's SVN and I can't get the first > gmake (or ./configure) to finish because it fails on the FFI > library usage check. Is there anything special to do when > installing libobjc from GNUstep's site? The tarball for > GNUstep's libobjc had a README.GNUstep file which said that > GNUstep should automatically recognize the new libobjc and > use it, so my assumption is that I've done everything I need > to do. > > I've looked through the config.log output, and the code for > testing FFI fails because it's including the wrong header > path. It's using -I$(GNUSTEP_SYSTEM_HEADERS) (which does > not contain the objc headers installed by GNUstep's libobjc) > instead of -I$(GNUSTEP_LOCAL_HEADERS). The result is that > objc-decls.h can't be found, which causes objc-api.h to error > like crazy, which is followed by __objc_msg_forward not > being defined. Manually compiling the test file > (config/config.forward.m) using -I$(GNUSTEP_LOCAL_HEADERS) > instead of the system headers compiles without a hitch. > > So I could hack the configuration process to use the local > headers, but I'm sure that'll just blow up on me in the > future. What's the correct way to go about fixing this? You should make sure you've sourced GNUstep.sh (or GNUstep.csh for the root shell) that is installed with the gnustep-make port. That sets up the correct environment variables. I added --prefix=/usr/ local to the configure arguments for each component (including libobjc), but I'm not sure if that's required or not. My GNUstep uses ffcall, not libffi. You might want to try installing the ffcall port; I thought this was already done to satisfy dependencies, but I could be wrong. Please note, I've only tried this on -CURRENT after the switch to the 4.2 compiler series. I don't know if it works on older versions of FreeBSD. David _______________________________________________ Etoile-discuss mailing list [email protected] https://mail.gna.org/listinfo/etoile-discuss
