Hi Anthony, See the later msg I sent. I tried that, which allowed me to start Apache, but am getting a segfault.
Also, per Sorin's suggestion, I tired "-L <dir_for_so> -lobaccess" in the apxs command, and after I use that I don't need the LoadFile anymore. Thanks, Jim ---- Anthony Whitehead <awhiteh...@nordicedge.se> wrote: > Jim, > > Have you looked at the LoadFile directive, sometime that can be of use for > third party libraries. > http://httpd.apache.org/docs/2.4/mod/mod_so.html#loadfile > > /Ant > > On 21 June 2012 20:19, <oh...@cox.net> wrote: > > > > > ---- Sorin Manolache <sor...@gmail.com> wrote: > > > On 2012-06-21 19:47, oh...@cox.net wrote: > > > > > > > I've tried using "-l" pointing directly to the .so, libobaccess.so, > > but when I do that, it says it can't find the .so: > > > > > > > > [root@apachemodule build-mod_headers]# ./compile-mod-headers.sh > > > > /apps/httpd2222/build/libtool --silent --mode=compile gcc -prefer-pic > > -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -g -O2 -pthread > > -I/apps/httpd2222/include -I/apps/httpd2222/include > > -I/apps/httpd2222/include -c -o mod_headers.lo mod_headers.c && touch > > mod_headers.slo > > > > /apps/httpd2222/build/libtool --silent --mode=link gcc -o > > mod_headers.la -l/apps/netpoint/AccessServerSDK/oblix/lib/libobaccess.so > > -rpath /apps/httpd2222/modules -module -avoid-version mod_headers.lo > > > > /usr/bin/ld: cannot find > > -l/apps/netpoint/AccessServerSDK/oblix/lib/libobaccess.so > > > > collect2: ld returned 1 exit status > > > > apxs:Error: Command failed with rc=65536 > > > > > > Try -lobaccess > > > > > > S > > > > > > Sorin, > > > > I was able to get Apache to start, kind of, using the apxs I posted, but > > adding LoadFile directives to the Apache httpd.conf, to load libobaccess.so. > > > > Now, when I run "apachectl -t", it says "OK", but when I try to actually > > start Apache, I get a segfault (see below). The thing is, I have a bunch > > of printfs in almost every function in mod_headers.c, so I could see what > > functions are being called, and it looks like the segfault is occurring > > even before it gets to any of the code parts that I've tweaked (vs. > > original mod_headers.c): > > > > > > [root@apachemodule build-mod_headers]# /apps/httpd2222/bin/apachectl -k > > start -X > > mod_headers-jl V0.09 - start calling OAM API > > In register_hooks > > In create_headers_dir_config > > In create_headers_dir_config > > In header_cmd > > In header_inout_cmd > > In parse_format_tag > > In parse_misc_string > > In create_headers_dir_config > > In header_cmd > > In header_inout_cmd > > In parse_format_tag > > In parse_misc_string > > In header_post_config > > > > I tried running strace, and got (the ending of the strace): > > > > > > In register_hooks > > In create_headers_dir_config > > In create_headers_dir_config > > In header_cmd > > In header_inout_cmd > > In parse_format_tag > > In parse_misc_string > > In create_headers_dir_config > > In header_cmd > > In header_inout_cmd > > In parse_format_tag > > In parse_misc_string > > In header_post_config > > rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 > > rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0 > > rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 > > rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0 > > rt_sigaction(SIGINT, {0x432cc0, [], SA_RESTORER, 0x351432e300}, {SIG_DFL}, > > 8) = 0 > > wait4(-1, [{WIFSIGNALED(s) && WTERMSIG(s) == SIGSEGV}], 0, NULL) = 11711 > > fstat(2, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 5), ...}) = 0 > > mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = > > 0x2a983bf000 > > open("/usr/share/locale/locale.alias", O_RDONLY) = 3 > > fstat(3, {st_mode=S_IFREG|0644, st_size=2528, ...}) = 0 > > mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = > > 0x2a983c0000 > > read(3, "# Locale name alias data base.\n#"..., 4096) = 2528 > > read(3, "", 4096) = 0 > > close(3) = 0 > > munmap(0x2a983c0000, 4096) = 0 > > open("/usr/share/locale/en_US.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 > > ENOENT (No such file or directory) > > open("/usr/share/locale/en_US.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 > > ENOENT (No such file or directory) > > open("/usr/share/locale/en_US/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT > > (No such file or directory) > > open("/usr/share/locale/en.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 > > ENOENT (No such file or directory) > > open("/usr/share/locale/en.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 > > ENOENT (No such file or directory) > > open("/usr/share/locale/en/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No > > such file or directory) > > write(2, "/apps/httpd2222/bin/apachectl: l"..., > > 83/apps/httpd2222/bin/apachectl: line 78: 11711 Segmentation fault > > $HTTPD $ARGV > > ) = 83 > > rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 > > --- SIGCHLD (Child exited) @ 0 (0) --- > > wait4(-1, 0x7fbfffed64, WNOHANG, NULL) = -1 ECHILD (No child processes) > > rt_sigreturn(0xffffffffffffffff) = 0 > > rt_sigaction(SIGINT, {SIG_DFL}, {0x432cc0, [], SA_RESTORER, 0x351432e300}, > > 8) = 0 > > rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 > > read(255, "\nexit $ERROR\n\n", 3420) = 14 > > rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 > > rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 > > exit_group(139) = ? > > > > > > I'll try to do the apxs with -lobccess and post back... > > > > Jim > >