Summary: | ASTERISK-04826: ooH323 from asterisk-addons compile broken on x86_64 | ||
Reporter: | Brian Fertig (docelm0) | Labels: | |
Date Opened: | 2005-08-12 10:51:29 | Date Closed: | 2011-06-07 14:02:54 |
Priority: | Major | Regression? | No |
Status: | Closed/Complete | Components: | Core/General |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ||
Description: | H323 will not compile from HEAD to x86_64 platform. I am including my output from trying to compile it. I have tried a few things to get it to work but nothing successful. ****** ADDITIONAL INFORMATION ****** /bin/sh ../libtool --mode=link gcc -DGNU -D_GNU_SOURCE -D_OOINFO -D_REENTRANT -D_COMPACT -o libchan_h323.la -rpath /usr/local/lib -L../ooh323c/src -version-info 1:1:0 chan_h323.lo ooh323cDriver.lo -lpthread -looh323c rm -fr .libs/libchan_h323.la .libs/libchan_h323.* .libs/libchan_h323.* gcc -shared chan_h323.lo ooh323cDriver.lo -L/usr/src/asterisk-addons/asterisk-ooh323c/ooh323c/src -lpthread -looh323c -Wl,-soname -Wl,libchan_h323.so.1 -o .libs/libchan_h323.so.1.0.1 /usr/bin/ld: /usr/src/asterisk-addons/asterisk-ooh323c/ooh323c/src/libooh323c.a(ooGkClient.o): relocation R_X86_64_32 against `gH323ep' can not be used when making a shared object; recompile with -fPIC /usr/src/asterisk-addons/asterisk-ooh323c/ooh323c/src/libooh323c.a: could not read symbols: Bad value collect2: ld returned 1 exit status make[2]: *** [libchan_h323.la] Error 1 make[2]: Leaving directory `/usr/src/asterisk-addons/asterisk-ooh323c/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/usr/src/asterisk-addons/asterisk-ooh323c' make: *** [all] Error 2 | ||
Comments: | By: Michael Jerris (mikej) 2005-08-12 13:06:43 as noted on the -dev list, recompile with -fPIC. If that works, a patch to the makefile would be appretiated. By: Brian Fertig (docelm0) 2005-08-12 13:46:13 Well I had tried that. This is what I get. [root@pt-aus-gw1 src]# gcc -fPIC chan_h323.lo ooh323cDriver.lo -L/usr/src/asterisk-addons/asterisk-ooh323c/ooh323c/src -lpthread -looh323c -Wl,-soname -Wl,libchan_h323.so.1 -o .libs/libchan_h323.so.1.0.1 /usr/lib/gcc/x86_64-redhat-linux/3.4.2/../../../../lib64/crt1.o(.text+0x21): In function `_start': : undefined reference to `main' chan_h323.lo(.text+0x54): In function `h323_new': : undefined reference to `ast_log' chan_h323.lo(.text+0x67): In function `h323_new': : undefined reference to `ast_channel_alloc' chan_h323.lo(.text+0xec): In function `h323_new': : undefined reference to `ast_best_codec' chan_h323.lo(.text+0x10f): In function `h323_new': : undefined reference to `ast_rtp_fd' My environment is: FC3 x86_64 Dual Opteron 248 By: Michael Jerris (mikej) 2005-08-12 16:52:46 Try updating again from cvs. Updates were made to the build on this. By: Brian Fertig (docelm0) 2005-08-12 20:52:25 Install goes well now. But I have searched the directories and cant find the .so file. Any ideas? I am not trying to be a pain in the ass but I know very little about ANSI C on linux and am learning. But I need a little help here and there. This is what I found now. gcc -shared chan_h323.lo ooh323cDriver.lo -L/usr/src/asterisk-addons/asterisk-ooh323c/ooh323c/src -lpthread -looh323c -Wl,-soname -Wl,libchan_h323.1 -o .libs/libchan_h323.1.0.1 (cd .libs && rm -f libchan_h323.1 && ln -s libchan_h323.1.0.1 libchan_h323.1) (cd .libs && rm -f libchan_h323 && ln -s libchan_h323.1.0.1 libchan_h323) ar cru .libs/libchan_h323.a chan_h323.o ooh323cDriver.o ranlib .libs/libchan_h323.a creating libchan_h323.la (cd .libs && rm -f libchan_h323.la && ln -s ../libchan_h323.la libchan_h323.la) make[2]: Leaving directory `/usr/src/asterisk-addons/asterisk-ooh323c/src' make[1]: Leaving directory `/usr/src/asterisk-addons/asterisk-ooh323c' [root@pt-aus-gw1 asterisk-ooh323c]# make install make[3]: Leaving directory `/usr/src/asterisk-addons/asterisk-ooh323c/ooh323c/tests/chansetup' make[2]: Leaving directory `/usr/src/asterisk-addons/asterisk-ooh323c/ooh323c/tests' make[1]: Leaving directory `/usr/src/asterisk-addons/asterisk-ooh323c/ooh323c' Making install in src make[1]: Entering directory `/usr/src/asterisk-addons/asterisk-ooh323c/src' cp .libs/libchan_h323.so /usr/lib/asterisk/modules/chan_h323.so cp: cannot stat `.libs/libchan_h323.so': No such file or directory make[1]: *** [install] Error 1 make[1]: Leaving directory `/usr/src/asterisk-addons/asterisk-ooh323c/src' make: *** [install-recursive] Error 1 [root@pt-aus-gw1 asterisk-ooh323c]# By: Michael Jerris (mikej) 2005-08-17 08:40:31 Can you please take a look at this By: Vishal Phirke (vphirke) 2005-08-19 12:24:16 Are you sure your build didn't create .so file. Can you check in the astersik-ooh323c/src/.libs directory and see what you got. Unfortunately I can't reproduce this bug. By: Michael Jerris (mikej) 2005-08-19 16:06:17 just watched the new build commits to cvs. Is there any way for that to determine the asterisk config and modules dir instead of them being hardcoded? By: Michael Jerris (mikej) 2005-08-22 20:32:53 issue suspended due to no resoponse. Please try to update to most recent cvs head, and if you continue to have problems, please re-open this bug with requested details. Thanks. |