Warning: No available formula with the name "gcc". on mac(intel) - c++

I want to use gcc compiler instead apple clang on my mac(intel).
But this error is shown.. " Warning: No available formula with the name "gcc" "
I did, 1. installed homebrew
2. brew install gcc
But this error is shown.. " Warning: No available formula with the name "gcc" "

Thank you everyone who gave feedback to this question.
Solution I have done:
running brew doctor , it recommended me to run three commands:
2.rm -rf "/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core"
brew tap homebrew/core
and git -C $(brew --repo homebrew/core) checkout master
Then I run brew install gcc again.
Now it's working.

Related

MATLAB No supported compiler or SDK was found in mex_compile Linux

I had to downgrade my GCC to version 4.7 because I had this kind of problem when compiling matConvnet
Warning: You are using gcc version '5.4.0'. The version of gcc is not supported. The version currently supported with MEX is '4.7.x'. For a list of currently supported compilers see: http://www.mathworks.com/support/compilers/current_release.
So, I did the following steps to make GCC 4.7.0 the default compiler of my machine:
sudo apt-get install gcc-4.7
sudo rm /usr/bin/gcc
ln -s /usr/bin/gcc-4.7 /usr/bin/gcc
However, when I try to compile Matconvnet again I had the following error:
Error using vl_compilenn>mex_compile (line 434)
No supported compiler or SDK was found. For options, visit http://www.mathworks.com/support/compilers/R2016a/glnxa64.html.
Error in vl_compilenn (line 387)
parfor i = 1:numel(horzcat(lib_src, mex_src))
What I missed in my procedure?
EDIT: I realized that the problem is with the g++ compiler
when I do the mex -setup C++ command in MATLAB I have this error:
Error using mex
No supported compiler or SDK was found. For options, visit http://www.mathworks.com/support/compilers/R2016a/glnxa64.html.
When I do the which g++ command it returns me nothing. When I apt-get install g++ the following returns to me:
g++ is already the newest version (4:5.3.1-1ubuntu1).
What I can do to make MATLAB recognize my g++ compiler?
It's probably way to late for an answer, but when I had a similar problem, the following seemed to be the solution:
sudo apt-get install --reinstall gcc
sudo apt-get install --reinstall g++
Hope it helps everyone who stumbles upon this.

gfortran "not linked" after installing with 'brew install gcc'

I need to use fortran so I have installed gcc from homebrew
brew install gcc
i couldn't compile my source code so i tried to reinstall
Warning: gcc-6.2.0 already installed, it's just not linked
so i tried to link it
brew link gcc
with this result
Error: Could not symlink bin/gfortran
Target /usr/local/bin/gfortran
already exists. You may want to remove it:
rm '/usr/local/bin/gfortran
so i tried this
brew link --overwrite gcc
which gave me this result
Error: Could not symlink include/c++/6.2.0
/usr/local/include/c++ is not writable.
As i am pretty new to this I'm now stuck but i desperately need to resolve this so i can continue my uni work at home, please help

Error using clang to compile c++

I have been trying to compile a simple hello world program in c++ using clang. Now in the past I have been able to do this using the command:
clang -lc++ hello.cpp -o hello
When I try this I get the error:
/usr/bin/ld: cannot find -lc++
Clang: error : linker command failed with exit code 1
If I use g++ it compiles without errors. Why is this problem occurring with clang?
You need to install libc++ library.
Try if are using ubuntu:
sudo bash -c "cat >> /etc/apt/sources.list" << LLVMAPT
# LLVM
deb http://llvm.org/apt/trusty/ llvm-toolchain-trusty main
deb-src http://llvm.org/apt/trusty/ llvm-toolchain-trusty main
# 3.5
deb http://llvm.org/apt/trusty/ llvm-toolchain-trusty-3.5 main
deb-src http://llvm.org/apt/trusty/ llvm-toolchain-trusty-3.5 main
# 3.6
deb http://llvm.org/apt/trusty/ llvm-toolchain-trusty-3.6 main
deb-src http://llvm.org/apt/trusty/ llvm-toolchain-trusty-3.6 main
LLVMAPT
wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key|sudo apt-key add -
sudo apt-get update -y
sudo apt-get install -y clang-3.6 lldb-3.6 libc++-dev libc++abi-dev
If the script above doesnt work or you do not use ubuntu then please check this websites to download that library:
http://libcxx.llvm.org/
http://libcxx.llvm.org/docs/BuildingLibcxx.html
Clang compiles C language and Clang++ compiles C++. Those are different languages, so you need a separate compiler for each of them.
Some time ago I was having trouble with this as well. I tried linking loads of libraries (-lstdc++ etc), building stdlib from source, etc, but nothing worked. This was a judge problem until I realized that I had to use clang++.
So you too, you need clang++, not clang.

Compile OpenMP programs with gcc compiler on OS X Yosemite

$ gcc 12.c -fopenmp
12.c:9:9: fatal error: 'omp.h' file not found
#include<omp.h>
^
1 error generated.
While compiling openMP programs I get the above error. I am using OS X Yosemite. I first tried by installing native gcc compiler by typing gcc in terminal and later downloaded Xcode too still I got the same error. Then I downloaded gcc through:
$ brew install gcc
Still I'm getting the same error. I did try changing the compiler path too still it shows:
$ which gcc
/usr/bin/gcc
So how do I compile programs with gcc?
EDIT: As of 13 Aug 2017 the --without-multilib option is no longer present in Homebrew and should not be used. The standard installation
brew install gcc
will provide a gcc installation that can be used to compile OpenMP programs. As below it will be installed into /usr/local/bin as gcc-<version>. The current gcc version available from Homebrew (as of writing) will install as gcc-8. You can compile programs with OpenMP support using it via
gcc-8 -fopenmp hello.c
Alternatively you could put an alias in your .bashrcfile as
alias gcc='gcc-8'
and then compile using
gcc -fopenmp hello.c
Note: I'm leaving the original post here in case it is useful to somebody.
The standard gcc available on OS X through XCode and Clang doesn't support OpenMP. To install the Homebrew version of gcc with OpenMP support you need to install it with
brew install gcc --without-multilib
or as pointed out by #Mark Setchell
brew reinstall gcc --without-multilib
This will install it to the /usr/local/bin directory. Homebrew will install it as gcc-<version> so as not to clobber the gcc bundled with XCode.
I finally did some research and I finally came across a solution here: <omp.h> library isn't found in the GCC version (4.2.1) in Mavericks.
I got a new gcc complier from http://hpc.sourceforge.net/
Then I placed a new executable folder by
$ sudo tar -xvf gcc-4.9-bin.tar -C /
Later I switched to it by
export PATH=/usr/local/bin:$PATH that seemed to do the trick!

"make[2]: g++: Command not found" in Netbeans

I get the error message:
make[2]: g++: Command not found
which I know means it cannot find the C++ compiler. However, in Netbeans if I go to the configuration to choose my C++ compiler it shows the following being in /usr/bin:
g++4.6
g++4.7
g++4.8
but it doesn't have just g++.
Tried sudo aptitude install g++ but it didnt work.
If I do g++ --version I get:
The program 'g++' can be found in the following packages:
* g++
* pentium-builder
1) Verify you can run "g++" from the command line,
2) type whereis g++ to get the path,
3) Make sure you have the NetBeans C++ plugin installed
Go to Tools->Options->C++->Build Tools
4) Configure the path in NetBeans
Usually, /usr/bin/g++ is a symlink to some /usr/bin/g++-4.7 (or g++-4.8 etc...); just make it again (which is usually provided by the g++ virtual package on Debian or Ubuntu), e.g.
% sudo -s
# cd /usr/bin
# ln -sv g++-4.8 g++
Above % and # are shell prompts that you should not type.
Of course, don't forget the sudo apt-get install g++ etc...
BTW, you might put that link from $HOME/bin/g++ to /usr/bin/g++-4.8 and you don't need root permission for that.
(sometimes, these symlinks go indirectly thru /etc/alternatives etc...)
Your issue is a sysadmin issue; you should rather ask it (with a big lot more details) on askubuntu or superuser; it is off-topic on Stack Overflow.
BTW, NetBeans is not a compiler, but an editor (sometimes called IDE). You could use something better/simpler (e.g. emacs or vim) with e.g. make as a builder (to be run inside a terminal). Before using NetBeans ensure that g++ -v is working alone in some terminal