我正在尝试在 AIX 5.3 上安装 WWW::Curl::Easy Perl 模块。我已经在 /usr/local 中安装了curl(从源代码)。当尝试构建 Perl 模块时,我得到这个:
$ perl Makefile.PL 在/usr/local/include/curl/curl.h中找到curl.h 为您的 libcurl 版本构建curlopt-constants.c 为您的 libcurl 版本构建 Easy.pm 常量 注意(可能无害):找不到 -lcurl 的库 为 WWW::Curl 编写 Makefile
我认为“可能无害”的错误并不是那么无害。
$ 使 跳过 blib/lib/WWW/Curl/Form.pm (不变) 跳过 blib/lib/WWW/Curl.pm (不变) 跳过 blib/lib/WWW/Curl/Multi.pm (不变) 跳过 blib/lib/WWW/Curl/Easy.pm (不变) cc_r -c -I/usr/local/include -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT -q32 -D_LARGE_FILES -qlonglong -O -DVERSION=\"3.02\" -DXS_VERSION=\"3 .02\ “ -I /usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE” Curl.c “Curl.xs”,第 681.36 行:1506-280 (W) 不允许在“unsigned long*”和“int*”类型之间进行函数参数赋值。 为 WWW::Curl () 运行 Mkbootstrap chmod 644 卷曲.bs rm -f blib/arch/auto/WWW/Curl/Curl.so ld -bhalt:4 -bM:SRE -bI:/usr/opt/perl5/lib/5.8.2/aix-thread-multi/CORE/perl.exp -bE:Curl.exp -bnoentry -lpthreads -lc_r 卷曲。 o -o blib/arch/auto/WWW/Curl/Curl.so ld:0711-317 错误:未定义符号:.curl_global_init ld:0711-317 错误:未定义符号:.curl_multi_perform ld:0711-317 错误:未定义符号:.curl_multi_fdset ld:0711-317 错误:未定义符号:.curl_multi_remove_handle ld:0711-317 错误:未定义符号:.curl_multi_add_handle ld:0711-317 错误:未定义的符号:.curl_global_cleanup ld:0711-317 错误:未定义符号:.curl_easy_getinfo ld:0711-317 错误:未定义符号:.curl_easy_perform ld:0711-317 错误:未定义符号:.curl_slist_free_all ld:0711-317 错误:未定义符号:.curl_slist_append ld:0711-317 错误:未定义符号:.curl_easy_setopt ld:0711-317 错误:未定义的符号:.curl_version ld:0711-317 错误:未定义的符号:.curl_multi_cleanup ld:0711-317 错误:未定义符号:.curl_multi_init ld:0711-317 错误:未定义的符号:.curl_easy_cleanup ld:0711-317 错误:未定义符号:.curl_easy_duphandle ld:0711-317 错误:未定义符号:.curl_easy_init ld: 0711-345 使用 -bloadmap 或 -bnoquiet 选项获取更多信息。 make:最后一个命令的错误代码是 8。 停止。
我怀疑对于熟悉 C 编译器和链接器的人来说这是一件相当简单的事情。感谢任何帮助。
看起来
ld
行中缺少 libcurl 的链接器参数。 这是 curl-config --libs
的输出,应该类似于 -L/opt/local/lib -lcurl
。 确保 /opt/local/lib/libcurl.so
存在(其中 /opt/local/lib
是 -L
之后的任何内容)。
您可能有 libcurl 标头,但没有共享库。