By the way, c++ is not working on MacOS Big Sur. Even on Intel Mac.
It doesn't work with multi-filed projects. I tried it in cLion and it works, I tried it in Xcode and it works, but if you just do it with g++, it doesn't work. There is some linking issues and the linux team is working on it.Whut? What have I been building all these days on my Intel and M1 machines then?
$ g++ main.cpp
In file included from main.cpp:4:
./fixed.cpp:8:10: error: expected '('
mantissa_{} {
^
./fixed.cpp:8:13: error: expected unqualified-id
mantissa_{} {
^
./fixed.cpp:25:10: error: expected '('
mantissa_{ new_mantissa } {
^
./fixed.cpp:25:24: error: expected ';' after expression
mantissa_{ new_mantissa } {
^
;
./fixed.cpp:25:12: warning: expression result unused [-Wunused-value]
mantissa_{ new_mantissa } {
^~~~~~~~~~~~
./fixed.cpp:25:27: error: expected unqualified-id
mantissa_{ new_mantissa } {
^
./fixed.cpp:32:12: error: expected ';' at end of declaration
fixed tmp{ real };
^
;
./fixed.cpp:51:30: error: expected '(' for function-style cast or type construction
throw std::overflow_error{ "Addition would mantissaed in an overflow." };
~~~~~~~~~~~~~~~~~~~^
./fixed.cpp:54:15: error: expected '(' for function-style cast or type construction
return fixed{ mantissa_ + y.mantissa_ };
~~~~~^
./fixed.cpp:62:31: error: expected '(' for function-style cast or type construction
throw std::underflow_error{ "Subtraction would mantissa in an underflow." };
~~~~~~~~~~~~~~~~~~~~^
./fixed.cpp:65:15: error: expected '(' for function-style cast or type construction
return fixed{ mantissa_ - y.mantissa_ };
~~~~~^
./fixed.cpp:81:18: error: expected ';' at end of declaration
uint32_t xlower{ mantissa_ & 65535 };
^
;
./fixed.cpp:82:18: error: expected ';' at end of declaration
uint32_t xupper{ mantissa_ >> 16 };
^
;
./fixed.cpp:84:18: error: expected ';' at end of declaration
uint32_t ylower{ y.mantissa_ & 65535 };
^
;
./fixed.cpp:85:18: error: expected ';' at end of declaration
uint32_t yupper{ y.mantissa_ >> 16 };
^
;
./fixed.cpp:87:14: error: expected ';' at end of declaration
uint32_t lu{ xlower*yupper };
^
;
./fixed.cpp:88:14: error: expected ';' at end of declaration
uint32_t ul{ xupper*ylower };
^
;
./fixed.cpp:89:14: error: expected ';' at end of declaration
uint32_t ll{ xlower*ylower };
^
;
./fixed.cpp:91:20: error: expected ';' at end of declaration
uint32_t mantissa{ xupper*yupper + (lu >> 16) + (ul >> 16) };
^
;
./fixed.cpp:112:15: error: expected '(' for function-style cast or type construction
return fixed{ mantissa };
~~~~~^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
1 warning and 20 errors generated.
It doesn't work with multi-filed projects. I tried it in cLion and it works, I tried it in Xcode and it works, but if you just do it with g++, it doesn't work. There is some linking issues and the linux team is working on it.
It's the same, I tried both. I honest don't know why it's acting up like this. The folder is on my desktop so, no permission issues there.From your error log it almost looks to me like your compiler is trying to compile C++ code as plain C. Why are you compiling with g++? Is this GCC?
Anyway, "multi-filed projects" (whatever that is) work just fine on Big Sur. I have no idea what linking issues you are referring to (you are pasting a compiler error log, not a linker error log) or what "Linux team" has to do with an Apple operating system...
$gcc main.cpp
In file included from main.cpp:4:
./fixed.cpp:8:10: error: expected '('
mantissa_{} {
^
./fixed.cpp:8:13: error: expected unqualified-id
mantissa_{} {
^
./fixed.cpp:25:10: error: expected '('
mantissa_{ new_mantissa } {
^
./fixed.cpp:25:24: error: expected ';' after expression
mantissa_{ new_mantissa } {
^
;
./fixed.cpp:25:12: warning: expression result unused [-Wunused-value]
mantissa_{ new_mantissa } {
^~~~~~~~~~~~
./fixed.cpp:25:27: error: expected unqualified-id
mantissa_{ new_mantissa } {
^
./fixed.cpp:32:12: error: expected ';' at end of declaration
fixed tmp{ real };
^
;
./fixed.cpp:51:30: error: expected '(' for function-style cast or type construction
throw std::overflow_error{ "Addition would mantissaed in an overflow." };
~~~~~~~~~~~~~~~~~~~^
./fixed.cpp:54:15: error: expected '(' for function-style cast or type construction
return fixed{ mantissa_ + y.mantissa_ };
~~~~~^
./fixed.cpp:62:31: error: expected '(' for function-style cast or type construction
throw std::underflow_error{ "Subtraction would mantissa in an underflow." };
~~~~~~~~~~~~~~~~~~~~^
./fixed.cpp:65:15: error: expected '(' for function-style cast or type construction
return fixed{ mantissa_ - y.mantissa_ };
~~~~~^
./fixed.cpp:81:18: error: expected ';' at end of declaration
uint32_t xlower{ mantissa_ & 65535 };
^
;
./fixed.cpp:82:18: error: expected ';' at end of declaration
uint32_t xupper{ mantissa_ >> 16 };
^
;
./fixed.cpp:84:18: error: expected ';' at end of declaration
uint32_t ylower{ y.mantissa_ & 65535 };
^
;
./fixed.cpp:85:18: error: expected ';' at end of declaration
uint32_t yupper{ y.mantissa_ >> 16 };
^
;
./fixed.cpp:87:14: error: expected ';' at end of declaration
uint32_t lu{ xlower*yupper };
^
;
./fixed.cpp:88:14: error: expected ';' at end of declaration
uint32_t ul{ xupper*ylower };
^
;
./fixed.cpp:89:14: error: expected ';' at end of declaration
uint32_t ll{ xlower*ylower };
^
;
./fixed.cpp:91:20: error: expected ';' at end of declaration
uint32_t mantissa{ xupper*yupper + (lu >> 16) + (ul >> 16) };
^
;
./fixed.cpp:112:15: error: expected '(' for function-style cast or type construction
return fixed{ mantissa };
~~~~~^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
1 warning and 20 errors generated.
It's the same, I tried both. I honest don't know why it's acting up like this. The folder is on my desktop so, no permission issues there.
I think I meant the C++ compiler team.
Also, yes, my background is in Electrical Engineering, not in Software or Computer Engineering. I only know how to use compilers, I don't know how they work under the hood, and I don't have the ability to write compilers.
And yes, GPU support is being worked on!![]()
About - Asahi Linux
asahilinux.org
I'm the opposite, despite the small inconsistencies and problems I have with Gnome3, I greatly prefer it to the MacOS UI. Having built in FTP/SFTP right in the File (Finder) app is quite handy for any IT/Web work.I don't think they're being a snob. The article talks about all the things that don't work yet, so, "barely works" is arguably warranted. And I use Linux all day long, but wouldn't willingly use Linux in preference to macOS for my actual desktop system (on the command line, it's great, I'm ssh'd into a bunch of servers from my Mac). Linux using a Mac Mini as server hardware could be quite reasonable, but on a MacBook, as they mentioned, it's kind of a waste, compared to macOS.
There have been tech notes available for some time - you can just boot from an external hard drive and do what you want. The internal hard drive is probably not accessible, after all, I don't want someone steal my Mac and then access all my data that way.@Apple,
You will profit from my purchase of an M1 Mac and continued use of macOS and your services, so please don't block this effort. I want Linux to run on my Mac, too!
Thank you.
For a good reason. It is quite likely that older OS versions have security problems that have been fixed in newer versions. If someone stealing your iPhone could downgrade iOS, they could then use vulnerabilities in the older version against you. Usually older versions are available for a short amount of time, in case you upgrade and regret it.Apple went as far as prevent you downgrading iOS, let along running alternative OS...
What exactly do you mean by "c++ is not working"? Part of my software is C++, and it seems to be working just fine.By the way, c++ is not working on MacOS Big Sur. Even on Intel Mac.
Whut? What have I been building all these days on my Intel and M1 machines then?
Just FYI, the M1 machines don't have a T2 anymore.Honestly, before there's proper T2 support in the open communities, and we get proper dualbooting, I don't think it will have much impact outside of a few extra nerdy groups of people.
No, but there are very similar features for security, SSD control etc. built in to the M1 SoC.Just FYI, the M1 machines don't have a T2 anymore.
But would really an ARM/M1 Mac be the ideal environment for some sort of general Linux software that you can't get going in MacOS?
But why?
The point of installing a different OS is so you can run other programs.
What's available on Ubuntu that isn't available on macOS?
I did install Ubuntu on a 10 year old Mac Mini, but that was so I could install a newer browser so it could access Netflix and YouTube. This might become a problem for the M1 Mac Mini someday, but for now, it's able to run a current version of macOS which has current browsers that work for all the internet that anyone cares about.
Man, the FOSS community is really amazing I just wish they would walk that last mile and create a polished product. They always seem to walk 60-80% of the way. I don't know how these programmers can know so much and able to do so much looks like magic to me. I also wish they would concentrate their efforts instead of each 3-4 members build their own software. Also amazing is Linux, I don't know what this thing but it seems to be able to run on anything with few adjustments.
I wish someone would put the effort to complete a Linux/FreeBSD OS that is on par with Windows/MacOS. All the current ones need tinkering and lack Apps.
Doesn't MacOS has unix like thing built in which is the terminal. Shouldn't this cover the aspect of Linux being used as a server? Shouldn't FreeBSD be more stable as a server? I don't know why people prefer Linux over FreeBSD when FreeBSD is more one solid piece and Linux is a collection of attached together software.
I absolutely need windows to dual boot onto any Mac that I buy. For better or for worse, that's non negotiable. I am hopeful we get the ARM-based (if that the correct terminology?) Windows as a dual boot option down the line, otherwise my days using a MacBook are numbered.
Walking that extra mile is insanely difficult.
That will never happen because a finished, useful product needs unified vision and central management. Owners of Linux don’t have a vision beyond the kernel. Their focus on freedom and user agency is the reason why they will never make a great user-facing product.
But the DIY nature of Linux is great for servers and other systems where configurability is desired.
MacOS is Unix. It is build on top of FreeBSD, but uses a custom kernel and some other components. The system code of macOS/iOS etc. is available as open source. Linux ended up being more popular for a number of reasons, charisma of its creators and the crows-engineered nature being one of them. One of the reasons that FreeBSD is still around is because of Apple btw.
Only because the TPM is on the M1 die. Same functionality, different location.Just FYI, the M1 machines don't have a T2 anymore.