Eclipse Linux Kernel Autoconf.h란 무엇이며 어떻게 수정합니까?

0 Comments

PC 문제에 대한 가장 포괄적이고 사용하기 쉬운 솔루션입니다. 더 이상 끝없는 옵션을 스크롤하거나 기다리지 않고 클릭 한 번으로!

때때로 컴퓨터에서 우수한 eclipse Linux Kernel autoconf.h 오류 규칙을 볼 수 있습니다. 문제의 원인에는 여러 가지가 있습니다.

eclipse unix like kernel autoconf.h

다음은 Linux 커널 소스 코드를 사용할 때 CDT가 잘 작동하도록 하는 특정 단계입니다. 이러한 단계 중 일부를 잊어버리더라도 관계는 여전히 상당 부분 작동할 수 있지만 일부는 완벽하게 작동하지 않을 수도 있습니다. 예를 들어, 적절한 파일 C에 대한 잘못된 포함 단계를 찾을 수 있습니다.

어쨌든, 이러한 계단이 완성된 후에 특정 인덱서가 Linux 커널 소스와 관련하여 좋은 거래를 얻을 수 있도록 돕는 방법을 알아내고 싶을 것입니다.

eclipse linux kernel autoconf.h

면책 조항: 이 핸들은 Eclipse Oxygen 4.7.2 + CDT 9.4.0용으로 마지막으로 업데이트되었으며 원래 Eclipse 3.5.1 + CDT 6.0.0용으로 개발되었습니다.

<올>

  • Eclipse 등을 CDT로 다운로드하여 설치합니다.
  • autoconf.h와 함께 사용할 때 CONFIG_* 생성을 설치하도록 전체 커널을 구성하고 빌드합니다. 이 작업은 Eclipse를 다운로드하고 설치하기 전이나 후에 항상 수행할 수 있습니다.
  • 전문가가 올바른 커널을 가지고 있다고 말하는지 확인하십시오(예: 저장소 코드. 올바른 git 분기를 참조해야 함). 모든 사람이 나중에 다른 부서를 확인한다면 그것은 확실히 문제가 없지만 코드를 다시 인덱싱하는 데 도움이 필요할 수 있습니다. 이 작업과 결합하는 데는 약 27분밖에 걸리지 않습니다.
  • Eclipse.File->Create->C 실행
  • 프로젝트 클릭
  • 예를 들어 프로젝트 이름 my_kernel을 입력합니다.
  • “표준 위치 사용”의 선택을 취소하고 “위치” 필드에 전화번호부의 커널 원인을 입력하십시오.
  • 일반적으로 프로젝트 유형: 섹션에서 Makefile 프로젝트를 열고 빈 프로젝트를 선택합니다.
  • 오른쪽에서 Linux GCC를 선택합니다.
  • “고급 설정…”을 클릭하면 속성 대화 상자가 나타날 가능성이 큽니다.
  • 참고. 이 문제는 새로운 버전의 Eclipse(예: Oxygen)가 재구성을 적극적으로 색인화하므로 Eclipse가 몸 전체의 후속 단계의 나머지 부분 동안 고통스럽게 완전히 정지할 수 있기 때문입니다. 특히 일반적으로 올바른 작은 크기만 사용해야 하는 경우에 그렇습니다. 특정 커널과 관련된 인덱스의 일부입니다. 이를 우회하려면 목록을 일시적으로 비활성화하고 일반 C/C++ 클래스도 열고 인덱서를 클릭하고 프로젝트별 설정 활성화를 클릭한 다음 인덱서 활성화를 선택 취소합니다.
  • 왼쪽에서 널리 사용되는 C/C++ 솔루션을 엽니다.
  • 전처리기 경로 활성화를 클릭합니다.
  • 전체 언어 목록에서 GNU C를 선택합니다.
  • 공간 항목 목록에서 사용자 정의 CDT 공간 항목 선택
  • “추가”를 클릭합니다…. 왼쪽 상단 계획 드롭다운에서 전처리기 매크로 시작을 선택하고 오른쪽 상단 드롭다운에서 경로를 선택하고 파일 프레임 텍스트에 대해 “include/linux/kconfig.Into h”를 호출합니다. 참고 1: 오래된 옥수수 커널(예: 4.1.12, 4.2.7 이하)에서는 적절한 “include/generated/autoconf.h”가 더 잘 작동합니다. 최신 커널에서 kconfig selection.h는 이 소중한 파일에 가 포함되어 있고 IS_ENABLED(옵션)와 같은 일부 테스트도 CDT 스캐너에 의해 확장된 적절한 방식으로 통과하기 때문에 더 좋습니다. 참고 2: 이전 커널용 커널, 2.6.33과 달리 autoconf.h의 위치는 일반적으로 단순히 include/linux/autoconf.h
  • 입니다.

  • 또한 사용하는 다양한 매크로 파일 유형을 추가하세요.
  • 클릭 인덱서
  • 프로젝트별 설정 사용을 자주 선택하십시오.
  • 공유 어셈블리에 포함되지 않은 소스 색인 문서를 비활성화합니다.
  • 왼쪽에서 “심볼이 있는 경로”를 클릭하십시오.
  • 또한 “포함” 탭을 구입한 다음 GNU C를 구입하십시오.
  • “추가”를 클릭합니다…
  • 작업 공간…을 누른 다음 커널 디렉토리를 선택하고 include/uapi를 포함합니다.
  • 아키텍처/아키텍처/및 아치/아키텍처/인클루드/uapi와 같은 특정 추가, 작업 공간 및 페어 기사 게시 페이지를 추가합니다. B. arch/powerpc/include 및 (UAPI 인터넷 사이트 arch/powerpc/include/uapi는 커널에 자주 포함되는 사용자/커널 헤더 분리를 할 수 있도록 여기에서 이상적으로 자세히 설명되어 있습니다)
  • # 기호 탭을 클릭합니다.
  • “추가”를 클릭합니다…
  • __KERNEL__ 가능한 새 이름 설정
  • 값을 1로 설정하고 확인을 클릭합니다.
  • 소스 위치 탭으로 이동합니다.
  • 실제로 프로젝트 이름 옆에 있는 더하기 기호를 클릭합니다.
  • 화면 요소를 선택하고 필터 편집…을 클릭합니다.
  • “일부 추가…”를 클릭한 다음 모든 커널 시작 지점에서 일상 생활에서 사용하지 않을 arch/* 디렉토리를 모두 선택합니다(즉, 현재 사용 중인 구조에 사용할 수 없는 디렉토리). . >
  • 확인을 클릭한 다음 다시 확인을 클릭하여 이 대화상자를 비교하세요.
  • 일반 섹션에서 포함 경로, 매크로 등 전처리기에 대한 특정 c/c++.
  • “Suppliers” 손실을 클릭하고 “CDT GCC Embedded Compiler Options”를 선택합니다.
  • 프로젝트에서 글로벌 엔터프라이즈 공유 사용을 선택 취소합니다.
  • 컴파일러 사양을 가져오기 위한 현재 요청이 포함된 -nostdinc를 추가합니다. 핵심은 ISO C99에 정의된 자율적 상황입니다. 이것이 실제로 의미하는 바는 중독되기를 원하지 않으며 “호스트” h2 태그 파일을 라이브러리와 연결하는 지금 당장은 작동할 수 없다는 것입니다.
  • 또한 위의 컴파일러 사양을 얻기 위해 명령에 -iwithprefix 포함을 개선합니다. 그 주된 이유는 -nostdinc가 헤더 컴퓨터 데이터에 대한 적절한 디렉토리를 위해 기본적으로 시스템을 스캔하지 않도록 돕도록 gcc에 지시했기 때문입니다. 그러나 Linux 커널은 stdarg.h, stdbool.h 등과 같은 “독립 실행형 환경”에 대해 GCC에서 제공하는 헤더에 크게 의존하며 일반적으로 GCC 이후 /lib/gcc//< 버전에 배치됩니다. >/포함합니다. 따라서 중첩됩니다.
  • 콘솔 보기에서 콘솔 할당을 확인하고 제대로 실행되는지 확인합니다.
  • 속성 대화 상자에서 확인을 클릭합니다.
  • 참고. 이전에 일시적으로 비활성화한 경우 일반적으로 권장되는 인덱싱. 다시 켤 수 있도록 도와줄 시간입니다. 모든 “C/C++ 개요” 섹션에서 “인덱서”를 클릭하고 “인덱서 활성화”를 선택합니다.
  • 특정 C 프로젝트 대화 상자를 닫으려면 클릭하십시오.
  • 프로젝트가 좀 더 자동으로 색인화되어야 합니다.
  • 디스크 목록은 디스크의 경우 20분, SSD의 경우 약 5분이 소요됩니다.
  • <올>

  • arch/architecture/include를 추가하면 기본 포함 경로의 일부만 얻을 수 있습니다. 각 코어를 완전히 인덱싱하려면 수십 가지 전략을 자주 추가해야 합니다. 이것이 내가 PTP의 원격 목록 기능을 사용하여 Linux 커널과 싸우는 동안 사용하는 것을 권장하지 않는 이유입니다. 왜냐하면 많은 경우에 발생하는 것으로 설명할 수 있는 것은 실제로 수십 개의 헤더 이미지 위치 오류를 보고하기 때문입니다. 사람의 실수를 보고하는 과정에서 웹사이트에 연결하는 데 오랜 시간이 걸릴 수 있으므로 색인을 생성하는 데 몇 시간이 걸릴 수 있습니다.
  • 느린 컴퓨터와 데이터 손실에 대해 걱정하지 마십시오! 솔루션이 있습니다.