E17 (Enlightenment DR17) on FreeBSD 4 finally

Finally today I was able to successfully compile and get E17 working on my FreeBSD 4 desktop :)

Since FreeBSD 4 doesn’t comply with C99, I had to seek help from ctrio (an open source printf family of functions library) and patch eet to get this working.

Here are the patches to configure.in and eet_data.c to get E17 on FreeBSD 4.

technorati tags: , ,

5 Responses to “E17 (Enlightenment DR17) on FreeBSD 4 finally”

  1. petrasl Says:

    Thanx for the patches. I installed ctrio and applied the paches but I still get the same error on configure.
    « Your OS does not support C99’s ‘%a’ string format »

    What can I do?

  2. gopal Says:

    Can you check whether the patch worked by looking at the snprintf “%a” line (it should be replaced with trio_snprintf)?
    I didn’t try this patch with the latest E17 from CVS, but a little more than couple of weeks.

  3. petrasl Says:

    The patch worked, I have the follow lines for the check:

    #include
    #include
    int main(int argc, char **argv) {
    char buf[4096];
    double ival = 0.1234, oval = 0.0;
    trio_snprintf(buf, sizeof(buf), “%a”, ival);
    trio_sscanf(buf, “%a”, &oval);
    if (ival != oval) return -1;
    return 0;
    }

  4. petrasl Says:

    Uhm, the cut and paste didn’t works as well; obviously it was supposed to be : #include stdio.h / trio.h.
    Anyway, I tried to compile that pice of code; the problem is that the compiler can’t find trio.h.
    All the headers of trio are installed in /usr/local/include and the libtrio.a in /usr/local/lib/.
    Do you know why the compiler can’t find them?

  5. gopal Says:

    Hmm. I have the following environment set, before compiling E17, where target is the target path for my E17 (typically /usr/local/e).

    In my case I needed to include “-liconv” additionally, which is normally not needed, and for getopt_long, I needed the “gnugetopt” library too. You need “-ltrio -lm” for the trio library.

    shell> export \
           CPPFLAGS="-I$HOME/local/include -I/usr/X11R6/include" \
           CFLAGS="-g -O2 -pipe" \
           LDFLAGS="-pthread -L$HOME/local/lib -L/usr/X11R6/lib" \
           LIBS="-liconv -ltrio -lm -lgnugetopt" \
           LD_LIBRARY_PATH=$target/lib:$HOME/local/lib:/usr/X11R6/lib \
           PATH=$target/bin:$HOME/local/bin:/usr/X11R6/bin:/bin:/usr/bin \
           PKG_CONFIG_PATH=$HOME/local/lib/pkgconfig
    

    HTH.

Leave a Reply