Sistema operacional:
macOS 10.12.2 (16C68)
Compilador:
gcc-6
Instalei o gcc-6 e modifiquei o config.mk conforme necessário em
export CC = gcc-6
export CXX = g++-6
Mas continua com este erro:
g++-6 -c -std=c++0x -Wall -Wno-unknown-pragmas -Iinclude -Idmlc-core/include -Irabit/include -O3 -funroll-loops -msse2 -fPIC -fopenmp src/learner.cc -o build/learner.o
FATAL:/opt/local/bin/../libexec/as/x86_64/as: I don't understand 'm' flag!
XCode
gcc
make clean_all && make -4j
Mas ainda deu errado. Qualquer ideia?
Eu tive o mesmo problema e tentei com 'g++-mp-5' e funcionou. Parece estar relacionado a uma opção desconhecida passada para 'as'. Alguém sabe como examinar a opção de linha de comando passada para o montador, para que eu possa comparar as opções.
@yuntai Oi, você quer dizer definir export CXX = g++-mp-5
no config.mk? Eu tentei mas não funciona. Parece que ainda está usando a versão global do gcc. O erro é o seguinte
g++-6 -std=c++0x -Wall -Wno-unknown-pragmas -Iinclude -Idmlc-core/include -Irabit/include -O3 -funroll-loops -msse2 -fPIC -fopenmp -MM -MT build/learner.o src/learner.cc >build/learner.d
g++-6 -std=c++0x -Wall -Wno-unknown-pragmas -Iinclude -Idmlc-core/include -Irabit/include -O3 -funroll-loops -msse2 -fPIC -fopenmp -MM -MT build/logging.o src/logging.cc >build/logging.d
g++-6 -std=c++0x -Wall -Wno-unknown-pragmas -Iinclude -Idmlc-core/include -Irabit/include -O3 -funroll-loops -msse2 -fPIC -fopenmp -MM -MT build/c_api/c_api.o src/c_api/c_api.cc >build/c_api/c_api.d
g++-6 -std=c++0x -Wall -Wno-unknown-pragmas -Iinclude -Idmlc-core/include -Irabit/include -O3 -funroll-loops -msse2 -fPIC -fopenmp -MM -MT build/c_api/c_api_error.o src/c_api/c_api_error.cc >build/c_api/c_api_error.d
g++-6 -c -std=c++0x -Wall -Wno-unknown-pragmas -Iinclude -Idmlc-core/include -Irabit/include -O3 -funroll-loops -msse2 -fPIC -fopenmp src/logging.cc -o build/logging.o
g++-6 -c -std=c++0x -Wall -Wno-unknown-pragmas -Iinclude -Idmlc-core/include -Irabit/include -O3 -funroll-loops -msse2 -fPIC -fopenmp src/learner.cc -o build/learner.o
g++-6 -c -std=c++0x -Wall -Wno-unknown-pragmas -Iinclude -Idmlc-core/include -Irabit/include -O3 -funroll-loops -msse2 -fPIC -fopenmp src/c_api/c_api_error.cc -o build/c_api/c_api_error.o
g++-6 -c -std=c++0x -Wall -Wno-unknown-pragmas -Iinclude -Idmlc-core/include -Irabit/include -O3 -funroll-loops -msse2 -fPIC -fopenmp src/c_api/c_api.cc -o build/c_api/c_api.o
FATAL:/opt/local/bin/../libexec/as/x86_64/as: I don't understand 'm' flag!
make: *** [build/c_api/c_api_error.o] Error 1
make: *** Waiting for unfinished jobs....
FATAL:/opt/local/bin/../libexec/as/x86_64/as: I don't understand 'm' flag!
make: *** [build/logging.o] Error 1
FATAL:/opt/local/bin/../libexec/as/x86_64/as: I don't understand 'm' flag!
make: *** [build/c_api/c_api.o] Error 1
FATAL:/opt/local/bin/../libexec/as/x86_64/as: I don't understand 'm' flag!
make: *** [build/learner.o] Error 1
mesmo problema aqui.
$ fazer
g++-6 -std=c++11 -Wall -Wno-unknown-pragmas -Iinclude -Idmlc-core/include -Irabit/include -O3 -funroll-loops -msse2 -fPIC -fopenmp -MM -MT build/learner. o src/learner.cc >build/learner.d
g++-6 -c -std=c++11 -Wall -Wno-unknown-pragmas -Iinclude -Idmlc-core/include -Irabit/include -O3 -funroll-loops -msse2 -fPIC -fopenmp src/learner.cc - o construir/aprendiz.o
FATAL:/opt/local/bin/../libexec/as/x86_64/as: Não entendo o sinalizador 'm'!
make: * [build/learner.o] Erro 1
Mesmo problema aqui.
FATAL:/opt/local/bin/../libexec/as/x86_64/as: Não entendo o sinalizador 'm'!
Muito estranho, muito estranho, a mesma versão funcionando bem em outro sistema Sierra OS X 10.4.
@Marswang92 @jialinzou @mcneale
E a versão de as
? Você pode verificar por as -v
. Talvez seu terminal exiba algo como GNU Assembler
.
E acho que o as
correto é assim:
Apple LLVM version 8.0.0 (clang-800.0.38)
Target: x86_64-apple-darwin15.6.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" -cc1as -triple x86_64-apple-macosx10.11.0 -filetype obj -main-file-name - -target-cpu core2 -fdebug-compilation-dir /Users/fcbruce -dwarf-debug-producer Apple LLVM version 8.0.0 (clang-800.0.38) -dwarf-version=2 -mrelocation-model pic -o a.out -
^C
O motivo é que o sistema usa um caminho diferente de as
(ser substituído). Atenção ao log de erros que você encontrou /opt/local/bin/../libexec/as/x86_64/as
, o as
correto deve ser /usr/bin/as
. Você pode verificar por cd /usr/bin ; ./as -v
.
Minha solução é export PATH=/usr/bin:$PATH
. Ajudei meu amigo a resolver o problema. E acho que isso pode te ajudar.
Viva! solução parece ser remover /opt/local/bin do caminho. @fcbruce obrigado!
Como você faz isso depende do seu shell, @fcbruce assume sh ou bash, eu acho. Sob tcsh
setenv PATH /usr/local/bin
por exemplo, pode fazer o truque.
Ei pessoal, na verdade eu resolvi meu problema reinicializando meu laptop. A causa pode ser várias versões do gcc no meu laptop. Não tenho certeza.
@mcneale ótima sugestão. obrigado.
@fcbruce O mesmo problema foi resolvido adicionando o caminho. Obrigada.
Olá a todos!
Eu tive o mesmo problema: ...Eu não entendo 'm' flag!
Eu resolvi com export PATH=/usr/bin:$PATH, e funcionou por um momento.
Mas saiba que não funciona mais agora eu não tenho a bandeira eu não entendo 'm'! problema
e não há mensagens de erro, mas a saída de um simples programa hello world é apenas:
˙Ì˛����Ä������‡��Ö� ��������H���__PAGEZERO�������������������������� ����������������������������� (((�������� ((������������...���................................................................................................................................................................................................................................. __ ���������������������������������____����.. ������__TEXT����������&�����∞�������&����������������������� �����������__stubs���������__TEXT����������÷�����
÷ Ä__stub_helper__TEXTÙ �����B�������Ù���������������Ä������������__c string __TEXT����������6�����
�����666�������������������__con����������____����........�����........����...�����.�...........�����................................���...�..��.........�..........................�.........�.......................�............���....................���....�......�.......................) ��������@�����,�������@��������������������������������� ��__eh_frame������__TEXT����������p�����à������������������������� ������������__�ë��������������������������... ��������������������__��������____d������������������..�................................................................................................................................ ����������������__�������__LA_Symbol_Ptr�__data�������������� ((�����. ���������������������h��linklinkededed������ ������ ����� êêê����ê��������� ""��ää0���� ����� ��� ���������� ��†���¿ ��0���������¯ ��
���»!��»���
�� p pp���������������������������.����������� ��
���������������������� ���
���/usr/lib/dyld�������������·†ï ÕÉ6ÑòΩhfEπ€H$������
��
�*��������������(�����������������
���P���������������/usr/local/opt/gcc/lib/gcc/7/libgfortran.4.dylib��������
���8���������2÷���/usr/lib/libSystem.B.dylib������
���@���������������/usr/local/lib/gcc/7/libgcc_s.1.dylib���
���P���������������/usr/local/opt/gcc/lib/gcc/7/libquadmath.0.dylib��������&�� ) ¯ ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. �������������������� ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ���������������������������uu�ïï hh��hööööööööööööööööööööööööööööâââhhhââhhhhhhâhhhhhhhhââhhhhhâhâââhââhââhhhââhhâhâhâââââââââhâhhâââââââhââââââââââââââhââââââââââââââââââhâââââââââââââhââhââââââhâââhâhââââââââhââhââââââhâhâhâhâââhâââhâhâââââhââhâhââ ‡ (˛ˇˇ«Ö0˛ˇˇ���«Ö ˛ˇˇÄ���«Ö$˛ˇˇ���HçÖ ˛ˇˇHâ«Ëv���HçÖ ˛ˇˇ∫
���Hç5¡���Hâ«Ëg���HçÖ ˛ˇˇHâ«ËR���ê…√UHâÂHÉÏâ}¸HâuHãUãE¸Hâ÷â«Ë
���Hç5ê���ø���Ë���ËWˇˇˇ∏����…√ˇ%4��ˇ%6��ˇ%8��ˇ%:��ˇ%<��Lç
��as% ˝˝��êh���èê�� è <H7��� 'HQ���È »HP���ÈæHello.f90�hello World! ����d��� ˇ������������������������������
�4���
���ñ˛ˇˇˇˇˇˇs�����������Ü���
n���
�������4���T���—˛ˇˇˇˇˇˇ=�����������Ü���
8���
" ��, ���������������������������...����....�........................................................................................................................................................................................................................................... ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. ������������������������������. U ���� @ dyld_stub_binder�qr�ê�r @__ gfortran_set_args�ê�r @__ gfortran_set_options�ê�r @__ gfortran_st_write�ê�r (@__ gfortran_st_write_done�ê�r0 @__ gfortran_transfer_character_write�ê�������_ ��_mh_execute_header�!main�%����ô
�������¶
s. ��
g ����tt������������������� ������� �� ���� @ ���������������������������������������������������_�����������__���_���____��_���____������____���_��____������______�___��___________��______�___��______������________���______��������������__���������������������������������������������������__������__������__�__���__���__�__�____________��________���____�__�______�______________________________________ @
Estou pirando, quero compilar um código e já demoro semanas para executar um compilador gfortran simples no meu mac.
o problema também é que a exportação PATH=/usr/bin:$PATH não é permanente. Então se eu reiniciar o terminal ou o pc ou se eu abrir uma nova aba como está novamente em /opt/local/bin/as e não em /usr/bin/as
Versão osx: 10.12.6
Alguém pode me ajudar... estou morrendo
cumprimenta
matemática
Se você editar seu arquivo .config para adicionar export PATH=/usr/bin:$PATH e reiniciar o terminal, o compilador deverá encontrar o caminho correto. Se você estiver usando /opt/local/bin, modifique .profile para colocá-lo lá, por exemplo
export PATH=/usr/bin:/opt/local/bin:/opt/local/sbin:$PATH. Isso funcionou para mim executando o OS X 10.12.6.
Descobri que o MacPorts estava colocando /opt/local/bin à frente de /usr/bin na cadeia $PATH por meio destas linhas em .profile:
[hash] Adição do instalador do MacPorts em 2018-03-01_at_16:21:35: adicionando uma variável PATH apropriada para uso com MacPorts.
export PATH="/opt/local/bin:/opt/local/sbin:$PATH"
[hash] Concluída a adaptação da variável de ambiente PATH para uso com MacPorts.
Então, "as" estava sendo encontrado em /opt/local/bin/../libexec/as/x86_64/as antes da versão preferida (de trabalho) em /usr/bin
Tirei essas linhas do .profile e reiniciei o terminal. Meu arquivo de teste hello world.f agora está compilando
@netjjordan muito obrigado! Consegui compilar colocando /usr/bin no início de PATH="..."
Obrigado @netjjordan funcionou para mim também
Chegando tarde na festa... mas...
O seguinte funcionou para mim. Esta solução é independente das rotações do caminho do sistema.
$ cd /opt/local/bin
$ sudo mv ./as ./as-broken
$ sudo ln -s /usr/bin/as ./as
Aqui está um teste que mostra que funciona:
$ mkdir ~/gcctest
$ cd ~/gcctest
$ echo 'int main(){return -1;}' > conftest.c
$ /opt/local/bin/gcc -o conftest conftest.c
FATAL:/opt/local/bin/../libexec/as/x86_64/as: Não entendo o sinalizador 'm'!
$ cd /opt/local/bin
$ sudo mv ./as ./as-broken
$ sudo ln -s /usr/bin/as ./as
$ cd -
$ /opt/local/bin/gcc -o conftest conftest.c
$ ./conftest; eco $?
255
Chegando tarde na festa... mas...
O seguinte funcionou para mim. Esta solução é independente das rotações do caminho do sistema.
$ cd /opt/local/bin
$ sudo mv ./as ./as-broken
$ sudo ln -s /usr/bin/as ./asAqui está um teste que mostra que funciona:
$ mkdir ~/gcctest
$ cd ~/gcctest
$ echo 'int main(){return -1;}' > conftest.c
$ /opt/local/bin/gcc -o conftest conftest.c
FATAL:/opt/local/bin/../libexec/as/x86_64/as: Não entendo o sinalizador 'm'!
$ cd /opt/local/bin
$ sudo mv ./as ./as-broken
$ sudo ln -s /usr/bin/as ./as
$ cd -
$ /opt/local/bin/gcc -o conftest conftest.c
$ ./conftest; eco $?
255
Isso funciona para mim. Muito obrigado
Comentários muito úteis
@Marswang92 @jialinzou @mcneale
E a versão de
as
? Você pode verificar poras -v
. Talvez seu terminal exiba algo comoGNU Assembler
.E acho que o
as
correto é assim:O motivo é que o sistema usa um caminho diferente de
as
(ser substituído). Atenção ao log de erros que você encontrou/opt/local/bin/../libexec/as/x86_64/as
, oas
correto deve ser/usr/bin/as
. Você pode verificar porcd /usr/bin ; ./as -v
.Minha solução é
export PATH=/usr/bin:$PATH
. Ajudei meu amigo a resolver o problema. E acho que isso pode te ajudar.