Я читал подобные темы здесь, но, к сожалению, эти решения мне не помогают.
Я хотел бы перекомпилировать все установленное программное обеспечение (или, по крайней мере, некоторые формулы) из Homebrew, используя gcc
from Homebrew
.
Можно ли принудительно Homebrew
использовать определенные параметры компилятора ( напримерgcc
) и параметры компилятора ( например, библиотеку std, используемую для компоновки )?
Я попытался установить все виды переменных среды, но это не помогает: /?
0/> env | grep CC
HOMEBREW_CC=gcc
CC=/usr/local/bin/gcc
0/kpykc> echo $PATH
/Users/kp/kpykc/devel/bin:/opt/ros/indigo/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/texbin
0/kpykc> ls -la /usr/local/bin/g??-?.?
lrwxr-xr-x 1 kp admin 31 Nov 24 16:23 /usr/local/bin/g++-4.9@ -> ../Cellar/gcc/4.9.2/bin/g++-4.9
lrwxr-xr-x 1 kp admin 31 Nov 24 16:23 /usr/local/bin/gcc-4.9@ -> ../Cellar/gcc/4.9.2/bin/gcc-4.9
0/kpykc> ls -la /usr/local/bin/g[c+][c+]
lrwxr-xr-x 1 kp admin 22 Nov 11 23:54 /usr/local/bin/g++@ -> /usr/local/bin/g++-4.9
lrwxr-xr-x 1 kp admin 22 Nov 11 23:53 /usr/local/bin/gcc@ -> /usr/local/bin/gcc-4.9
Также пытался использовать это решение .
Причина в том, что я хочу скомпилировать некоторый код * с помощью gcc и связать его с библиотеками, установленными из brew. Но похоже, что gcc не может ссылаться на библиотек, созданных clang. С другой стороны, ему не хватает поддержки некоторых функций C ++ 11, которые требуются программе *, которую я хотел бы скомпилировать.
Поэтому единственное решение, которое я вижу, - это перекомпилировать все необходимые библиотеки с помощью gcc.
Спасибо за помощь.
Обновление (для версий system / compiler / homebrew):
0/kpykc> sw_vers
ProductName: Mac OS X
ProductVersion: 10.10.1
BuildVersion: 14B25
0/kpykc> brew config
HOMEBREW_VERSION: 0.9.5
ORIGIN: https://github.com/Homebrew/homebrew
HEAD: 32923f435c7cf93820f434d6bdacf3bfdc3695eb
Last commit: 11 days ago
HOMEBREW_PREFIX: /usr/local
HOMEBREW_CELLAR: /usr/local/Cellar
CPU: quad-core 64-bit ivybridge
OS X: 10.10.1-x86_64
CLT: 6.1.1.0.1.1416017670
Clang: 6.0 build 600
X11: 2.7.7 => /opt/X11
System Ruby: 2.0.0-481
Perl: /usr/bin/perl
Python: /usr/local/bin/python => /usr/local/Cellar/python/2.7.8_2/Frameworks /Python.framework/Versions/2.7/bin/python2.7
Ruby: /usr/bin/ruby
В частности, у меня проблемы с кодом, который использует Eigen::aligned_allocator
. Я обновил Eigen
до HEAD
версии с Homebrew
. Я подозреваю, что моя проблема также связана с этой ошибкой . Но это должно быть исправлено HEAD
, я так думаю.