Skip to content

ccache fails when switching from compiler name to a full path #1326

@hebasto

Description

@hebasto

ccache works fine when a compiler is specified by its name:

$ ccache -z && ccache env -u VAR clang -c -o main.o main.cpp && ccache -sv
Statistics zeroed
Cache directory:    /home/hebasto/.cache/ccache
Config file:        /home/hebasto/.config/ccache/ccache.conf
System config file: /usr/local/etc/ccache.conf
Stats updated:      Fri Aug 25 12:08:19 2023
Cacheable calls:        1 /   1 (100.0%)
  Hits:                 0 /   1 ( 0.00%)
    Direct:             0
    Preprocessed:       0
  Misses:               1 /   1 (100.0%)
Successful lookups:
  Direct:               0 /   1 ( 0.00%)
  Preprocessed:         0 /   1 ( 0.00%)
Local storage:
  Cache size (GiB):   4.2 / 5.0 (83.59%)
  Files:            18564
  Hits:                 0 /   1 ( 0.00%)
  Misses:               1 /   1 (100.0%)
  Reads:                2
  Writes:               2

However, it fails with "Multiple source files" when the full path to the compiler is provided:

$ ccache -z && ccache env -u VAR /usr/bin/clang -c -o main.o main.cpp && ccache -sv
Statistics zeroed
Cache directory:         /home/hebasto/.cache/ccache
Config file:             /home/hebasto/.config/ccache/ccache.conf
System config file:      /usr/local/etc/ccache.conf
Stats updated:           Fri Aug 25 12:09:16 2023
Cacheable calls:             0 /   1 ( 0.00%)
  Hits:                      0
    Direct:                  0
    Preprocessed:            0
  Misses:                    0
Uncacheable calls:           1 /   1 (100.0%)
  Multiple source files:     1 /   1 (100.0%)
Successful lookups:
  Direct:                    0
  Preprocessed:              0
Local storage:
  Cache size (GiB):        4.2 / 5.0 (83.59%)
  Files:                 18564
  Hits:                      0
  Misses:                    0
  Reads:                     0
  Writes:                    0

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugDoes not work as intended/documentedclosed: works as intendedWorks as intended (is not a bug)

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions