{"id":20570369,"url":"https://github.com/younghakim7/cpp23_26_project","last_synced_at":"2025-10-15T09:02:49.286Z","repository":{"id":110132158,"uuid":"537759181","full_name":"YoungHaKim7/cpp23_26_project","owner":"YoungHaKim7","description":"C++23_26 \u0026 My Youtube Channel - GlobalYoung https://www.youtube.com/@GlobalYoung7","archived":false,"fork":false,"pushed_at":"2025-01-24T05:08:17.000Z","size":89,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-24T06:19:12.066Z","etag":null,"topics":["cpp","cpp23","cpp26"],"latest_commit_sha":null,"homepage":"","language":"Just","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/YoungHaKim7.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-09-17T09:27:11.000Z","updated_at":"2025-01-24T05:08:20.000Z","dependencies_parsed_at":"2023-11-11T01:31:19.337Z","dependency_job_id":"d787fe47-b274-48a1-91c3-2c672bcda880","html_url":"https://github.com/YoungHaKim7/cpp23_26_project","commit_stats":null,"previous_names":["younghakim7/cpp23_26_project"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YoungHaKim7%2Fcpp23_26_project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YoungHaKim7%2Fcpp23_26_project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YoungHaKim7%2Fcpp23_26_project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YoungHaKim7%2Fcpp23_26_project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/YoungHaKim7","download_url":"https://codeload.github.com/YoungHaKim7/cpp23_26_project/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242186702,"owners_count":20086210,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cpp","cpp23","cpp26"],"created_at":"2024-11-16T05:12:40.454Z","updated_at":"2025-10-15T09:02:49.279Z","avatar_url":"https://github.com/YoungHaKim7.png","language":"Just","funding_links":[],"categories":[],"sub_categories":[],"readme":"# link\n\n- cmake+ justfile (C++23\u002626 build)\n  - https://github.com/YoungHaKim7/cpp26_pthread_cmake_just_sample\n- [gcc 최신 버젼 다운 받기_\u0026 gcc 최신 정보](#gcc최신정보-및-다운로드-받기)\n  - [(외부링크) gcc 최신 버젼 다운 받기_잘 설명됨](https://phoenixnap.com/kb/install-gcc-ubuntu)\n    - 최신판 수동 설치\n      - [cmake최신판](#cmake-최신판-설치)\n\n- [최신 LLVM설치(clang)](#최신-llvm설치clang)\n  - [`clang-format-21`설치방법](#clang-format-21설치방법)\n\n- [`-std=c++2b`같은거_컴파일옵션 정리 버젼별c++20+23+26 \u0026 C/C++ Support in Clang](#cc-support-in-clang)\n  - [`-o -Wextra -Wall` 같은거 정리](#gcc--clang)\n\n- [GDB Tutorial(디버깅Debugging)](#gdb-tutorial)\n- [나름 잘 정리된 C++](https://isocpp.org/blog/tag/experimental)\n\n- C++26\n  - [C++26관련 문서(p2996r5)](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2024/p2996r5.html)\n    - [p2300등 여러가 지 문서 다 모아놓았음c++](https://github.com/cplusplus/sender-receiver) \n    - [p2300r10](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2024/p2300r10.html)\n\n- 외국사람이 잘 정리함(C11부터 C26까지 예시 잘 정리됨)\n  - https://github.com/scivision/Cpp23-examples\n\n- C++ 23\n  - [New C++ features in GCC 13](https://developers.redhat.com/articles/2023/06/21/new-c-features-gcc-13#)\n  - https://en.cppreference.com/w/c/23.html\n\n- Cpp practices\n  - [Cpp best practices](https://github.com/cpp-best-practices/cppbestpractices)\n\n- C++26이후 최신 뉴스 모음\n  - [(250428)GCC 15의 새로운 C++ 기능들 ](#gcc-15의-새로운-c-기능들-)\n  - [(241109외부링크) c26, c29 청사진 및 앞으로 나아갈 방향 (Peering Forward - C++’s Next Decade - Herb Sutter - CppCon 2024 | CppCon](https://youtu.be/FNi1-x4pojs?si=WBzxKhIuwCIAv1X8)\n\n- C++버젼별 역사 및 정리 잘됨\n  - https://dulidungsil.tistory.com/entry/GCC-%EB%B2%84%EC%A0%84%EA%B3%BC-C-%EB%B2%84%EC%A0%84-%EB%A7%A4%EC%B9%AD\n  - C++ 필수 라이브러리 설명 잘됨.\n    - https://doitnow-man.tistory.com/entry/C-gcc-%EB%B2%84%EC%A0%84%EA%B3%BC-libstdc-%EA%B4%80%EA%B3%84\n- (정리중..251010) 러스트(Rust) 개발자를 위한 C언어 기초(C23) \u0026\u0026 C++23/26 기초 \u0026\u0026 zig\n  - https://github.com/YoungHaKim7/C_Programming_Kernigan_and_Ritchie\n\n\n\u003chr\u003e\n\n# `CPLUS_INCLUDE_PATH`이걸 해줘야 C++26이 된다.[|🔝|](#link)\n- https://github.com/Quansight/pearu-sandbox/issues/9\n\n```bash\nexport CPLUS_INCLUDE_PATH=$PREFIX/$HOST/include/c++/$GCCVERSION:$PREFIX/lib/gcc/$HOST/$GCCVERSION/include\n```\n\n- fishshell\n\n```\nset -x CPLUS_INCLUDE_PATH \"$PREFIX/$HOST/include/c++/$GCCVERSION:$PREFIX/lib/gcc/$HOST/$GCCVERSION/include\"\n\n```\n\n# gcc15최신판 다 설치하고 gcc-15 default로 만들기[|🔝|](#link)\n- https://medium.com/@xersendo/moving-to-c-26-how-to-build-and-set-up-gcc-15-1-on-ubuntu-f52cc9173fa0\n\n```\nsudo update-alternatives --install /usr/bin/gcc gcc /opt/gcc-15/bin/gcc 100\nsudo update-alternatives --install /usr/bin/g++ g++ /opt/gcc-15/bin/g++ 100\n```\n\n\n# cmake 최신판 설치[|🔝|](#link)\n\n- https://cmake.org/download/\n- 압축 풀고 cmake폴더 들어가서\n\n```bash\n./bootstrap \u0026\u0026 make \u0026\u0026 sudo make install\n```\n\n- https://tttsss77.tistory.com/77\n\n\n# Cmake업데이트 하기[[🔝]](#link)\n- https://somjang.tistory.com/entry/Ubuntu-CMake-%EC%97%85%EB%8D%B0%EC%9D%B4%ED%8A%B8-%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95\n\n- https://askubuntu.com/questions/829310/how-to-upgrade-cmake-in-ubuntu\n\n# Cmake option옵션 설정[[🔝]](#link)\n- https://tttsss77.tistory.com/193?category=827570\n\n# C++ 26최신뉴스 모음[|🔝|](#link)\n- [240212)2023년 C++ 에코시스템: C++20의 성장, Clang 기반 도구의 채택 확대, 개발자의 신뢰를 얻고 있는 AI | Jessie Cho | ](https://blog.jetbrains.com/ko/clion/2024/02/the-cpp-ecosystem-in-2023/)\n\n# **[GCC 15의 새로운 C++ 기능들 ](\u003chttps://news.hada.io/topic?id=20545\u0026utm_source=discord\u0026utm_medium=bot\u0026utm_campaign=1480\u003e)**[|🔝|](#link)\n- 250428\n- GCC 15는 C++26 기능을 대거 추가했으며, 일부 C++23 기능도 개선했음  \n- 주요 추가 기능은 **Pack Indexing**, **Variadic Friends**, **삭제 이유 명시**, **구조적 바인딩 조건문** 등  \n- 새로운 컴파일러 옵션과 경고들도 도입되어 **개발자 경험**이 향상됨  \n- C++ 모듈 지원이 강화되었고, 템플릿 컴파일 속…\n\n\u003chr /\u003e\n\n# gcc최신정보 및 다운로드 받기[|🔝|](#link)\n- https://github.com/gcc-mirror/gcc\n- https://gcc.gnu.org/\n\n- gcc-15.1.0(Fri Apr 25 10: 36 :04 GMT 2025)\n  - https://gcc.gnu.org/pipermail/gcc-announce/2025/000185.html\n\n- gcc15최신버젼 설치방법(250731)\n  - https://medium.com/@xersendo/moving-to-c-26-how-to-build-and-set-up-gcc-15-1-on-ubuntu-f52cc9173fa0\n  - https://www.reddit.com/r/cpp/comments/1k7lmmn/gcc_15_released/\n  - apt update로 편하게 설치\n    - https://phoenixnap.com/kb/install-gcc-ubuntu\n\n- gcc14버젼 설치방법\n  - https://dev.to/marcosplusplus/how-to-install-gcc-14-and-use-c23-41od\n\n# 최신 LLVM설치(clang)[|🔝|](#link)\n- https://growingdev.blog/entry/llvm-clang-install\n```\nwget https://apt.llvm.org/llvm.sh\nchmod +x llvm.sh\nsudo ./llvm.sh \u003cversion number\u003e\n```\n\n- 20구버젼 지우기\n\n```bash\nsudo apt remove --autoremove llvm-20\n```\n\n# `clang-format-21`설치방법[|🔝|](#link)\n- https://askubuntu.com/questions/1409031/how-to-use-a-more-recent-clang-format-or-clang-tidy-version-on-ubuntu-18-04\n\n```bash\nwget https://apt.llvm.org/llvm.sh\nchmod +x llvm.sh\nsudo ./llvm.sh 21\nsudo apt install clang-format-21\n```\n\n- 다른 방법\n  - https://github.com/llvm/llvm-project/issues/57104\n\n```bash\n$ cmake -S llvm -B build -G Ninja \\\n\t-DLLVM_ENABLE_PROJECTS=\"clang;clang-tools-extra\" \\\n \t-DLLVM_ENABLE_RUNTIMES=\"compiler-rt;libcxx;libcxxabi\" \\\n\t-DLLVM_USE_LINKER=mold \\\n\t-DCMAKE_BUILD_TYPE=Release \\\n\t-DCMAKE_C_COMPILER=clang \\\n\t-DCMAKE_CXX_COMPILER=clang++\n$ cd build\n$ cmake --build . --target install\n```\n\n# GDB Tutorial[|🔝|](#link)\n- Gdb is a debugger for C (and C++). It allows you to do things like run the program up to a certain point then stop and print out the values of certain variables at that point, or step through the program one line at a time and print out the values of each variable after executing each line. It uses a command line interface.\n  - https://web.eecs.umich.edu/~sugih/pointers/summary.html\n\n# C++26: The Next C++ Standard | by Rainer Grimm이 사람이 최고[|🔝|](#link)\n- August 19, 2024/0 Comments/in C++26/by Rainer Grimm\n  - https://www.modernescpp.com/index.php/c26-the-next-c-standard/\n\n\u003chr /\u003e\n\n# Code Generation in Rust vs C++26 | Posted Sep 30, 2024  Updated Oct 4, 2024 | By Barry Revzin[|🔝|](#link)\n- https://brevzin.github.io/c++/2024/09/30/annotations/\n\n\u003chr /\u003e\n\n\n\n# C++23 tutorial[|🔝|](#link)\n\n[C++ Weekly - Ep 323 - C++23's auto{} and auto()](https://www.youtube.com/watch?v=5zVQ50LEnuQ)\n\ngcc command\n\n```\ng++ -std=c++2b -Wpedantic -Wall -Wextra -Wconversion -O3 -Werror -o main main.cpp\n\n./main\n```\n\n# C++23[|🔝|](#link)\n\nhttps://en.m.wikipedia.org/wiki/C%2B%2B23\n\n# C++23 Standard Library Preview - Jeff Garland - CppCon 2021[|🔝|](#link)\n\nhttps://youtu.be/ySsqD2e5uRQ\n\n- CppCon 2021 -\n\n  https://cppcon.org/\n  \n  https://github.com/CppCon/CppCon2020\n\n---\n\nDespite the pandemic the C++ committee is continuing to work towards C++23. This survey presentation provides students with a broad overview of the changes and new facilities in the C++23 standard library.\n\n\u003cbr\u003e\n\n# Compiler Explorer\\_\\_web coding[|🔝|](#link)\n\n[compiler explorer](https://godbolt.org/)\n\n\n# CppCon[|🔝|](#link)\n\nhttps://github.com/CppCon/CppCon2023\n\nhttps://github.com/CppCon/CppCon2022\n\nhttps://github.com/CppCon/CppCon2021\n\nhttps://github.com/CppCon/CppCon2020\n\nhttps://github.com/CppCon\n\n# C++23[|🔝|](#link)\n\nhttps://www.modernescpp.com/index.php/ranges-improvements-with-c-23\n\nhttps://en.cppreference.com/w/cpp/23\n\n# C++ 23 Forum[|🔝|](#link)\n\nhttps://cplusplus.com/forum/lounge/283965/\n\n# C++ Core Guidelines[|🔝|](#link)\n\nhttps://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines\n\n\u003chr\u003e\n\n# C/C++ Support in Clang[|🔝|](#link)\n\n- Clang implements the following published and upcoming ISO C++ standards:\n  - https://clang.llvm.org/cxx_status.html\n    - https://gcc.gnu.org/onlinedocs/gcc/C-Dialect-Options.html\n      - https://stackoverflow.com/questions/78069644/how-do-i-use-c-26-with-gcc-13-2-0\n\n|Language Standard |\tFlag |\tAvailable in Clang? |\n|-|-|-|\n|[C++2c](https://clang.llvm.org/cxx_status.html#cxx26)\u003cbr\u003e C++26|\t-std=c++2c | Partial|\n|C++23|\t-std=c++23 \u003cbr\u003e -std=c++2b |\tPartial|\n|C++20|\t-std=c++20 \u003cbr\u003e -std=c++2a |\tPartial|\n|C++17|\t-std=c++17|\tClang 5|\n|C++14|\t-std=c++14|\tClang 3.4|\n|C++11|\t-std=c++11|\tClang 3.3|\n|C++98/C++03\t|-std=c++98 |\tYes (other than export)|\n|GNU 89 | none, -std=gnu89 | |\n|ANSI, ISO C90 | -ansi, -std=c89 | |\n|ISO C99 | -std=c99 | |\n|ISO C11 | -std=c11 | |\n\n- (CS)컴퓨터 시스템 [ 3판 ] 김형신 저 | 퍼스트북 | 2016년 09월 06일(p35)\n\n# GCC / Clang[|🔝|](#link)\n```-Wall -Wextra -Wshadow -Wnon-virtual-dtor -pedantic``` \n- use these and consider the following (see descriptions below)\n\n## see descriptions below\n\n- `-lm` - 필요하다면 표준 수학 함수를 추가한다. \n\n- ```-pedantic``` - Warn on language extensions\n\n- ```-Wall -Wextra``` reasonable and standard\n\n- ```-Wshadow``` warn the user if a variable declaration shadows one from a parent context\n\n- ```-Wnon-virtual-dtor``` warn the user if a class with virtual functions has a non-virtual destructor. This helps catch hard to track down memory errors\n\n- ```-Wold-style-cast``` warn for c-style casts\n\n- ```-Wcast-align``` warn for potential performance problem casts\n-Wunused warn on anything being unused\n\n- ```-Woverloaded-virtual``` warn if you overload (not override) a virtual function\n\n- ```-Wpedantic``` (all versions of GCC, Clang \u003e= 3.2) warn if non-standard C++ is used\n\n- ```-Wconversion``` warn on type conversions that may lose data\n\n- ```-Wsign-conversion``` (Clang all versions, GCC \u003e= 4.3) warn on sign conversions\n\n- ```-Wmisleading-indentation``` (only in GCC \u003e= 6.0) warn if indentation implies blocks where blocks do not exist\n\n- ```-Wduplicated-cond``` (only in GCC \u003e= 6.0) warn if if / else chain has duplicated conditions\n\n- ```-Wduplicated-branches``` (only in GCC \u003e= 7.0) warn if if / else branches have duplicated code\n\n- ```-Wlogical-op``` (only in GCC) warn about logical operations being used where bitwise were probably wanted\n\n- ```-Wnull-dereference``` (only in GCC \u003e= 6.0) warn if a null dereference is detected\n\n- ```-Wuseless-cast``` (only in GCC \u003e= 4.8) warn if you perform a cast to the same type\n\n- ```-Wdouble-promotion``` (GCC \u003e= 4.6, Clang \u003e= 3.8) warn if float is implicitly promoted to double\n\n- ```-Wformat=2``` warn on security issues around functions that format output (i.e., printf)\n\n- ```-Wlifetime``` (only special branch of Clang currently) shows object lifetime issues\n\n- ```-Wimplicit-fallthrough``` Warns when case statements fall-through. (Included with -Wextra in GCC, not in clang)\n\nConsider using ```-Weverything``` and disabling the few warnings you need to on Clang\n\n- ```-Weffc++``` warning mode can be too noisy, but if it works for your project, use it also.\n\n\nhttps://github.com/cpp-best-practices/cppbestpractices/blob/master/02-Use_the_Tools_Available.md\n\n\n\u003chr\u003e\n\n# gcc15설치하다가 나온 메세지 분석하기\n\n```bash\nlibtool: finish: PATH=\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/sbin\" ldconfig -n /opt/gcc-15/lib/../lib64\n----------------------------------------------------------------------\nLibraries have been installed in:\n   /opt/gcc-15/lib/../lib64\n\nIf you ever happen to want to link against installed libraries\nin a given directory, LIBDIR, you must either use libtool, and\nspecify the full pathname of the library, or use the `-LLIBDIR'\nflag during linking and do at least one of the following:\n   - add LIBDIR to the `LD_LIBRARY_PATH' environment variable\n     during execution\n   - add LIBDIR to the `LD_RUN_PATH' environment variable\n     during linking\n   - use the `-Wl,-rpath -Wl,LIBDIR' linker flag\n   - have your system administrator add LIBDIR to `/etc/ld.so.conf'\n\n```\n\n\n# 해결\n- https://github.com/Quansight/pearu-sandbox/issues/9\n\n```\nexport CFLAGS=\"$CFLAGS -D__GLIBC_USE\\(...\\)=0\"\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyounghakim7%2Fcpp23_26_project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyounghakim7%2Fcpp23_26_project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyounghakim7%2Fcpp23_26_project/lists"}