multiple definition of `__i686.get_pc_thunk.bx'

Stephen Montgomery-Smith stephen at missouri.edu
Sun Feb 27 20:53:22 UTC 2011


I am the maintainer of the port vis5d+.  I just got this email (copied 
below) saying that vis5d+ isn't building right now.

The issue seems to be that some reference to __i686.get_pc_thunk.bx is 
included twice at some point.  This variable seems to be part of an 
object file crtbeginS.o that is created by gcc or gcc45, in what seem to 
me to be very mysterious conditions.  I am rather sure that the issue 
has nothing to do with vis5d+, but rather is something to do with either 
gcc45, or libtools, neither of which I understand.

Does anyone out there have any idea of what the problem is, or how it 
can be solved?


Erwin Lansing wrote:

Subject: Re: [ports-i386 at FreeBSD.org: vis5d+-1.2.1_15 failed on i386 8]

>
> FYI; can you please investigate and/or report to the developers?  If
> you are already aware of this problem but do not yet have a fix,
> please mark the port BROKEN in the appropriate case, so that users do
> not unexpectedly encounter it.
>
> See http://pointyhat.freebsd.org for the full log.
>
> Thanks,
> -erwin
>
> ----- Forwarded message from User Ports-i386<ports-i386 at FreeBSD.org>  -----
>
> Date: Thu, 24 Feb 2011 02:48:11 GMT
> From: User Ports-i386<ports-i386 at FreeBSD.org>
> To: erwin at FreeBSD.org, miwi at FreeBSD.org, itetcu at FreeBSD.org, linimon at FreeBSD.org
> Subject: vis5d+-1.2.1_15 failed on i386 8
>
> Excerpt from the build log at
>
>    http://pointyhat.freebsd.org/errorlogs/i386-errorlogs/a.8.20110223062852/vis5d+-1.2.1_15.log

.........................................

>
> libtool: compile:  gcc45 -DHAVE_CONFIG_H -I. -I. -I.. -I. -I/usr/local/include -O2 -pipe -DMIX_ANSI_IOSTREAMS -fPIC -fpermissive -Wl,-rpath=/usr/local/lib/gcc45 -fno-strict-aliasing -std=gnu89 -Wall -D_THREAD_SAFE -c xdump.c -MT xdump.lo -MD -MP -MF .deps/xdump.TPlo -o xdump.o>/dev/null 2>&1
> /bin/sh /usr/local/bin/libtool --mode=link g++45  -O2 -pipe -DMIX_ANSI_IOSTREAMS -fPIC -fpermissive -Wl,-rpath=/usr/local/lib/gcc45 -fno-strict-aliasing   -L/usr/local/lib -L/usr/local/lib -pthread -Wl,-rpath=/usr/local/lib/gcc45 -o libvis5d.la -rpath /usr/local/lib -version-info 2:0:0 api.lo analysis.lo anim.lo box.lo chrono.lo  compute.lo contour.lo groupchrono.lo globals.lo graphics.all.lo  grid.lo image.lo imemory.lo map.lo matrix.lo linterp.lo  memory.lo misc.lo mwmborder.lo proj.lo queue.lo render.lo  rgb.lo record.lo save.lo socketio.lo stream.lo sounding.lo  sync.lo tclsave.lo textplot.lo topo.lo traj.lo user_data.lo  volume.lo vtmcP.lo work.lo sgidump.lo decimate.lo analyze_i.lo  file_i.lo grid_i.lo misc_i.lo output_i.lo proj_i.lo  projlist_i.lo read_epa_i.lo read_gr3d_i.lo read_grid_i.lo  read_grads_i.lo read_uwvis_i.lo read_v5d_i.lo resample_i.lo  select_i.lo tokenize_i.lo iapi.lo file.lo irregular_v5d.lo  gl_to_ppm.lo graphics.ogl.lo graphics.scenes.lo  graphics
.v
>   rml.lo xdump.lo  -lm -lgfx
> libtool: link: c++ -shared -nostdlib /usr/lib/crti.o /usr/lib/crtbeginS.o  .libs/api.o .libs/analysis.o .libs/anim.o .libs/box.o .libs/chrono.o .libs/compute.o .libs/contour.o .libs/groupchrono.o .libs/globals.o .libs/graphics.all.o .libs/grid.o .libs/image.o .libs/imemory.o .libs/map.o .libs/matrix.o .libs/linterp.o .libs/memory.o .libs/misc.o .libs/mwmborder.o .libs/proj.o .libs/queue.o .libs/render.o .libs/rgb.o .libs/record.o .libs/save.o .libs/socketio.o .libs/stream.o .libs/sounding.o .libs/sync.o .libs/tclsave.o .libs/textplot.o .libs/topo.o .libs/traj.o .libs/user_data.o .libs/volume.o .libs/vtmcP.o .libs/work.o .libs/sgidump.o .libs/decimate.o .libs/analyze_i.o .libs/file_i.o .libs/grid_i.o .libs/misc_i.o .libs/output_i.o .libs/proj_i.o .libs/projlist_i.o .libs/read_epa_i.o .libs/read_gr3d_i.o .libs/read_grid_i.o .libs/read_grads_i.o .libs/read_uwvis_i.o .libs/read_v5d_i.o .libs/resample_i.o .libs/select_i.o .libs/tokenize_i.o .libs/iapi.o .libs/file.o .libs/irregu
la
>   r_v5d.o .libs/gl_to_ppm.o .libs/graphics.ogl.o .libs/graphics.scenes.o .libs/graphics.vrml.o .libs/xdump.o   -L/usr/local/lib -pthread -lgfx -L/usr/lib -lstdc++ -lm -lc -lgcc_s /usr/lib/crtendS.o /usr/lib/crtn.o  -Wl,-rpath=/usr/local/lib/gcc45 -pthread -Wl,-rpath=/usr/local/lib/gcc45 -pthread -pthread   -pthread -Wl,-soname -Wl,libvis5d.so.2 -o .libs/libvis5d.so.2
> .libs/api.o(.text.__i686.get_pc_thunk.bx+0x0): In function `__i686.get_pc_thunk.bx':
> : multiple definition of `__i686.get_pc_thunk.bx'
> /usr/lib/crtbeginS.o(.gnu.linkonce.t.__i686.get_pc_thunk.bx+0x0): first defined here
> *** Error code 1
>
> Stop in /work/a/ports/science/vis5d+/work/vis5d+-1.2.1/src.
> *** Error code 1
>
> Stop in /work/a/ports/science/vis5d+/work/vis5d+-1.2.1/src.
> *** Error code 1
>
> Stop in /work/a/ports/science/vis5d+/work/vis5d+-1.2.1.
> *** Error code 1
>
> Stop in /work/a/ports/science/vis5d+/work/vis5d+-1.2.1.
> *** Error code 1
>
> Stop in /a/ports/science/vis5d+.
> ================================================================
> build of /usr/ports/science/vis5d+ ended at Thu Feb 24 02:47:46 UTC 2011
>
> !DSPAM:4d65c6f0315011692978788!
>
>
> ----- End forwarded message -----



More information about the freebsd-ports mailing list