2019年4月20日土曜日

macOS MojaveでmakeしたときにFrameworkが探せなくなった<解決済み>

十年近く使ってきた測定用のmacbookを新調しました。
今しかないと思って,あえてのMacBookAir(非Retina)です。
税込約10万円で,旧USBポートが備わっていて,GPIBとserial通信両方同時にできそうなすばらしいハードウエア,と思ったのですが,罠が。。。。。

以前からつかっていた測定用のコードがコンパイルできません。 


小一時間,というかもう少し悩んで,いろいろ試しました。
NI4882は/Library/Frameworks以下にあります。
まずはni4882.hがみつけられないのだから-Iで探させてみたのですが,それでも次はldがNI4882をFile not foundと言ってきて,泥沼の様相。
NI4882の場所がいけないのかと思い,ldのmanやappleのdocを読み込んでみても,/Library/Frameworksで良さそう,っていうか/Library/Frameworksにしろと書いてある。
それこそHighSierraにダウングレードしようかなど考えていたのですが,どうやら-Fというオプションがある模様。
そこで,makefileに-F/Library/Frameworks を加えてみたところ,あっさり成功。



ちょっと苦労したので忘れないようにメモ。