I updated to Xcode 8.3 and Swift 3.1 and got this warning in my bridging header file, referencing to an Objective-C header file:
Non-portable path to file "File.h"; specified path differs in case from file name on disk
How can I resolve this?
I updated to Xcode 8.3 and Swift 3.1 and got this warning in my bridging header file, referencing to an Objective-C header file:
Non-portable path to file "File.h"; specified path differs in case from file name on disk
How can I resolve this?
It turned out that I misspelled the file's name, the correct name was "FILE.h" instead of "File.h". The warning appeared because of the soon coming APFS to macOS.
In my case, the !!project folder name!! isn't match the bridging header path.
I changed
"project/project-Bridging-Header.h"
to
"Project/project-Bridging-Header.h"
Tested on Xcode 9.3
One additional cause, that I experienced, was that a library project was importing itself incorrectly. For example, given projects Main and Library, Main would import Library with:
#import "Library/Library.h"
If Library attempts to use the same import, the Non-portable path warning will appear. Removing the path portion is the easy fix:
#import "Library.h"
The better fix is to import the specific components that Library needs from itself:
#import "Widget.h"
#import "NSString+Library.h"
Encountered the problem in Qt (C++) on a MacOS computer from a code developed and working on Ubuntu.
My project had two files : server.cpp
and Server.cpp
.
The solution was to change the name of one file or the other.
If you can't change the file names because it's a library code you could make the files that include your libraries case-sensitive! (If your PC is Windows 10 or up)
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
too enable case-sensitivity atributefsutil.exe file SetCaseSensitiveInfo YourDestinationFolder enable
to enable case-sentivityThis could make the file case sensitive and solve the build problem.
© 2022 - 2024 — McMap. All rights reserved.