목차
머리말
기본 환경
주요 문제
成果
PHP 프레임워크 Swoole Mac에서 Swoole을 컴파일하고 설치할 때 .h 파일이 존재하지 않는 문제에 대한 해결 방법

Mac에서 Swoole을 컴파일하고 설치할 때 .h 파일이 존재하지 않는 문제에 대한 해결 방법

Nov 05, 2020 pm 02:27 PM
mac swoole

머리말

1. 사실 설치 과정이 이렇게까지 될 줄은 정말 예상도 못했어요 음... 어떻게 표현하자면 어렵다고 하면 사실 어렵지 않은데 꽤 역겹고, 성격도 Mac의 기기 자체 환경으로 인해 발생하는 다양한 문제와 일부 파일이 자동으로 로딩되지 않습니다.

2. 그리고 이런 질문은 정보가 정말 거의 없으니 기록해두세요.


기본 환경


및 Xcode가 설치되지 않았습니다.
로컬 버전은 PHP 버전 7.3과 함께 제공됩니다.
로컬 환경 구성 도구는 PHP 개발 환경의 Mac 버전인 MxSrvs를 사용합니다. 도구 공식 웹사이트: http://www.xsrvs.com/ 도구는 작지만 모든 필수 요소를 갖추고 있으며 개발에 충분합니다.

주요 문제

1. PHP의 헤더 파일을 찾을 수 없습니다

2 Openssl의 헤더 파일을 찾을 수 없습니다(오류 메시지는 PHP의 헤더 파일과 유사합니다)

준비 작업

공식 웹사이트 요구 사항

여기서 한 가지 더 말씀드리고 싶은 점은 공식에서 autoconf의 버전 수 이상이 필요한지 명시하지 않았지만 컴파일하고 설치할 때 2.68 이상이 필요하다는 것입니다.

Git에서 소스 코드 패키지를 다운로드다운로드 주소, 내가 다운로드한 것은

설치 과정

로컬이기 때문에 다운로드한 패키지를 CD 앞에 아무것도 쓰지 않고 콘솔 디렉터리에 직접 넣습니다. 디렉토리 또는 이와 유사한 것을 선택한 후 다음 코드를 실행합니다. 도구에서 PHP 버전으로 컴파일하고 싶기 때문에 도구에서 제공하는 것을 사용합니다phpzie.

/Applications/MxSrvs/bin/php/bin/phpize./configure \--enable-openssl \--enable-http2  \make && sudo make install
로그인 후 복사

당연히 문제 1이 발생했습니다. Baidu나 Bing 모두 이 문제와 관련된 것을 찾지 못했습니다. 그러다가 몇몇 그룹 친구들에게 물어보니 어떤 사람들은 버전이 너무 높아서 Swoole이 가장 적합하다고 말했습니다. 버전은 7.2 버전입니다.

결국 질문의 본질을 지적한 답변이 저에게 영감을 주었습니다. 일반적인 답변은 macOs 10.10 이상 버전부터 Mac에 포함된 PHP 버전이 일부 폴더를 취소했다는 의미입니다. 함께 제공되는 PHP 컴파일 및 설치에 필요한 파일은 없습니다.很 그 이유를 알고 보면 결국 우리가 개발한 것들이 적지 않기 때문에 시스템 환경 변수에 동적으로 대응하는 방법만 고려하면 됩니다. 이전에 시스템 환경변수 경로를 설정한 적이 있어서 약간의 감회가 있어서 환경변수 설정 방법을 알아봤습니다.

실제로는 .bash_profile



을 통해 환경 변수를 설정하지만, 다시 시작한 후에는 매번 명령줄에

source ~/.bash_profile
로그인 후 복사
로그인 후 복사

를 입력해야 적용되기 때문에 Mac을 사용하면 더 번거롭습니다. .zshrc 파일을 자동으로 로드합니다. 파일 끝에

source ~/.bash_profile
로그인 후 복사
로그인 후 복사

를 추가하여 매번 수동으로 입력할 필요가 없도록 하는 메커니즘입니다. 환경 변수를 동적으로 설정하는 목적을 달성합니다.


이 시점에서 첫 번째 문제가 해결되었습니다.
두 번째 설치를 계속하면 두 번째 문제가 발생합니다. 이 문제를 해결하는 방법은 비교적 간단합니다.

실제로 발생하는 문제는 모두 Mac과 함께 제공되는 소프트웨어에 이 .h 헤더 파일이 없기 때문에 발생합니다. 따라서 이러한 문제는 도구에 바인딩된 변수를 통해 발생합니다. 변경되는 환경 변수를 구현하는 것은 이를 처리하는 영리한 방법입니다. 논리적으로 말하면 openssl의 이 확장은 여러 곳에서 사용되므로 시스템의 전체 환경에 설치됩니다.

openssl을 설치하기 전에 먼저 Xcode를 설치해야 하는데 이 단계를 건너뛰지 않았습니다. Mac의 많은 환경 변수가 Xcode 파일 디렉터리에 연결되어 있는 것 같습니다. 하지만 설치 후에는 무시할 수 없습니다. openssl을 다시 설치합니다. 명령줄 입력

brew install openssl
로그인 후 복사

이미 존재하는 것으로 감지되면 다시 설치하고 실행하라는 메시지가 표시됩니다

brew reinstall openssl@1.1
로그인 후 복사


其中有一句,就是让把这个添加到

If you need to have openssl@1.1 first in your PATH run:  echo 'export PATH="/usr/local/opt/openssl@1.1/bin:$PATH"' >> ~/.zshrc
로그인 후 복사

把这个也添加之前修改过的 .zshrc 文件即可。
接下来就是重头戏了。说白了就是简单的粘贴复制,把 openssl 的文件夹,路径为

/usr/local/Cellar/openssl@1.1/1.1.1h/include/openssl
로그인 후 복사

复制到

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/
로그인 후 복사

目录下即可
至此,第二个问题解决。

然后再运行编译 Swoole ,等待编译完成就可以了

成果


打完收工!

위 내용은 Mac에서 Swoole을 컴파일하고 설치할 때 .h 파일이 존재하지 않는 문제에 대한 해결 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Mac 컴퓨터 이름, 호스트 이름, Bonjour 이름을 쉽게 사용자화하는 3가지 팁 Mac 컴퓨터 이름, 호스트 이름, Bonjour 이름을 쉽게 사용자화하는 3가지 팁 Mar 06, 2024 pm 12:20 PM

많은 Mac 사용자는 장치의 기본 이름을 유지하는 경향이 있으며 변경을 고려하지 않을 수도 있습니다. 많은 사람들이 초기 설정에서 "Johnny's MacBook Air" 또는 간단히 "iMac"과 같은 이름을 고수하는 것을 선택합니다. Mac의 이름을 변경하는 방법을 배우는 것은 특히 여러 장치를 사용하는 경우 장치를 빠르게 구별하고 관리하는 데 도움이 되므로 매우 유용한 기술입니다. 다음으로 macOS 시스템에서 컴퓨터 이름, 호스트 이름, Bonjour 이름(로컬 호스트 이름)을 변경하는 방법을 단계별로 알려드리겠습니다. Mac 이름을 변경해야 하는 이유는 무엇입니까? Mac의 이름을 변경하면 개성을 보여줄 수 있을 뿐만 아니라 사용자 경험을 개선하는 데에도 도움이 됩니다. Mac을 개인화하세요. 기본 이름이 마음에 들지 않을 수 있으므로 원하는 이름으로 변경하세요.

pkg 파일을 Mac에 설치하시겠습니까? pkg 파일을 Mac에 설치하시겠습니까? Feb 20, 2024 pm 03:21 PM

서문: 오늘 이 사이트는 Mac에 pkg 파일을 설치하는 것과 관련된 내용을 공유합니다. 현재 직면한 문제를 해결할 수 있다면 이 사이트를 팔로우하고 지금 시작하는 것을 잊지 마세요! 운영 체제를 업그레이드하기 위해 이전 버전의 macos pkg를 설치할 수 없습니다. 노트북이 이전 운영 체제 버전을 사용하고 있는 경우 최신 운영 체제 버전으로 업그레이드하는 것이 좋습니다. 이전 버전은 최신 macOS 시스템 설치를 지원하지 않을 수 있기 때문입니다. 디스크 유틸리티에서 "삭제"를 선택한 다음 형식에서 Macos 확장자를 선택하고 암호화 옵션을 확인하지 않으며 apfs 형식을 선택하지 않고 마지막으로 "삭제" 버튼을 클릭하여 완료할 수 없는 문제를 해결합니다. macOS 설치. 애플리케이션 아이콘을 App으로 시작하는 파일로 드래그하세요.

음성 메시지를 텍스트로 자동 변환하도록 WeChat Mac을 설정하는 방법 - 음성을 텍스트로 변환하도록 설정하는 방법 음성 메시지를 텍스트로 자동 변환하도록 WeChat Mac을 설정하는 방법 - 음성을 텍스트로 변환하도록 설정하는 방법 Mar 19, 2024 am 08:28 AM

최근 일부 친구들이 음성 메시지를 텍스트로 자동 변환하도록 WeChat Mac을 설정하는 방법에 대해 편집자에게 문의했습니다. 다음은 음성 메시지를 텍스트로 자동 변환하도록 WeChat Mac을 설정하는 방법입니다. 1단계: 먼저, Mac 버전의 WeChat을 엽니다. 그림에 표시된 대로: 2단계: 다음으로 "설정"을 클릭합니다. 그림에 표시된 대로: 3단계: 그런 다음 "일반"을 클릭합니다. 그림에 표시된 대로: 4단계: 그런 다음 "채팅 음성 메시지를 텍스트로 자동 변환" 옵션을 선택합니다. 그림과 같이: 5단계: 마지막으로 창을 닫습니다. 그림과 같이:

Mac에서 HEIC 사진을 JPG로 변환하는 3가지 방법 Mac에서 HEIC 사진을 JPG로 변환하는 3가지 방법 Mar 15, 2024 pm 08:43 PM

기본적으로 iPhone은 카메라에서 HEIC 형식으로 사진을 찍습니다. HEIC는 고효율 이미지 컨테이너(High Efficiency Image Container)를 의미하며 PNG 또는 JPG 파일보다 더 많은 픽셀 데이터를 저장할 수 있어 다른 형식에 비해 iPhone 저장 공간을 훨씬 적게 차지합니다. 이러한 파일은 iPhone에서 가장 잘 작동하지만 Apple 이외의 장치와 공유할 때 사진이 흐리거나 거친 결과를 낳는 경우가 많기 때문에 인터넷에서는 널리 받아들여지지 않습니다. HEIC 이미지가 다른 장치에서 호환되는지 확인하려면 해당 이미지를 JPG 형식으로 변환해야 할 수도 있습니다. 이 기사에서는 Mac에서 HEIC 이미지를 JPG로 변환하는 방법을 소개합니다. Mac에서 HEIC 사진을 JPG로 변환하는 방법 [3가지 방법]

Mac 구성 파일이 적용되지 않습니까? Mac 구성 파일이 적용되지 않습니까? Feb 20, 2024 pm 02:00 PM

소개: 이 기사는 Mac 구성 파일이 적용되지 않는 것과 관련된 내용을 소개하기 위해 작성되었습니다. 도움이 되기를 바랍니다. 살펴보겠습니다. Mac에서 환경 변수가 적용되지 않는 문제에 대한 해결 방법 Mac 시스템에서 환경 변수를 구성한 후 현재 터미널에서만 유효하며 터미널을 전환하면 무효화되는 것으로 나타났습니다. 문의 결과, Mac 시스템에는 Ultimate shell-zsh라는 도구가 사전 설치되어 있으며, 환경 변수 읽기는 .zshrc 파일에 설정되어야 하는 것으로 나타났습니다. 2. 구성 파일을 적용하려면 위 구성을 .zshrc에만 추가하면 됩니다. 위 설정을 하지 않으면 다음에 ~/.bash_profile을 소스로 다시 열 때마다 적용됩니다.

Laravel에서 Swoole 코루틴을 사용하는 방법 Laravel에서 Swoole 코루틴을 사용하는 방법 Apr 09, 2024 pm 06:48 PM

Laravel에서 Swoole 코루틴을 사용하면 많은 수의 요청을 동시에 처리할 수 있습니다. 장점은 다음과 같습니다. 동시 처리: 여러 요청을 동시에 처리할 수 있습니다. 고성능: Linux epoll 이벤트 메커니즘을 기반으로 요청을 효율적으로 처리합니다. 낮은 리소스 소비: 더 적은 서버 리소스가 필요합니다. 간편한 통합: Laravel 프레임워크와 원활하게 통합되어 사용이 간편합니다.

Mac에서 압축 파일을 열 수 없나요? Mac에서 압축 파일을 열 수 없나요? Feb 20, 2024 pm 02:18 PM

소개: 이 문서는 열 수 없는 Mac 압축 파일에 대한 관련 내용을 소개하기 위해 작성되었습니다. 여러분에게 도움이 되기를 바랍니다. 살펴보겠습니다. Mac에서 압축 해제된 rar 파일을 열 수 없는 이유는 무엇입니까? Mac 압축 해제 소프트웨어가 없기 때문에 모든 분들께 Mac 버전의 압축 해제 소프트웨어를 추천하고 싶습니다. 360 압축과 같이 Windows에서 일반적으로 사용되는 압축 소프트웨어와 유사합니다. 파일을 열고 쉽게 압축을 풀면 됩니다. RAR 파일을 열 수 없는 Apple Mac 컴퓨터를 작동하는 단계는 다음과 같습니다. 첫 번째 단계는 RAR 파일 압축 해제 애플리케이션을 설치하는 것이며, 설치를 완료하려면 Apple ID 계정과 비밀번호를 입력해야 합니다. 두 번째 단계에서는 설치가 완료된 후 Mac 데스크탑으로 돌아가서 RAR 파일을 두 번 클릭하여 파일 내용을 열고 압축을 풉니다. 3. 전원을 켜세요

Mac에서 GUID를 사용하여 드라이브를 포맷하는 방법 Mac에서 GUID를 사용하여 드라이브를 포맷하는 방법 Apr 12, 2024 am 09:13 AM

Mac 시스템의 드라이브를 포맷하는 것은 올바른 작동을 위해 매우 중요합니다. 다양한 시스템 문제를 방지하고 Mac을 전반적으로 더욱 안정적으로 만드는 데 도움이 됩니다. Mac은 당연히 다양한 파티션 구성표를 지원하지만 GUID는 다른 옵션에 비해 더 현대적이고 다양한 기능을 제공합니다. 또한 최신 Mac에 필수적이며 더 큰 드라이브를 지원하여 최고의 호환성과 안정성을 제공합니다. 이 가이드에서는 macOS에서 GUID를 사용하여 드라이브를 포맷하는 방법을 자세히 살펴봅니다. 즉, 시작합시다. macOS 설치에 GUID가 중요한 이유 GUID(Globally Unique Identifier의 전체 형식)는 macOS 운영 체제를 설치하고 실행하는 데 도움이 되는 파티션 구성표입니다. 기존 MBR(주요 리드)보다 낫습니다.

See all articles