2017-03-24 2 views
0

nuttx 개발에 menuconfig을 사용하십시오. Nuttx make menuconfig 설정을위한 KConfig 파일에서 구문 분석 오류를 무시하는 방법이 있습니까

사용자 정의 보드 설정 아래 수행하려고했던 : 여기

if ARCH_BOARD_FOO 
source "configs/FOO/Kconfig" 
endif 

문제는, 내가 FOO 디렉토리에 대한 일부 권한 제어를하고 싶습니다. 따라서 모든 사용자가 볼 수있는 것은 아닙니다.

그러나 kconfig language는 if 조건이 true인지 여부에 관계없이 항상 파일을 구문 분석합니다. 따라서 이로 인해 menuconfig 사용자는 FOO 디렉토리의 권한이 없습니다.

누구나 알고있는 해결책이 있습니까?

답변

0

맞춤형 보드 구성을 사용해보십시오. 그런 다음 보드 디렉토리는 NuttX 소스 트리의 내부 또는 외부에있을 수 있습니다. 두 경우 모두 구성 시스템에서 볼 수 없습니다.

CONFIG_ARCH_BOARD_CUSTOM=y 
CONFIG_ARCH_BOARD_CUSTOM_NAME="myboard" 
CONFIG_ARCH_BOARD_CUSTOM_DIR="/home/users/me/myboard" 
... and other options ... 

위의 예에서 보드 디렉토리는 NuttX 소스 트리 외부에 있으며 절대 경로입니다. 예를 들어

CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y 

: 또한 NuttX 및 경로 안에 놓여 있었다 기판 구성으로 최상위 디렉토리에 대해 지정 될 수있다

CONFIG_ARCH_BOARD_CUSTOM_DIR="configs/FOO" 
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y 

지금 CONFIG_ARCH_BOARD_CUSTOM = Y가 아닌 경우 설정 시스템에서/home/users/me/myboard 또는 configs/FOO에 액세스 할 수있는 방법이 없습니다.

사용자 정의 보드 Kconfig 파일이 CONFIG_ARCH_BOARD_CUSTOM = y 인 사용자 정의 구성의 configs/dummy/Kconfig에 링크되기 때문에 작동합니다. 그렇지 않으면 구성 시스템을 만족시키기 위해 configs/dummy/Kconfig가 빈 구성에 연결됩니다.

0

오류를 무시하려면 사용할 수 있습니다

if ARCH_BOARD_FOO 
-source "configs/FOO/Kconfig" 
endif