When compiling asterisk with h323 use flag turned on linking fails when compiling chan_h323. Reproducible: Always Steps to Reproduce: 1. emerge asterisk 2. 3. Actual Results: Compile fails. Expected Results: Successful install. When "H.323 wrapper lib" is compiled it says: * Building H.323 wrapper lib... make: Entering directory `/var/tmp/portage/net-misc/asterisk-1.2.17/work/asterisk-1.2.17/channels/h323' g++ -march=athlon64 -O2 -pipe -I/usr/include/openh323 -c -o ast_h323.o ast_h323.cpp ast_h323.cpp:1:1: warning: "_GNU_SOURCE" redefined <command line>:1:1: warning: this is the location of the previous definition ar crv libchanh323.a ast_h323.o a - ast_h323.o make: Leaving directory `/var/tmp/portage/net-misc/asterisk-1.2.17/work/asterisk-1.2.17/channels/h323' Note missing -fPIC It later fails when compiling chan_h323: x86_64-pc-linux-gnu-gcc -march=athlon64 -O2 -pipe -pipe -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Iinclude -I../include -D_REENTRANT -D_GNU_SOURCE -march=athlon64 -O2 -pipe -DZAPTEL_OPTIMIZATIONS -fomit-frame-pointer -Wno-missing-prototypes -Wno-missing-declarations -DZAPATA_PRI -DIAX_TRUNKING -DCRYPTO -fPIC -c -o chan_h323.o chan_h323.c x86_64-pc-linux-gnu-gcc -shared -Xlinker -x -march=athlon64 -O2 -pipe -pipe -o chan_h323.so chan_h323.o h323/libchanh323.a -lopenh323 -lpt -lstdc++ /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.1/../../../../x86_64-pc-linux-gnu/bin/ld: h323/libchanh323.a(ast_h323.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC h323/libchanh323.a: could not read symbols: Bad value collect2: ld returned 1 exit status make[1]: *** [chan_h323.so] Error 1 make[1]: Leaving directory `/var/tmp/portage/net-misc/asterisk-1.2.17/work/asterisk-1.2.17/channels' I'm not sure if the problem is with the ebuild or it is with the makefile(s) in channels/h323. I have tried to manually compile the libchanh323.a file with -fPIC which fixes the problem. emerge --info: Portage 2.1.2.2 (default-linux/amd64/2006.1/desktop, gcc-4.1.1, glibc-2.5-r0, 2.6.18-gentoo-r6 x86_64) ================================================================= System uname: 2.6.18-gentoo-r6 x86_64 AMD Athlon(tm) 64 Processor 3500+ Gentoo Base System release 1.12.9 Timestamp of tree: Mon, 30 Apr 2007 01:20:01 +0000 dev-java/java-config: 1.3.7, 2.0.31-r5 dev-lang/python: 2.4.3-r4 dev-python/pycrypto: 2.0.1-r5 sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.61 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10 sys-devel/binutils: 2.16.1-r3 sys-devel/gcc-config: 1.3.15-r1 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.17-r2 ACCEPT_KEYWORDS="amd64" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=athlon64 -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/lib/fax /usr/share/X11/xkb /usr/share/config /var/qmail/alias /var/qmail/control /var/spool/fax/etc" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/php/apache1-php5/ext-active/ /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c" CXXFLAGS="-march=athlon64 -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks metadata-transfer sandbox sfperms strict" GENTOO_MIRRORS="http://mirror.esoft.dk/gentoo" LINGUAS="da de en en_DK en_GB en_US" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/esoft-portage /home/tp/portage" SYNC="rsync://mirror.esoft.dk/gentoo-portage" USE="X Xaw3d a52 aac aalib adplug aiglx alsa amd64 amr apache2 arts audiofile avi bash-completion bcmath berkdb bidi bitmap-fonts bl bri bzip2 bzlib cairo calendar cdda cddb cdio cdparanoia cdr cjk clamav clearcase cli cracklib crypt ctype cups curl dba dbus dga dmx doc dri dts dv dvb dvd dvdnav dvdr edl eds emboss enca encode esd examples exif fam fame ffmpeg firefox flac flash fortran freetype ftp gd gdbm gencertdaily gif glitz glut gmp gnome gphoto2 gpm graphviz gs gstreamer gtk gtk2 gtkhtml h323 hal iconv idn imagemagick imap imlib innodb ipv6 isdnlog jack java jbig jpeg jpeg2k kde kdeenablefinal lcms ldap libcaca libclamav libg++ libsamplerate live lm_sensors lzo mad matroska mhash midi mikmod mime ming mjpeg mng modplug monkey motif mozcalendar mozdevelop mozilla mozsvg mozxmlterm mp2 mp3 mp4 mpeg mplayer musepack musicbrainz mysql mysqli nas ncurses network new-login nis nls nptl nptlonly nsplugin nvidia ocaml ogg oggvorbis openexr opengl oss pam pam_chroot pam_console pam_timestamp pcntl pcre pda pdf pear perforce perl php png pnp portaudio posix postgres povray ppds pppd pri pulseaudio python qt qt3 qt4 quicktime radio radius rar readline reflection rtc rtsp ruby samba screen sdl server session sid simplexml slang smime sndfile snmp soap sockets soundtouch sox speex spell spl sql srt ssl stream svg tcltk tcpd tetex tga theora tidy tiff timidity transcode truetype truetype-fonts trusted tta type1-fonts unicode usb v4l v4l2 vcd vlm vmdbpostgres vnc vorbis wavpack wddx wma wmf wxgtk1 wxwindows x264 xanim xine xinerama xml xorg xosd xpm xprint xscreensaver xsl xv xvid xvmc zapnet zapras zaptel zlib zvbi" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="da de en en_DK en_GB en_US" USERLAND="GNU" VIDEO_CARDS="nv nvidia v4l vga" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Should be fixed in 1.2.21.1 in a few minutes when the updated patch hits the tree, thanks to stkn!