
Debian Stretch에서 실행하기 위해 실행 파일을 크로스 컴파일했는데, 실행하려면 특정 버전의 cURL(7.56 이상)이 필요하고 실행 중에 특정 기능이 필요합니다. 따라서 실행 파일을 실행하겠습니다.
$ sudo setcap cap_net_raw,cap_net_admin+eip my_executable
이 setcap을 실행한 후 실행 파일을 실행하면 다음 오류가 발생합니다.
curl_easy_perform() failed: Out of memory
노트이 오류는 이전 버전의 CURL의 버그로 인해 발생할 것으로 예상됩니다. 그렇기 때문에 위의 cURL 버전으로 업그레이드해야 합니다 7.56
. Raspberry Pi에서 실행하는 경우 기본 버전은 입니다 7.52
. 따라서 시스템의 cURL 버전을 수동으로 최신 릴리스로 업데이트했지만 이것이 이전 버전의 cURL을 가리키는 것이라고 생각합니다.
$ curl --version
curl 7.64.1 (armv7l-unknown-linux-gnueabihf) libcurl/7.64.1 OpenSSL/1.1.0j
Release-Date: 2019-03-27
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: AsynchDNS HTTPS-proxy IPv6 Largefile NTLM NTLM_WB SSL TLS-SRP UnixSockets
여기서 무슨 일이 일어나고 있는 걸까요? setcap
실행 파일이 usr/bin
표준 및 라이브러리 외부의 어딘가에서 동적으로 링크되도록 합니까 usr/local/bin
?