Eu tenho usado o Code :: Blocks para escrever algum código e usei o cbp2make para gerar um makefile que compila com g++
. Eu corro make
e recebo todos os arquivos ".o" que o makefile promete nas pastas "obj / Release" e "obj / Debug", como se eu tivesse compilado em Code :: Blocks. Aqui está o kicker: não consigo rodar meu código.
Se eu fizer:
~/<path>/obj/Release$: ./main.o
Eu recebo: %código%.
Já experimentei bash: ./main.o: Permission denied
, chmod 744 ./main.o
e chmod 755 ./main.o
. Eu também tentei sem o chmod 777 ./main.o
, com ./
, e também substituindo sudo chmod
w / 7--
tudo apenas por causa da separação. Estes alteram a saída de +x
para:
./main.o
Para referência: bash: ./main.o: cannot execute binary file: Exec format error
retorna:
ls -l main.o
depois de não fazer nada
-rw-r--r-- 1 jiggly jiggly 661344 Sep 8 16:51 main.o
depois de fazer -rwxr -xr -x 1 jiggly jiggly 661344 Sep 8 16:51 main.o
chmod 744
depois de fazer -rwxr-xr-x 1 jiggly jiggly 661344 Sep 8 16:51 main.o
chmod 755
depois de fazer -rwxrwxrwx 1 jiggly jiggly 661344 Sep 8 16:51 main.o
então chmod 777
está funcionando pelo menos;)
Além disso, chmod
retorna file main.o
. Eu sei que pelo menos o meu sistema é "x86-64", mas talvez eu esteja perdendo alguma informação aqui?
Obviamente, o problema mais importante que estou tendo é que meu código não será executado (fora do Code :: Blocks) e eu preciso disso. Eu realmente aprecio qualquer ajuda com isso. Além disso, não tenho a menor idéia de por que estou recebendo erros de permissão e formatação. Eu adoraria se perdesse algo óbvio, mas qualquer solução seria útil e educativa.