[Olsr-users] HTTPinfo fail to build under FreeBSD

Michel Blais (spam-protected)
Mon Nov 9 21:10:23 CET 2015


$ gmake VERBOSE=1 OS=fbsd CC=gcc48 CXX=g++48 CPP="gcc48 -E"
EXTRA_CFLAGS=-fPIC | grep cfgfile_gen.o
gcc48 -shared -Wl,-soname,olsrd_httpinfo
-Wl,--version-script=version-script.txt  -Wl,--warn-common -fPIC -o
olsrd_httpinfo.so.0.1 src/admin_interface.o src/olsrd_httpinfo.o
src/olsrd_plugin.o ../../src/cfgparser/cfgfile_gen.o
/usr/local/bin/ld: ../../src/cfgparser/cfgfile_gen.o: relocation
R_X86_64_32 against `.rodata' can not be used when making a shared object;
recompile with -fPIC
../../src/cfgparser/cfgfile_gen.o: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
gmake: *** [olsrd_httpinfo.so.0.1] Error 1

---
Cordialement,

Michel Blais
Administrateur réseau
Targo communications

2015-11-09 15:07 GMT-05:00 Henning Rogge <(spam-protected)>:

> Sorry, misunderstanding...
>
> run the "make VERBOSE=1 ... ... EXTRA...." command again and pipe it
> through a "grep cfgfile_gen.o" command.
>
> Henning
>
> On Mon, Nov 9, 2015 at 9:06 PM, Michel Blais <(spam-protected)>
> wrote:
> > not mentionned anywhere else but OBJS seem a variable use several time by
> > this file. Maybe the following line:
> > $(MAKECMDPREFIX)$(CC) $(LDFLAGS) -o $(PLUGIN_FULLNAME) $(OBJS) $(LIBS)
> >
> > ---
> > Cordialement,
> >
> > Michel Blais
> > Administrateur réseau
> > Targo communications
> >
> > 2015-11-09 15:04 GMT-05:00 Henning Rogge <(spam-protected)>:
> >>
> >> I was just thinking about the output of the make command...
> >>
> >> try to grep for cfgfile_gen.o
> >>
> >> it should be mentioned in other lines.
> >>
> >> Henning
> >>
> >> On Mon, Nov 9, 2015 at 9:03 PM, Michel Blais <(spam-protected)>
> >> wrote:
> >> > The only file that I found with grep that have this file name is the
> >> > Makefile at the root of httpinfo directory.
> >> >
> >> > OBJS += $(TOPDIR)/src/cfgparser/cfgfile_gen.o
> >> >
> >> > Since I'm not a dev, I don't really know what to do with this
> >> > information.
> >> >
> >> > ---
> >> > Cordialement,
> >> >
> >> > Michel Blais
> >> > Administrateur réseau
> >> > Targo communications
> >> >
> >> > 2015-11-09 14:50 GMT-05:00 Henning Rogge <(spam-protected)>:
> >> >>
> >> >> Can you look for the line that creates "cfgfile_gen.o" ?
> >> >>
> >> >> Henning
> >> >>
> >> >> On Mon, Nov 9, 2015 at 8:43 PM, Michel Blais <
> (spam-protected)>
> >> >> wrote:
> >> >> > Yes, I see it. I also saw that I forgotted the OS=fbsd flag but
> added
> >> >> > it
> >> >> > but
> >> >> > still the same error
> >> >> >
> >> >> > $ gmake VERBOSE=1 OS=fbsd CC=gcc48 CXX=g++48 CPP="gcc48 -E"
> >> >> > EXTRA_CFLAGS=-fPIC
> >> >> > gcc48 -shared -Wl,-soname,olsrd_httpinfo
> >> >> > -Wl,--version-script=version-script.txt  -Wl,--warn-common -fPIC -o
> >> >> > olsrd_httpinfo.so.0.1 src/admin_interface.o src/olsrd_httpinfo.o
> >> >> > src/olsrd_plugin.o ../../src/cfgparser/cfgfile_gen.o
> >> >> > /usr/local/bin/ld: ../../src/cfgparser/cfgfile_gen.o: relocation
> >> >> > R_X86_64_32
> >> >> > against `.rodata' can not be used when making a shared object;
> >> >> > recompile
> >> >> > with -fPIC
> >> >> > ../../src/cfgparser/cfgfile_gen.o: error adding symbols: Bad value
> >> >> > collect2: error: ld returned 1 exit status
> >> >> > Makefile:61: recipe for target 'olsrd_httpinfo.so.0.1' failed
> >> >> > gmake: *** [olsrd_httpinfo.so.0.1] Error 1
> >> >> >
> >> >> > ---
> >> >> > Cordialement,
> >> >> >
> >> >> > Michel Blais
> >> >> > Administrateur réseau
> >> >> > Targo communications
> >> >> >
> >> >> > 2015-11-09 14:28 GMT-05:00 Henning Rogge <(spam-protected)>:
> >> >> >>
> >> >> >> Okay,
> >> >> >>
> >> >> >> that is strange...
> >> >> >>
> >> >> >> when you run with
> >> >> >>
> >> >> >> VERBOSE=1 make ... EXTRA_CFLAGS=...
> >> >> >>
> >> >> >> do you see extra flag in the call to the compiler?
> >> >> >>
> >> >> >> Henning
> >> >> >>
> >> >> >> On Mon, Nov 9, 2015 at 8:25 PM, Michel Blais
> >> >> >> <(spam-protected)>
> >> >> >> wrote:
> >> >> >> > Thanks Henning for answering back. Sadly it don't seem to work
> and
> >> >> >> > strangly,
> >> >> >> > it return the same -fPIC error.
> >> >> >> >
> >> >> >> > $ gmake CC=gcc48 CXX=g++48 CPP="gcc48 -E" EXTRA_CFLAGS=-fPIC
> >> >> >> > [LD] olsrd_httpinfo.so.0.1
> >> >> >> > /usr/local/bin/ld: ../../src/cfgparser/cfgfile_gen.o: relocation
> >> >> >> > R_X86_64_32
> >> >> >> > against `.rodata' can not be used when making a shared object;
> >> >> >> > recompile
> >> >> >> > with -fPIC
> >> >> >> > ../../src/cfgparser/cfgfile_gen.o: error adding symbols: Bad
> value
> >> >> >> > collect2: error: ld returned 1 exit status
> >> >> >> > Makefile:59: recipe for target 'olsrd_httpinfo.so.0.1' failed
> >> >> >> > gmake: *** [olsrd_httpinfo.so.0.1] Error 1
> >> >> >> >
> >> >> >> > Even if I enter anything else as extra flag, like
> >> >> >> > EXTRA_CFLAGS=test,
> >> >> >> > it
> >> >> >> > return the same error.
> >> >> >> >
> >> >> >> >
> >> >> >> >
> >> >> >> > ---
> >> >> >> > Cordialement,
> >> >> >> >
> >> >> >> > Michel Blais
> >> >> >> > Administrateur réseau
> >> >> >> > Targo communications
> >> >> >> >
> >> >> >> > 2015-11-09 14:05 GMT-05:00 Henning Rogge <(spam-protected)>:
> >> >> >> >>
> >> >> >> >> Hi,
> >> >> >> >>
> >> >> >> >> that is funny, we had another "-fPIC" related discussion
> today...
> >> >> >> >>
> >> >> >> >> quick fix:
> >> >> >> >> make CC=gcc48 CXX=g++48 CPP="gcc48 -E" EXTRA_CFLAGS=-fPIC
> >> >> >> >>
> >> >> >> >> Still, I wonder why all these fPIC issues are coming up at the
> >> >> >> >> moment...
> >> >> >> >>
> >> >> >> >> and why your BSD fails at linking something that is NOT part of
> >> >> >> >> the
> >> >> >> >> httpinfo but can compile other plugins.
> >> >> >> >>
> >> >> >> >> Henning
> >> >> >> >>
> >> >> >> >> On Mon, Nov 9, 2015 at 7:50 PM, Michel Blais
> >> >> >> >> <(spam-protected)>
> >> >> >> >> wrote:
> >> >> >> >> > FreeBSD 10.2 with OLSRd 0.9.0.3
> >> >> >> >> > I've also saw this problem with older version of FreeBSD  10.
> >> >> >> >> > I normally work around this by downloading olsrd paquage and
> >> >> >> >> > extracting
> >> >> >> >> > httpinfo from it but since it writted in the httpinfo README
> >> >> >> >> > file
> >> >> >> >> > that
> >> >> >> >> > this
> >> >> >> >> > plugin is really version sensitive, I would like to know how
> to
> >> >> >> >> > work
> >> >> >> >> > around
> >> >> >> >> > this error.
> >> >> >> >> >
> >> >> >> >> > FreeBSD 10.2 repo version
> >> >> >> >> > olsrd-0.6.6.2_1                OLSR routing daemon
> >> >> >> >> >
> >> >> >> >> > The error I encounter while trying to build httpinfo
> >> >> >> >> >
> >> >> >> >> > $ gmake CC=gcc48 CXX=g++48 CPP="gcc48 -E"
> >> >> >> >> >
> >> >> >> >> > [LD] olsrd_httpinfo.so.0.1
> >> >> >> >> > /usr/local/bin/ld: ../../src/cfgparser/cfgfile_gen.o:
> >> >> >> >> > relocation
> >> >> >> >> > R_X86_64_32
> >> >> >> >> > against `.rodata' can not be used when making a shared
> object;
> >> >> >> >> > recompile
> >> >> >> >> > with -fPIC
> >> >> >> >> > ../../src/cfgparser/cfgfile_gen.o: error adding symbols: Bad
> >> >> >> >> > value
> >> >> >> >> > collect2: error: ld returned 1 exit status
> >> >> >> >> > Makefile:59: recipe for target 'olsrd_httpinfo.so.0.1' failed
> >> >> >> >> > gmake: *** [olsrd_httpinfo.so.0.1] Error 1
> >> >> >> >> >
> >> >> >> >> > I can build olsrd, txtinfo and secure without error with the
> >> >> >> >> > same
> >> >> >> >> > command.
> >> >> >> >> >
> >> >> >> >> > Any way to work around this error ?
> >> >> >> >> >
> >> >> >> >> > Thanks
> >> >> >> >> >
> >> >> >> >> > --
> >> >> >> >> > Olsr-users mailing list
> >> >> >> >> > (spam-protected)
> >> >> >> >> > https://lists.olsr.org/mailman/listinfo/olsr-users
> >> >> >> >
> >> >> >> >
> >> >> >
> >> >> >
> >> >
> >> >
> >
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.olsr.org/pipermail/olsr-users/attachments/20151109/caaa1381/attachment.html>


More information about the Olsr-users mailing list