---
title: "#이맥스 #통합개발환경: #C언어 #CPP언어 #임베디드 §clangd"
url: "https://notes.junghanacs.com/notes/20240524T154429"
author: "Junghan Kim"
date: "2024-05-24T15:44:00+09:00"
lastmod: "2025-03-15T00:00:00+09:00"
tags: ["alternative","clang","cpp","emacside","embedded","update"]
description: "이맥스 통합개발환경 임베디드 C언어 CPP언어"
---

> [!abstract] 이 노트에 대하여
> 
> C와 C++, 임베디드 개발을 Emacs 통합개발환경 안에서 어떻게 다룰지 clangd 중심으로 정리한다. 다른 언어용 IDE 노트들과 이어지며 임베디드 리눅스까지 연결되는 기술 축을 형성한다.

## 관련메타

-   [#C언어 #CPP언어](https://notes.junghanacs.com/meta/20230725T144100)
-   [#임베디드리눅스](https://notes.junghanacs.com/meta/20250516T110351)

## 히스토리

-   [2025-06-12 Thu 14:02] 생성
-   [2025-05-21 Wed 16:14] 이맥스 ccls clangd 개발환경

## 2025 임베디드 C/CPP 환경

[2025-06-12 Thu 14:02]

## #임베디드

-   [#LLM: 임베디드 리눅스 도서 분석 - 엣지AI 욕토 커널 관련](https://notes.junghanacs.com/bib/20250519T121425)
-   [#임베디드리눅스 - #구직 #채용 #회사 #모음 - 시스템 반도체 전장 로봇](https://notes.junghanacs.com/bib/20250513T113844)
-   [§Janet #자넷 #함수형 #프로그래밍 #언어](https://notes.junghanacs.com/bib/20240806T154410)

## 컴파일러 설치 및 버전 관련

### clangd

#### clangd 14

[2025-05-21 Wed 18:58]

##### update-alternatives

```shell
➜ sudo update-alternatives --install /usr/bin/clangd clangd /usr/bin/clangd-14 100
[sudo] junghan 암호:
update-alternatives: using /usr/bin/clangd-14 to provide /usr/bin/clangd (clangd) in auto mode
(base) ~ via  v20.14.0 via 🐍 v3.12.2 on ☁️  gtgkjh@gmail.com
➜ clangd --version
Ubuntu clangd version 14.0.6
Features: linux+grpc
Platform: x86_64-pc-linux-gnu
(base) ~ via  v20.14.0 via 🐍 v3.12.2 on ☁️  gtgkjh@gmail.com

```

#### **Clangd 설정 추가**

`~/.config/clangd/config.yaml` 파일에 표준 라이브러리 경로를 명시합니다 (예시):

```yaml
CompileFlags:
  Add: [-std=c++17, -I/usr/include/c++/13, -I/usr/include/x86_64-linux-gnu/c++/13]
```

(경로는 시스템에 맞게 수정)

## 우분투 환경에서 C++17 개발을 위한 필수 패키지 목록

### clang

```shell
# libboost-all-dev
sudo apt-get install clangd-18 bear gdb valgrind catch2 googletest cppcheck clang-tidy-18 libclang-cpp-dev
```

## 로그
