mirror of
https://github.com/ggml-org/llama.cpp.git
synced 2026-09-04 02:37:27 +02:00
* cmake : introduce semantic versioning (wip)
This commit introduces semantic versioning to llama.cpp.
* squash! cmake : introduce semantic versioning (wip)
* cmake : update test-cmake README notes [no ci]
* include libmtmd in output so show its semversioned
* ci : add make-release workflow
* ci : fix build number check in build-cmake-pkg.yml
* examples : remove trailing whitespace
* ci : abort if upstream ggml version does not exist
* ci : extract step contents into scripts
* ci : add GGML_NATIVE=OFF to ubuntu job
* examples : remove CI build information from test-cmake [no ci]
This commit removes the nightly/release information that I added
previously to keep this focused only on using building and installing
llama.cpp with cmake and being able to quickly verify changes or
troubleshoot issues.
* ci : merge scripts into single script
* remove -dev-build_number support
This commit removes the incremental build number (versioning) support
that I added. This was incorrect and we should only use the semver for
the version. Releases will be tag a nightly build and package
maintainers/managers that build from source can use the tag and it is
therefor important that the correct version is reported. So a
nightly-build will report the semver without the build number. The build
number and commit as availble via cmake and test-cmake has been updated
to include an example of using them:
```console
$ ./build.sh
[test-cmake] version: 0.1.0, build: 10360 (08c69e381)
...
```
Refs: https://github.com/ggml-org/llama.cpp/pull/26839#discussion_r3755836969
* docs: add initial release.md documentation
* cmake : clean-up and add LLAMA_BUILD_IS_DEV option
* ci : remove version input from make-release job
* ci : add LLAMA_BUILD_IS_DEV=OFF to build-cmake-pkg.yml
Refs: https://github.com/danbev/llama.cpp/actions/runs/31576801921/job/94050639145
* docs : update release notes with LLAMA_BUILD_IS_DEV info [no ci]
* ci : add TODO to winget workflow [no ci]
---------
Co-authored-by: Georgi Gerganov <[email protected]>
37 lines
1.4 KiB
Markdown
37 lines
1.4 KiB
Markdown
## cmake-test
|
|
|
|
This is just for manually testing/developing of a llama.cpp installation to
|
|
enable troubleshooting issues and exploration. The idea is that this can be used
|
|
after making changes to llama.cpp installation cmake configuration and then
|
|
verify it locally.
|
|
|
|
### Usage
|
|
The following will configure, build, and install llama.cpp
|
|
|
|
Configuring/build/install:
|
|
```console
|
|
./build-install.sh
|
|
```
|
|
The above command will create a directory named `install` in the current directory
|
|
which will have the follwing files in its lib directory:
|
|
```console
|
|
(venv) $ ls install/lib/
|
|
cmake libggml.so libllama-common.so.0 libllama.so.0.1.0 llama.cpp
|
|
libggml-base.so libggml.so.0 libllama-common.so.0.1.0 libmtmd.so pkgconfig
|
|
libggml-base.so.0 libggml.so.0.19.0 libllama.so libmtmd.so.0
|
|
libggml-base.so.0.19.0 libllama-common.so libllama.so.0 libmtmd.so.0.1.0
|
|
```
|
|
|
|
Build/run this project using the installation created above:
|
|
```console
|
|
(venv) $ ./build.sh
|
|
-- Configuring done (0.0s)
|
|
-- Generating done (0.0s)
|
|
-- Build files have been written to: /home/danbev/work/ai/llama.cpp/examples/test-cmake/build
|
|
[100%] Built target test-cmake
|
|
[test-cmake] Using llama.cpp version 0.1.0-dev-b10335
|
|
[test-cmake] Initializing backend...
|
|
load_backend: loaded CPU backend from /home/danbev/work/ai/llama.cpp/examples/test-cmake/install/lib/llama.cpp/libggml-cpu-alderlake.so
|
|
[test-cmake] Backend initialized.
|
|
```
|