Хорошо, пройдя несколько диких goose охотов и многоуровневых копаний, я наконец нашел решение. Я распечатал местоположение CoreFoundation, чтобы убедиться, что он был найден правильно и каталог исправен:
find_library(FoundationLib CoreFoundation)
message("LIB: ${FoundationLib}")
-> /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Foundation.framework
Хорошо, я почти уверен, что загружается правильно. Теперь я покопался глубже, сломал свой код и обнаружил, что CLion принимает другие расширения, такие как .h ++ и .hm
.hm, действительно похоже на .h, и я знаю, что .m extension обозначает файл объектного c, так что это должно означать, что мне, вероятно, следует использовать .hm для представления заголовка объекта- c. Поэтому я переименовал свой заголовок в расширение .hm, и теперь он работает. Я думаю, что это специфика CLion c и нигде не было задокументировано.
резюме: на CLion переименуйте свой заголовок c из .h -> .hm
и если ваш заголовок является объективным заголовком C ++, измените его с .h -> .hmm
ЗАКЛЮЧИТЕЛЬНОЕ ЗАВЕРШЕНИЕ: я изменил файлы заголовков обратно с .hm и .hmm -> .h, и они все еще работают. Итак, окончательный ответ на мою проблему связан с CLion, вам нужно временно установить объективные заголовки С ++ на .hmm и .hm, а затем вернуть их на .h