5 ms·
A couple weeks ago an automatic Mac OS update removed my (I presume, symlinked-) /usr/include directory. I use CLion not XCode, so this move broke my build, th
by phaedrus 7y ago
A couple weeks ago an automatic Mac OS update removed my (I presume, symlinked-) /usr/include directory. I use CLion not XCode, so this move broke my build, through no fault of my own, with little to go on as to what suddenly had gone wrong. A possible fix would be to install the commandline developer tools, except those were already installed and the installer refuses to run again to repair it.
This is a specific example of a regular occurrence; the details differ each time. I compare developing a personal project on Mac OS to be like getting cut off and run off the road by a luxury SUV: "Did you do that because you didn't know I was there, or did you do that deliberately?"
- snazz 7y agoThe question I have to ask myself repeatedly about consumer technology is “what does the manufacturer expect ‘normal people’ to do?” Anytime I’m confronted with moving a video from my computer to a relative’s iPhone or trying to load music from a cloud service into Apple Music/iTunes, I ask myself this and usually just conclude that normal users would give up and I do too. Then I crawl back over to my desktop (running OpenBSD) and pretend to cry.
- recursive 7y agoMy sister-in-law asked me to rip a cd so she could play some lullabies for her son. I did. Then she asked me how to copy them to her iphone. I could not figure out a way to do it. So I turned the thing into a static html page with <audio> tags so she could play it. This seems comically user unfriendly, or maybe even hostile from a company that's supposed to "just work".
- saagarjha 7y agoiTunes?
- recursive 7y agoI honestly don't remember whether I tried iTunes, but it sucks either way. Either I tried and couldn't figure it out. Or maybe that's the only way to do it and I didn't try it? Which means you need some heavy proprietary software to copy a file. Every non-Apple mp3 player or smart phone that I've ever seen lets you use standard protocols to just move media around without setting up user accounts or synchronization settings or god knows what.
- tannhaeuser 7y agoJust fyi: easy up-/download options via USB have been degenerated on Linux as well. MTP (which Google pushed to replace mass storage device mode) is hit-and-miss on Ubuntu; for example, it doesn't work with S8 and newer at all. MicroSD doesn't work with newer/larger cards, Bluetooth is a clusterfuck ... in many ways, the last decade has been a desaster for interfaces people care about.
- Crinus 7y agoI remember ~10 years ago i used Automator with Folder actions (or something called like that) to setup automatic resize and transfer of videos from a folder to my iPod Touch through iTunes, so my guess is that iTunes would do the trick. Unless they broke it since then.
- empath75 7y agoiTunes has been the only way to do it since the iPhone was released.
- iaml 7y agoFor future reference, you can download VLC from app store, it has a local wifi server which you can connect to from pc and upload media files from browser.
- threeseed 7y agoHave you tried /usr/local ? That is where you're supposed to install user libraries/header files. Apple "owns" the system paths no different to every other vendor.
- megous 7y agoThe way I treated this on Linux is that /usr is packages installed by the package manager and /usr/local is where ad-hoc compiled (./configure && make install) software goes. I always assumed this from --prefix=/usr/local being the default in autotools. From wikipedia: (Historically and strictly according to the standard, /usr/local is for data that must be stored on the local host (as opposed to /usr, which may be mounted across a network). Most of the time /usr/local is used for installing software/data that are not part of the standard operating system distribution (in such case, /usr would only contain software/data that are part of the standard operating system distribution). It is possible that the FHS standard may in the future be changed to reflect this de facto convention.)
- Wowfunhappy 7y agoAll of /usr/ is protected by SIP except for /usr/local/. Even if you have SIP off (I do too), it's worth glancing at what directories are protected, as it gives pretty clear insight into where Apple expects users to put stuff.
- phaedrus 7y agoSure but I ran an out-of-the-box CLion with out-of-the-box CMake, compiled a popular open source project that in theory is cross platform compatible with Mac, and it fails in a C standard library header deep inside Apple's headers after a chain of "#include_next" because it didn't find "/usr/include". Is this a fault of mine, Jetbrains, Kitware, or Apple?
- saagarjha 7y ago> A possible fix would be to install the commandline developer tools, except those were already installed and the installer refuses to run again to repair it. Apple’s command line tools ships with a package containing these headers, which you can find at /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg. Note that this package is only a temporary workaround (to fix issues like yours) and you should migrate to using your toolchain’s include path.
- phaedrus 7y agoRight I eventually found that out (and temporarily fixed it by making a symlink manually). My question about fixing it right is (1) How? and (2) How am I expected to know this? Because: I'm using an out-of-the-box CLion with it's out-of-the-box CMake, and I thought this is exactly the sort of SNAFU that CMake is supposed to handle? Does the fault lie with JetBrains, Kitware, Apple?