我写了一个小程序,它使用libcurl及其特别是SMTP功能。
由于主机安装的libcurl的版本/支持的协议并不适合我的需要,我在我的主目录中编译了一个curl / libcurl版本。
我配置了PATH,所以我可以使用我自己编译的curl版本,curl -V
看起来很好,我确实需要它。
在curl-config
的帮助下,我编写了这样的程序:
gcc -I/home/me/include -o my-program my-program.c -L/home/me/lib -lcurl
如果我从shell调用该程序,它可以正常工作而没有任何错误。
如果我通过cron调用它会导致此错误,这会变得棘手:
curl_easy_perform() failed: Unsupported protocol
Unsupported protocol
错误表示使用了错误的libcurl构建,因为主机安装的curl确实没有SMTP支持。
我已尝试在shell(/ home / me / bin)和C_INCLUDE_PATH中设置PATH,如建议的here(/ home / me / include),但都没有解决我的问题。
我的谬误在哪里?有什么建议吗?
谢谢,蒂姆
答案 0 :(得分:1)
您需要在LD_LIBRARY_PATH环境变量中指定卷曲库的路径。 C_INCLUDE_PATH用于头文件的路径。