programing

프롬프트 없이 PECL 모듈 설치

sourcetip 2022. 9. 12. 12:10
반응형

프롬프트 없이 PECL 모듈 설치

방금 Ubuntu Natty에 소스로부터 PHP를 설치했습니다.

PECL을 사용하여 APC나 Memcache와 같은 추가 모듈을 설치하려고 합니다.다음과 같은 것을 사용하고 있습니다.

pecl install apc

하지만 확인하라는 메시지가 나타납니다.

pecl 명령어를 사용하여 기본값만 받아들이려면 어떻게 해야 하나요?게시판에서 이런 걸 봤어요printf "yes\n" | pecl install pecl_http그러나 APC의 경우 기본값이 no인 경우에는 yes라고 대답합니다(내 생각에).

잘 부탁드립니다.

다음 코드는 정상적으로 동작하고 있는 것 같습니다.

printf "\n" | pecl install apc

apc를 다른 PECL 패키지로 대체할 수도 있습니다.

건배.

"yes" 명령어는 단순히 "yes"를 입력하는 것 이상의 작업을 수행할 수 있습니다. 원하는 모든 작업을 반복해서 입력할 수 있습니다.빈 행을 포함하여 기본값을 받아들이는 것이 좋습니다.

나 자신도 이것이 필요했기 때문에, 다음과 같이 나에게 효과가 있었습니다.

yes '' | pecl install -f apc

Obinwanne의 Hill의 답변이 적중했기 때문에, 새로운 것은 제공하고 있지 않습니다만, 다음의 것도 화려한 툴이 없는 최단이라고 생각됩니다.

echo '' | pecl install apc

모든 프롬프트에 대해 같은 답변('예', '아니오', ')을 하고 싶지 않은 경우--configureoptions각 옵션의 특정 값을 설정합니다(PECL 매뉴얼 참조).

패키지의 package.xml 파일을 검색하여 구성 가능한 옵션을 확인할 수 있습니다.예를 들어,memcached패키지, 여기로 이동합니다.

https://github.com/php-memcached-dev/php-memcached/blob/master/package.xml

검색:<configureoption>태그(이 예에서는 다음과 같습니다).

<configureoption name="with-libmemcached-dir"     prompt="libmemcached directory"     default="no"/>
<configureoption name="with-zlib-dir"             prompt="zlib directory"             default="no"/>
<configureoption name="with-system-fastlz"        prompt="use system fastlz"          default="no"/>
<configureoption name="enable-memcached-igbinary" prompt="enable igbinary serializer" default="no"/>
<configureoption name="enable-memcached-msgpack"  prompt="enable msgpack serializer"  default="no"/>
<configureoption name="enable-memcached-json"     prompt="enable json serializer"     default="no"/>
<configureoption name="enable-memcached-protocol" prompt="enable server protocol"     default="no"/>
<configureoption name="enable-memcached-sasl"     prompt="enable sasl"                default="yes"/>
<configureoption name="enable-memcached-session"  prompt="enable sessions"            default="yes"/>

그런 다음 다음과 같이 install 명령어에 이러한 옵션을 전달할 수 있습니다.

pecl install --configureoptions 'with-libmemcached-dir="no" with-zlib-dir="no" with-system-fastlz="no" enable-memcached-igbinary="yes" enable-memcached-msgpack="no" enable-memcached-json="no" enable-memcached-protocol="no" enable-memcached-sasl="yes" enable-memcached-session="yes"' memcached

언급URL : https://stackoverflow.com/questions/8141407/install-pecl-modules-without-the-prompts

반응형