LINUX.ORG.RU

MIPS64 компиляции

 


1

1

Здравствуйте Помогите пожалуйста разобраться с компиляцией проекта для MIPS64 Работал ранее с MIPS32 в Eclipse используя MIPS Toolchain в качестве компилятора. Он заточен под MIPS32 Но сейчас появилась необходимость скомпилировать проект под MIPS64 и оказалось что нечем . Пробовал в Eclipse используя кросс компилятор но он не понимает , ругается на size_t, как я понимаю из-за разрядности. Также вопрос как скомпилировать командной строкой например как в виндусе с помощью cygwin Заранее благодарен

Перемещено hobbit из general


Ответ на: комментарий от addi

После очередного указания PATH всетаки что-то поменялось

[root@l194 compiler]# mips64-linux-gcc test2.c

[root@l194 compiler]# file a.out

a.out: ELF 32-bit MSB shared object, MIPS, N32 MIPS64 version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 4.9.0, with unknown capability 0x41000000 = 0xf676e75, with unknown capability 0x10000 = 0x70401, not stripped

Только не понятно что это значит

mips64-n32-glibc-stable-2021.11-1-gcc не находит видимо посольку в bin его нет

addi
() автор топика
Ответ на: комментарий от addi

В итоге, по общавшись на в этой ветке с умными людьми, я теперь уже правильно указал в Eclipse компилятор, как ни странно он немного скромнее называется чем я думал

http://dropmefiles.com/e1UQp

Теперь компиляция запускается, правда пока еще в ошибками(почему то Cross GCC Assembler не распознает аммесблерный opcode), но буду пробовать далее с ними разобратся

Все таки осталось чувство что тулс не совсем правильно установился, раз в PATH он пропадает

И в процессе утсновки PATH выдавалось следующее сообщение

[root@l194 compiler]# echo «export PATH=$PATH:/opt/compiler/bin» >> /etc/profile

[root@l194 compiler]# source /etc/profile bash: export: `PATH:/opt/compiler/bin’: неправильный идентификатор

addi
() автор топика
Последнее исправление: addi (всего исправлений: 3)
Ответ на: комментарий от imb

доводите до абсурда?

я довожу до асурда? это вы мне говорите, а не тем людям, которые сами даже не собирали, но тыкают носом тех кто пытается это сделать, утверждая что метод который они даже не использовали, рабочий на 100% . то есть ты делай пытайся, потрать неделю, а потом зайди и напиши что и где у тебя не получилось, какие ошибки выходили и как ты их решил, а то нам самим лень. мы лучше будем на форуме разработчиков обсуждать когда винде капец, чем ковыряться в ошибках компиляции. немного хоть думайте что пишите.

Assembler
()
Ответ на: комментарий от addi

Уважаемые коллеги вопрос на засыпку!

По поводу тулчейна и определений host, target, build..

Если у меня target, - обыкновенная MCU MIPS64 то почему build - MIPS64-Linux? Поидее мне нужно для таргета MIPS64-«BareMetal»

Или я в корне заблуждаюсь

Также вопрос, если проект ранее компилировался в Ws с помощью cygwin64, то должен ли он безошибочно компилироваться и собираться с ипользованием MIPS64-Linux???

Спаибо!

addi
() автор топика
Последнее исправление: addi (всего исправлений: 1)
Ответ на: комментарий от addi

Makefile

BIN = test

OBJ = file.o

$(BIN): $(OBJ)
    $(CC) $^ --output=$@

%.o: %.c
   $(CC) $(CFLAGS) -c $< --output=$@

file.c

#include <stdio.h>

int main(int argc, char **argv)
{
    printf("Hello world\n");

    return 0;
}

запуск

$ make
cc  -c file.c --output=file.o
cc file.o --output=test
$ ./test 
Hello world

для случая кросс-компиляции

CC=/path/to/cross-compile/bin/cross-compile-gcc make
$ file test 
test: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.3, for GNU/Linux 3.16.85, with debug_info, not stripped

в случае если toolchain находится в PATH то можно не указывать полный путь и вызывать CC=cross-compile-gcc make

imb ★★
()
Ответ на: комментарий от addi

Если у меня target, - обыкновенная MCU MIPS64 то почему build - >MIPS64-Linux? Поидее мне нужно для таргета MIPS64-«BareMetal»

работал с MIPS32 говоришь, ну,ну

Работал ранее с MIPS32 в Eclipse используя MIPS Toolchain в >качестве компилятора.

Если есть необходимость в помощи, то не надо дезинформировать публику. Просто скажи честно - у меня Centos, или оффтопик, я умею в мышку и немного в С, у меня есть MCU MIPS64 такой-то (кстати не видел таких мощных MCU))), мне надо налабать код и собрать его так, чтобы он там, на MCU, заработал. и все - народ к тебе потянется ), может быть. А разбавлять тред всеми этими плачами ярославны - вы плохо помогаете, поэтому у меня не работает - не надо.

kindof
()
Ответ на: комментарий от kindof

на первой странице я так понимаю ваши знания закончились, ну так если где то приперает, то сходите куда следует

Мне ваши эмоции как зонтик рыбке, прошу аргументированно и более сдержанно и если еще что сказать по теме

addi
() автор топика
Последнее исправление: addi (всего исправлений: 1)
Ответ на: комментарий от addi

на первой странице я так понимаю ваши знания закончились, ну так >если где то приперает, то сходите куда следует

Мне ваши эмоции как зонтик рыбке, прошу аргументированно и более >сдержанно и если еще что сказать по теме addi (24.06.22 13:38:08)

Я забыл больше, чем ты когда-либо узнаешь.

Сходи посмотри на лучше форум www.eclipse.org, может ответили что, импортозаместитель )

kindof
()