gpt4 book ai didi

c++ - 带有 gSoap 的 C 静态程序

转载 作者:行者123 更新时间:2023-11-28 05:49:07 24 4
gpt4 key购买 nike

我正在尝试使用 gSoap 构建一个静态程序。

我用命令编译程序:

gcc -c -Wall -g  -I./gSoap/   -I/usr/share/gsoap/plugin/    -c -o singlePayment.o singlePayment.c
gcc -o singlePayment singlePayment.o ./gSoap/soapC.c ./gSoap/soapClient.c -lgsoapssl -L/usr/lib/mysql -L/usr/lib -L/lib -lmysqlclient -lssl -lz -lcrypto -Wl,--no-as-needed -ldl -static -fno-stack-protector

程序运行后出错:

 *** stack smashing detected ***: ./singlePayment terminated
======= Backtrace: =========
[0x6ee755]
[0x6ee71e]
[0x59aa2a]
[0x59ab34]
[0x57fcfe]
[0x400762]
[0x6aa4a3]
[0x400469]
======= Memory map: ========
00400000-00833000 r-xp 00000000 08:01 6687104 /home/valon/paypalSOAP/singlePayment
00a32000-00a43000 rw-p 00432000 08:01 6687104 /home/valon/paypalSOAP/singlePayment
00a43000-00a72000 rw-p 00000000 00:00 0
017e5000-01863000 rw-p 00000000 00:00 0 [heap]
7f2cc5007000-7f2cc501a000 r-xp 00000000 08:01 9962058 /lib/x86_64-linux-gnu/libresolv-2.13.so
7f2cc501a000-7f2cc5219000 ---p 00013000 08:01 9962058

...

7ffe8ffe7000-7ffe8ffe8000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
Abgebrochen

如果我将其编译为 none static,则相同的程序可以工作。

gcc -c -Wall -g  -I./gSoap/   -I/usr/share/gsoap/plugin/    -c -o singlePayment.o singlePayment.c
gcc -o singlePayment singlePayment.o ./gSoap/soapC.c ./gSoap/soapClient.c /usr/share/gsoap/plugin/logging.c -lm -lgsoapssl -lssl

知道为什么会这样吗?

最佳答案

看来您正在使用 OpenSSL。如果是这样,请使用 gcc -DWITH_OPENSSL 进行编译,以确保您可以使用 soap_ssl_X 函数,并且在 stdsoap2.h 中声明的引擎上下文将启用 SSL。

关于c++ - 带有 gSoap 的 C 静态程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35632598/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com