✅ Solutions #
🔧 1. Move the project to a shorter path #
This is the quickest and most effective fix.
Move your project folder to a location with a shorter path, such as:
plaintextCopyEditC:\Projects\UltimatePOS\
Instead of:
plaintextCopyEditG:\Ultimate_Desktop_For_Ultimate_Pos\sourcecode\ultimate_desktop_flutter\ultimate_desktop_flutter\
Shorter paths will avoid hitting the 260-character limit.
🛠️ 2. Enable long path support in Windows #
If you’re on Windows 10 or later, you can enable long path support.
Steps: #
- Open Registry Editor (
regedit
) - Navigate to: arduinoCopyEdit
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem
- Find or create a key called:
LongPathsEnabled
- Set its value to
1
(DWORD) - Restart your PC to apply the change
Note: Your system must use NTFS and be Windows 10 (version 1607 or later).
🧱 3. Use subst
to map a drive to your project #
You can create a virtual drive letter that maps directly to your long project path:
Example: #
bashCopyEditsubst X: "G:\Ultimate_Desktop_For_Ultimate_Pos\sourcecode\ultimate_desktop_flutter\ultimate_desktop_flutter"
cd X:
flutter build windows
This reduces the effective path length without physically moving your files.
⚠️ 4. Macro redefinition warning #
You’re also getting this warning:
rustCopyEditwarning C4005: 'SYSTEM_SERVICES_EXPORTS': macro redefinition
This means the macro SYSTEM_SERVICES_EXPORTS
is defined multiple times. Check your system_services.cpp
and related header files to ensure you’re not defining it redundantly. You can use header guards or #ifndef
to prevent redefinition:
cppCopyEdit#ifndef SYSTEM_SERVICES_EXPORTS
#define SYSTEM_SERVICES_EXPORTS
#endif
📌 Summary #
Solution | Benefit |
---|---|
Move to shorter path | ✅ Easiest and fastest fix |
Enable long path support | ✅ Permanent system-wide solution |
Use subst command | ✅ Quick workaround without moving files |
Fix macro warning | ⚠️ Improves code quality but not related to the path issue |
Let me know which solution you’d like help with and I’ll guide you step by step.