Releases: Ruminem/cmake-link-explorer
Release list
v0.2.2
A VS Code extension for the moments a CMake project stops you over linking.
Install
Windows, double-click
Download cmake-link-explorer-0.2.2-windows.zip below, unzip it, and run
install.cmd. It locates VS Code itself, so code does not have to be on
PATH — right after installing VS Code the terminal is usually still holding
the PATH it started with.
Anywhere else
Download cmake-link-explorer-0.2.2.vsix below, then either use ... →
Install from VSIX in the Extensions view, or:
code --install-extension cmake-link-explorer-0.2.2.vsixRestart VS Code afterwards. It activates on its own when you open a CMake
project or a C/C++ file, and finds the build directory by looking for
CMakeCache.txt.
What is in it
| Link for include | what to link to use a header, applied to the right CMakeLists.txt as a Quick Fix |
| Targets | what links what, and above all who links this, with sizes joined in from a linker map |
| Linker Map | what eats the size, memory regions, and a diff between two builds |
| Compiled With | the effective macros and include paths for a file, inherited PUBLIC settings included |
| Cycles / Unused | link cycles between static libraries, and libraries nothing needs |
| Compare Trees | where two configured build trees diverge, for "builds here, breaks there" |
It reads CMake's File API rather than parsing CMakeLists.txt, so generator
expressions, conditional links and helper functions all arrive resolved.
Requirements
- VS Code 1.75 or newer
- CMake 3.14 or newer (File API)
- No runtime dependencies. Plain JavaScript with no build step.
Linker map support covers GNU ld and Apple ld64, both verified against real
linker output. LLVM lld and MSVC link.exe /MAP are not supported yet;
guessing at a format without a real sample means quietly showing wrong
numbers. C++ symbol demangling uses c++filt when it is there and a
built-in demangler when it is not, which is the normal case on Windows.
한국어 설치 안내
Windows, 더블클릭
아래 cmake-link-explorer-0.2.2-windows.zip을 받아 풀고 install.cmd를
실행함. VS Code를 직접 찾으므로 code가 PATH에 없어도 됨 — VS Code를 갓 깔았다면
터미널이 아직 옛 PATH를 들고 있는 경우가 흔함.
그 외 환경
아래 cmake-link-explorer-0.2.2.vsix를 받아, 확장 뷰에서 ... →
VSIX에서 설치를 누르거나 명령줄로:
code --install-extension cmake-link-explorer-0.2.2.vsix설치 뒤 VS Code를 다시 켬. CMake 프로젝트나 C/C++ 파일을 여는 것만으로 켜지고,
빌드 디렉토리는 CMakeCache.txt를 찾아 자동 탐지함.
Full Changelog: v0.2.1...v0.2.2
v0.2.1
A VS Code extension for the moments a CMake project stops you over linking.
Install
Windows, double-click
Download cmake-link-explorer-0.2.1-windows.zip below, unzip it, and run
install.cmd. It locates VS Code itself, so code does not have to be on
PATH — right after installing VS Code the terminal is usually still holding
the PATH it started with.
Anywhere else
Download cmake-link-explorer-0.2.1.vsix below, then either use ... →
Install from VSIX in the Extensions view, or:
code --install-extension cmake-link-explorer-0.2.1.vsixRestart VS Code afterwards. It activates on its own when you open a CMake
project or a C/C++ file, and finds the build directory by looking for
CMakeCache.txt.
What is in it
| Link for include | what to link to use a header, applied to the right CMakeLists.txt as a Quick Fix |
| Targets | what links what, and above all who links this, with sizes joined in from a linker map |
| Linker Map | what eats the size, memory regions, and a diff between two builds |
| Compiled With | the effective macros and include paths for a file, inherited PUBLIC settings included |
| Cycles / Unused | link cycles between static libraries, and libraries nothing needs |
| Compare Trees | where two configured build trees diverge, for "builds here, breaks there" |
It reads CMake's File API rather than parsing CMakeLists.txt, so generator
expressions, conditional links and helper functions all arrive resolved.
Requirements
- VS Code 1.75 or newer
- CMake 3.14 or newer (File API)
- No runtime dependencies. Plain JavaScript with no build step.
Linker map support covers GNU ld and Apple ld64, both verified against real
linker output. LLVM lld and MSVC link.exe /MAP are not supported yet;
guessing at a format without a real sample means quietly showing wrong
numbers. C++ symbol demangling uses c++filt when it is there and a
built-in demangler when it is not, which is the normal case on Windows.
한국어 설치 안내
Windows, 더블클릭
아래 cmake-link-explorer-0.2.1-windows.zip을 받아 풀고 install.cmd를
실행함. VS Code를 직접 찾으므로 code가 PATH에 없어도 됨 — VS Code를 갓 깔았다면
터미널이 아직 옛 PATH를 들고 있는 경우가 흔함.
그 외 환경
아래 cmake-link-explorer-0.2.1.vsix를 받아, 확장 뷰에서 ... →
VSIX에서 설치를 누르거나 명령줄로:
code --install-extension cmake-link-explorer-0.2.1.vsix설치 뒤 VS Code를 다시 켬. CMake 프로젝트나 C/C++ 파일을 여는 것만으로 켜지고,
빌드 디렉토리는 CMakeCache.txt를 찾아 자동 탐지함.
Full Changelog: v0.2.0...v0.2.1
v0.2.0
A VS Code extension for the moments a CMake project stops you over linking.
Install
Windows, double-click
Download cmake-link-explorer-0.2.0-windows.zip below, unzip it, and run
install.cmd. It locates VS Code itself, so code does not have to be on
PATH — right after installing VS Code the terminal is usually still holding
the PATH it started with.
Anywhere else
Download cmake-link-explorer-0.2.0.vsix below, then either use ... →
Install from VSIX in the Extensions view, or:
code --install-extension cmake-link-explorer-0.2.0.vsixRestart VS Code afterwards. It activates on its own when you open a CMake
project or a C/C++ file, and finds the build directory by looking for
CMakeCache.txt.
What is in it
| Link for include | what to link to use a header, applied to the right CMakeLists.txt as a Quick Fix |
| Targets | what links what, and above all who links this, with sizes joined in from a linker map |
| Linker Map | what eats the size, memory regions, and a diff between two builds |
| Compiled With | the effective macros and include paths for a file, inherited PUBLIC settings included |
| Cycles / Unused | link cycles between static libraries, and libraries nothing needs |
| Compare Trees | where two configured build trees diverge, for "builds here, breaks there" |
It reads CMake's File API rather than parsing CMakeLists.txt, so generator
expressions, conditional links and helper functions all arrive resolved.
Requirements
- VS Code 1.75 or newer
- CMake 3.14 or newer (File API)
- No runtime dependencies. Plain JavaScript with no build step.
Linker map support covers GNU ld and Apple ld64, both verified against real
linker output. LLVM lld and MSVC link.exe /MAP are not supported yet;
guessing at a format without a real sample means quietly showing wrong
numbers. C++ symbol demangling uses c++filt when it is there and a
built-in demangler when it is not, which is the normal case on Windows.
한국어 설치 안내
Windows, 더블클릭
아래 cmake-link-explorer-0.2.0-windows.zip을 받아 풀고 install.cmd를
실행함. VS Code를 직접 찾으므로 code가 PATH에 없어도 됨 — VS Code를 갓 깔았다면
터미널이 아직 옛 PATH를 들고 있는 경우가 흔함.
그 외 환경
아래 cmake-link-explorer-0.2.0.vsix를 받아, 확장 뷰에서 ... →
VSIX에서 설치를 누르거나 명령줄로:
code --install-extension cmake-link-explorer-0.2.0.vsix설치 뒤 VS Code를 다시 켬. CMake 프로젝트나 C/C++ 파일을 여는 것만으로 켜지고,
빌드 디렉토리는 CMakeCache.txt를 찾아 자동 탐지함.
Full Changelog: v0.1.1...v0.2.0
v0.1.1
A VS Code extension for the moments a CMake project stops you over linking.
Install
Windows, double-click
Download cmake-link-explorer-0.1.1-windows.zip below, unzip it, and run
install.cmd. It locates VS Code itself, so code does not have to be on
PATH — right after installing VS Code the terminal is usually still holding
the PATH it started with.
Anywhere else
Download cmake-link-explorer-0.1.1.vsix below, then either use ... →
Install from VSIX in the Extensions view, or:
code --install-extension cmake-link-explorer-0.1.1.vsixRestart VS Code afterwards. It activates on its own when you open a CMake
project or a C/C++ file, and finds the build directory by looking for
CMakeCache.txt.
What is in it
| Link for include | what to link to use a header, applied to the right CMakeLists.txt as a Quick Fix |
| Targets | what links what, and above all who links this, with sizes joined in from a linker map |
| Linker Map | what eats the size, memory regions, and a diff between two builds |
| Compiled With | the effective macros and include paths for a file, inherited PUBLIC settings included |
| Cycles / Unused | link cycles between static libraries, and libraries nothing needs |
| Compare Trees | where two configured build trees diverge, for "builds here, breaks there" |
It reads CMake's File API rather than parsing CMakeLists.txt, so generator
expressions, conditional links and helper functions all arrive resolved.
Requirements
- VS Code 1.75 or newer
- CMake 3.14 or newer (File API)
- No runtime dependencies. Plain JavaScript with no build step.
Linker map support covers GNU ld and Apple ld64, both verified against real
linker output. LLVM lld and MSVC link.exe /MAP are not supported yet;
guessing at a format without a real sample means quietly showing wrong
numbers. C++ symbol demangling uses c++filt when it is there and a
built-in demangler when it is not, which is the normal case on Windows.
한국어 설치 안내
Windows, 더블클릭
아래 cmake-link-explorer-0.1.1-windows.zip을 받아 풀고 install.cmd를
실행함. VS Code를 직접 찾으므로 code가 PATH에 없어도 됨 — VS Code를 갓 깔았다면
터미널이 아직 옛 PATH를 들고 있는 경우가 흔함.
그 외 환경
아래 cmake-link-explorer-0.1.1.vsix를 받아, 확장 뷰에서 ... →
VSIX에서 설치를 누르거나 명령줄로:
code --install-extension cmake-link-explorer-0.1.1.vsix설치 뒤 VS Code를 다시 켬. CMake 프로젝트나 C/C++ 파일을 여는 것만으로 켜지고,
빌드 디렉토리는 CMakeCache.txt를 찾아 자동 탐지함.
Full Changelog: v0.1.0...v0.1.1
v0.1.0
A VS Code extension for the moments a CMake project stops you over linking.
Install
Download cmake-link-explorer-0.1.0.vsix below, then either use ... → Install from VSIX in the Extensions view, or:
code --install-extension cmake-link-explorer-0.1.0.vsix
Restart VS Code afterwards. It activates on its own when you open a CMake project or a C/C++ file.
What is in it
| Link for include | what to link to use a header, applied to the right CMakeLists.txt as a Quick Fix |
| Targets | what links what, and above all who links this, with sizes joined in from a linker map |
| Linker Map | what eats the size, memory regions, and a diff between two builds |
| Compiled With | the effective macros and include paths for a file, inherited PUBLIC settings included |
| Cycles / Unused | link cycles between static libraries, and libraries nothing needs |
| Compare Trees | where two configured build trees diverge, for "builds here, breaks there" |
It reads CMake's File API rather than parsing CMakeLists.txt, so generator expressions, conditional links and helper functions all arrive resolved.
Requirements
- VS Code 1.75 or newer
- CMake 3.14 or newer (File API)
- No runtime dependencies. It is plain JavaScript with no build step.
Linker map support covers GNU ld and Apple ld64, both verified against real linker output. LLVM lld and MSVC link.exe /MAP are not supported yet; guessing at a format without a real sample means quietly showing wrong numbers.
C++ symbol demangling uses c++filt when it is there and a built-in demangler when it is not, which is the normal case on Windows.
Verified
195 checks in one pass on Windows: 160 unit checks and 35 inside a real VS Code extension host. Further suites run against a configured test/sample-project and against googletest / abseil-cpp; the readme lists what each covers.
The linker map fixtures in the repository are real linker output and are checked in, so the tests run with no toolchain installed.