-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Open
Labels
Description
| F´ Version | 4.0 |
| Affected Component | fprime-util |
Problem Description
Working directories with some symlinks in the paths will not build. Possible CMake configuration issue?
Two separate mechanisms:
- On a linux box, if you move an existing working repo and leave a symlink behind
- Something specific to macOS /private/tmp permissions?
Context / Environment
(.venv) DJ-longboat% fprime-util version-check
Operating System: Darwin
CPU Architecture: arm64
Platform: macOS-15.7.3-arm64-arm-64bit-Mach-O
Python version: 3.13.1
CMake version: 3.26.0
Pip version: 25.3
Pip packages:
fprime-tools==4.1.0
fprime-gds==4.1.0
fprime-fpp==3.1.0
Project submodules:
How to Reproduce
- On a linux box like fprime-fsw-0
1a. Create and build a working repo, say in /home/me/foo
1b. Move it under another disk like /mnt/me/
1c. Leave a symlink behind with% ln -s /mnt/me/foo /home/me/foo
1d. Try to build in the new location
cd /mnt/me/foo
fprime-util build
The work-around is to purge, then generate and build again.
- On a mac, give the following cmds and see the
CMake Errorerror at the bottom:
DJ-longboat% uname -a
Darwin MT-502541 24.6.0 Darwin Kernel Version 24.6.0: Wed Nov 5 21:32:34 PST 2025; root:xnu-11417.140.69.705.2~1/RELEASE_ARM64_T6020 arm64
DJ-longboat% git clone [email protected]:djbyrne17/fprime.git /tmp/symtest
DJ-longboat% cd /tmp/symtest
DJ-longboat% python3 -m venv .venv
DJ-longboat% source .venv/bin/activate
(.venv) DJ-longboat% pip install -Ur requirements.txt
(.venv) DJ-longboat% pip install clang-tidy
(.venv) DJ-longboat% git submodule update --init --recursive
(.venv) DJ-longboat% fprime-util generate
[INFO] Generating build directory at: /private/tmp/symtest/build-fprime-automatic-native
[INFO] Using toolchain file None for platform default
-- The C compiler identification is AppleClang 17.0.0.17000013
-- The CXX compiler identification is AppleClang 17.0.0.17000013
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Library/Developer/CommandLineTools/usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Library/Developer/CommandLineTools/usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Error at cmake/settings/ini.cmake:38 (message):
Provided settings.ini '/private/tmp/symtest/settings.ini' not expected file
'/tmp/symtest/settings.ini'
Call Stack (most recent call first):
cmake/options.cmake:25 (ini_to_cache)
cmake/FPrime.cmake:12 (include)
CMakeLists.txt:12 (include)
-- Configuring incomplete, errors occurred!
[ERROR] CMake erred with return code 1. Partial build cache remains. Run purge to clean-up.
(.venv) DJ-longboat% deactivate
Expected Behavior
fprime-util generate would succeed.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
CCB