2009-05-23 6 views
8

모든 Google 결과를 탐색하고이 오류에 대한 모든 포럼 게시물을 읽었지만 해결할 수 없습니다.PECL 설치가 실패합니다.

PECL 사용하여 아무것도 설치, 난 항상이 오류가 결국 : 다른

checking whether the C compiler works... configure: error: cannot run C compiled programs. 

모든 그들을 BAM 그 시점까지 성공!

저는 CentOS 4.3을 사용하고 있습니다. PEAR는 최신 안정 버전이며, GCC는 안정적이고 최신 버전입니다. 모든 것이 제대로 작동하지만 C 컴파일러는 항상 오류가있는 것처럼 보입니다. 나는 임시적으로 그것을 활성화하여 작업에 대한 권리 privilages를 만들려고 노력했습니다 :

mount -o remount,exec,suid /tmp 

하지만 작동하지 않습니다.

저는 문자 그대로 사용하지 않은 모든 것을 시도했습니다. 어떤 아이디어?

+0

범프? 정말 도움이 필요해! 누구나 더 이상 아이디어가 없습니까? – James

+0

확실한 질문입니다. C 컴파일 된 프로그램을 실행할 수 있습니까? 안녕하세요 - 세계 애플 리케이션 (또는 다른 건) 컴파일 했니? echo 'int main() {printf ("Hello, world! \\ n");}'| gcc -xc -o hello && ./hello –

+0

그래도 C 컴파일 된 앱을 실행할 수 있다고 확신한다. PECL을 사용하여 나는 다른 많은 애플 리케이션을 컴파일했다. – James

답변

7
cd ~ 
mkdir setups 
cd setups 
wget http://pecl.php.net/get/APC-3.1.2.tgz 
tar -xvf APC-3.1.2.tgz 
cd APC-3.1.2 
phpize && ./configure --with-apxs && make 

신속하게 작성하여 수동 작업으로 APC를 설치할 수있었습니다. 모듈을 PHP 모듈에 복사하고 php.ini에 확장자를 추가하는 것. 완벽하게 작동합니다.

+0

이것은 처음에는 oauth 확장 프로그램을 설치하는 데 유용했습니다. 설치 : pcre-d, 나는 이것을 다음과 같이했다. yum install pcre pcre-d. 누군가가 똑같은 문제를 안고있는 경우에 대비해. –

9

나는를 CentOS 5.3에있어 나는 성공적으로 양쪽에 NOEXEC 플래그를 제거하여 (내 경우에는 APC)를 실행 PECL 설치 프로그램을 얻을 수있었습니다/tmp를 은/var/tmp를

mount -o remount,exec,suid /tmp 
mount -o remount,exec,suid /var/tmp 

는 이렇게 이것은/tmp에서만 작동하지 않았습니다. "C 컴파일러가 작동하는지 확인하는 중 ... configure : error : C 컴파일 된 프로그램을 실행할 수 없습니다."라는 오류 메시지가 계속 나타납니다.

설치가 완료되면 noexec를 사용하여 다시 탑재해야합니다. 나는 MongoDB의 드라이버를 설치 유사한 문제가 있었다

+0

방금 ​​내 생명을 구했어. – kubilay

2

, 이것은 나를 위해 일한 : 다음

sudo mkdir /root/tmp.pear 
sudo mkdir /root/tmp.pear-build-root 

sudo ln -s /root/tmp.pear /tmp/pear 
sudo ln -s /root/tmp.pear-build-root /tmp/pear-build-root 

:

sudo sudo pecl install XXX 

(루트 만 실행 파일을 생성 할 수 있기 때문 보안 구멍을 열지 않습니다 이 두 디렉토리에서)

다음은 이 아니며 PECL에 대해이 아닌 점을 유의하십시오.

sudo pear config-set temp_dir /var/tmp/pear/temp 
관련 문제