使用gSOAP创建Web服务时未生成共享对象文件

时间:2017-12-22 13:35:57

标签: apache gsoap .so

我正在使用gSOAP在this website之后从C代码创建web服务。我使用这些命令:

soapcpp2 -c -SL -wx calc.h
bin/apxs -a -c calcserver.c soapC.c soapServer.c stdsoap2.c
chmod 755 .libs/calcserver.so

前两个命令成功执行并生成这些文件:

calcserver.o
calcserver.lo
calcserver.slo
calcserver.a

但似乎没有生成文件calcserver.so

  1. .so文件未生成的原因是什么?
  2. 有没有办法从上面生成的文件创建.so个文件?

1 个答案:

答案 0 :(得分:0)

calcserver.so文件放在当前目录下的.libs目录中。 .libs目录应包含calcserver.so和其他文件:

calcserver.a
calcserver.la
calcserver.lai
calcserver.o
calcserver.so
soapC.o
soapServer.o
stdsoap2.o

要部署Apache模块,请编辑httpd.conf(通常位于1 / private / etc / apache2 / httpd.conf or if you locally installed httpd in / home / username / apachegsoap { {1}} / home / username / apachegsoap / conf`)并添加以下条目:

then you will find it in

其中<IfModule mod_gsoap.c> <Location /soap> SetHandler gsoap_handler SOAPLibrary /home/username/apachegsoap/.libs/calcserver.so Order allow,deny Allow from all </Location> </IfModule> 应修改为/home/username/apachegsoap目录的路径。

有关详细信息,请参阅https://www.genivia.com/doc/apache/html/index.html

上的官方gSOAP Apache模块文档