티스토리 뷰

*** Aborting RTI build procedure for model |>MODEL_NAME<| 오류 해결 (RTI1401 / dSPACE)

Simulink 빌드 중단 원인 TOP 정리 +
해결 체크리스트

dSPACE MicroAutoBox(또는 AutoBox) + RTI1401 환경에서 Simulink 모델을 빌드하다 보면 아래처럼 뜨는 경우가 많습니다.

*** Aborting RTI build procedure for model |>MODEL_NAME<|
*** Stopped RTI build procedure
The call to rti1401_make_rtw_hook, during the after_make hook generated the following error

이 메시지는 “원인”이 아니라 **결과(빌드가 RTI 후처리 단계에서 멈춤)**를 의미합니다.
즉, 진짜 원인은 보통 그 위/아래에 같이 찍히는 Simulink 에러 또는 경로/이름/툴체인 문제입니다.
이 글에서는 실제로 많이 나오는 원인을 기준으로, 가장 빠르게 해결하는 순서대로 정리합니다.


1. 이 오류의 의미: RTI Hook 단계에서 빌드가 중단된 상태

RTI 빌드는 대략 이런 흐름으로 진행됩니다.

  1. Simulink Coder가 코드 생성
  2. 컴파일(툴체인, 헤더/라이브러리)
  3. RTI Hook(after_make 등)이 타깃용 파일/설정을 마무리
  4. 타깃 다운로드/적용

Aborting RTI build procedure는 보통 3) RTI Hook 단계에서 문제가 발견되어 중단되었다는 뜻입니다.
✅ 그래서 해결 방법은 “RTI 메시지”만 보지 말고
빌드 로그에서 ‘가장 먼저 발생한 진짜 에러(First error)’를 잡는 것이 핵심입니다.


2. 가장 흔한 원인 TOP 7 (이거부터 확인하면 시간 절약됨)

(1) 모델명/폴더명에 한글, 하이픈(-), 특수문자 포함

이거 진짜 흔하고, 특히 RTI1401에서는 치명적입니다.

  • 모델명 예: Elecity0-2_복사본
  • 폴더명 예: C:\Users\...\Desktop\일렉시티\테스트\...

이런 형태면 RTI가 내부적으로 경로/타깃 파일을 만들 때 깨져서
Hook 단계에서 그대로 중단되는 경우가 많습니다.
✅ 해결

  • 모델명/폴더명/경로를 전부 영문+숫자+언더바(_)만 사용
  • 예: Elecity02_copy, SUM_Elecity02_V3
  • 작업경로도 가능하면 짧게: C:\work\Elecity02\

팁: RTI 쪽은 특히 “한글 경로” + “- 하이픈” 조합에서 잘 터짐.


(2) Simulink 내부 에러(대표: Goto/From 불일치, 신호 크기 불일치)

RTI가 문제가 아니라 모델 자체 에러로 인해 빌드가 끊기기도 합니다.
예를 들면 이런 메시지:

  • Matching "Goto" for "From" not found
  • 신호 dimension mismatch
  • 데이터 타입 충돌(double/single/boolean)

✅ 해결

  • Diagnostic Viewer에서 첫 번째 에러를 클릭해서 해당 블록으로 이동
  • From/Goto는 태그명 오타, 가시성 범위(Scoped/Global)부터 점검
  • Data Type/Dimension은 Rate Transition / Data Type Conversion으로 정리

(3) RTI/Matlab/Simulink 버전 호환 문제

  • RTI 7.12 (RTI1401, 2019) 같은 환경은
    특정 MATLAB/Simulink 버전 조합에서만 안정적입니다.

✅ 해결

  • 회사 표준 조합(검증된 MATLAB 버전) 사용
  • 다른 PC에서 같은 모델이 빌드되면 “버전/설치 상태” 이슈 확률 ↑

(4) 툴체인(컴파일러) 경로 문제 / Visual Studio 설정 문제

C 코드 생성 후 컴파일 단계에서

  • include 경로가 꼬이거나
  • 컴파일러가 제대로 잡히지 않거나
  • 라이브러리 링크가 실패하면

RTI Hook에서 “중단”으로 보이는 경우가 있습니다(로그가 길어서).
✅ 해결

  • RTI 설치 문서 기준으로 요구 컴파일러 버전 확인
  • 컴파일 로그에서 fatal error C1083(헤더 못 찾음) 같은 메시지 검색

(5) 슬래시/공백 포함된 경로, 너무 긴 경로(Path length)

Windows는 경로 길이/공백/특수문자에서 종종 문제가 납니다.
✅ 해결

  • C:\work\project\처럼 짧은 경로로 옮겨서 빌드
  • 사용자 폴더/바탕화면 깊은 경로 피하기

(6) slprj / build 폴더 캐시 꼬임

특히 모델을 복사하거나 설정을 많이 바꾸면 캐시가 꼬여서 빌드가 이상해질 때가 있습니다.
✅ 해결(안전한 순서)

  1. Simulink 종료
  2. 프로젝트 폴더에서 아래 삭제
    • slprj
    • *_rti1401 (모델별 빌드 폴더)
    • *.asv, *.mex* (있으면)
  3. 다시 열고 Clean Build

(7) 라이선스/권한/경로 접근 문제

회사 PC 보안 정책 때문에 폴더 쓰기 권한이 제한되면
RTI가 파일 생성 못 하고 중단될 수 있습니다.
✅ 해결

  • 프로젝트를 C:\work 같은 권한 확실한 폴더로 이동
  • 백신/보안프로그램이 빌드 폴더 잠그는지 확인

3. 제일 빠른 해결 루트 (실전 체크리스트)

빌드가 멈췄을 때, 아래 순서대로 하면 대부분 해결됩니다.

✅ Step 1) “모델명/경로”부터 정리

  • 모델명: 영문/숫자/언더바만
  • 폴더명/경로: 한글/하이픈/특수문자 제거
  • 경로 짧게: C:\work\...

✅ Step 2) 캐시 삭제 후 Clean Build

  • slprj 삭제
  • *_rti1401 삭제
  • Simulink 다시 열기 → Rebuild

✅ Step 3) 로그에서 “첫 번째 에러” 찾기

  • Diagnostic Viewer에서 가장 위(처음) 에러가 진짜 원인인 경우가 90%
  • Goto/From, dimension, datatype부터 해결

✅ Step 4) 컴파일 에러(헤더/라이브러리) 여부 확인

  • fatal error C1083
  • cannot open include file
  • unresolved external symbol

이런 키워드로 로그 검색해서 잡으면 됩니다.


4. 자주 나오는 케이스별 “원인 → 해결” 요약

  • MODEL_NAME에 - 또는 한글 → 이름 바꾸고 경로 옮기기
  • From/Goto 매칭 에러 → 태그명/범위 수정
  • Data type mismatch → Data Type Conversion, 단일 타입로 통일
  • 헤더 파일 못 찾음 → include 경로/툴체인 설정 확인
  • 갑자기 빌드만 안 됨 → slprj + build 폴더 삭제 후 재빌드

5. 결론: RTI 에러처럼 보여도 “진짜 원인은 따로 있다”

Aborting RTI build procedure는 대부분

  1. 경로/이름 문제(한글, -, 특수문자, 긴 경로)
  2. Simulink 모델 자체 에러(From/Goto, 타입/크기)
  3. 캐시/툴체인 꼬임

이 세 가지 중 하나입니다.

최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크