>  기사  >  백엔드 개발  >  C++(Ubuntu)에 Python을 포함할 때 AttributeError 발생

C++(Ubuntu)에 Python을 포함할 때 AttributeError 발생

WBOY
WBOY앞으로
2024-02-10 14:09:04948검색

在 C++ 中嵌入 python 时出现 AttributeError (Ubuntu)

질문 내용

python3.11.2에 C++ 프로그램이 내장되어 있습니다. 내장된 Python에서 Python 스크립트를 호출할 때(표준 라이브러리 모듈뿐만 아니라 타사 모듈 가져오기) 다음 오류가 발생합니다.

으아아아

일반(비포함) Python에서 스크립트를 실행하면 모든 것이 잘 작동하고 abc 모듈에 대한 파일 속성도 찾을 수 있습니다.

다음 구성을 사용하여 소스에서 python3.11.2를 컴파일했습니다. --enable-optimizations --enable-shared --prefix="경로/to/my/custom/build/folder/

이상한 점은 내 스크립트가 가져오는 모든 타사 모듈에 file 속성이 있고 잘 로드된다는 것입니다.

이 문제의 원인이 무엇인지 아는 사람이 있나요?

내 운영체제: ubuntu 22.04.3

os와 같은 다른 표준 라이브러리 모듈을 테스트했습니다. 내장된 Python에서 OS의 함수를 호출하면 제대로 작동하지만 OS의 file 속성을 찾을 수 없습니다. 내장되지 않은 Python에서 이 작업을 수행하면 file 속성을 찾습니다.

업데이트: 임베디드 파이썬에 빈 접두사가 있다는 것을 방금 발견했습니다. 이 접두어를 어떻게 변경할 수 있나요? pythonhome을 설정해도 아무 것도 변경되지 않습니다.


정답


모듈의 file 속성을 수동으로 추가하여 해결책을 찾았습니다. file 속성이 기본적으로 설정되지 않은 이유를 아직도 이해하지 못하지만 지금은 이것이 효과가 있습니다.

위 내용은 C++(Ubuntu)에 Python을 포함할 때 AttributeError 발생의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 stackoverflow.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제