реклама на сайте
подробности

 
 
> Eclipse, не могу собрать простейший проект
Dubov
сообщение Jan 27 2013, 18:33
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Установил Eclipse на Debian. Создал простой Hello world.
В итоге не собирается.
Скриншот прикрепляю. Может сталкивался кто
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 25)
Fedor
сообщение Jan 28 2013, 17:51
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 73
Регистрация: 26-10-05
Пользователь №: 10 125



Цитата(Dubov @ Jan 28 2013, 00:33) *
Установил Eclipse на Debian. Создал простой Hello world.
В итоге не собирается.
Скриншот прикрепляю. Может сталкивался кто

По моему у вас поставлен "чистый" эклипс для компиляции под яву?
http://makesystem.net/?p=988
Go to the top of the page
 
+Quote Post
Dubov
сообщение Jan 28 2013, 17:59
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Спасибо, Fedor
но не нужно для ARM мне нужно именно для Linux x86
Go to the top of the page
 
+Quote Post
Fedor
сообщение Jan 28 2013, 18:39
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 73
Регистрация: 26-10-05
Пользователь №: 10 125



Цитата(Dubov @ Jan 28 2013, 23:59) *
Спасибо, Fedor
но не нужно для ARM мне нужно именно для Linux x86

тогда это вопрос для другой ветки форума
http://www.eclipse.org/cdt/
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Jan 28 2013, 19:31
Сообщение #5


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Неправда Ваша!!!
Только что в два клика New Project -> C project -> Executable -> Hello Worild Ansi C project(Toolchains: Linux GCC)
Все компилит
Eclipse Indigo
Плагины CDT итд все что надо и не надо sm.gif
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Jan 28 2013, 21:49
Сообщение #6


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



QUOTE (_Pasha @ Jan 28 2013, 21:31) *
Все компилит
А может у автора вопроса gcc не стоит?


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Jan 29 2013, 03:33
Сообщение #7


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(Сергей Борщ @ Jan 29 2013, 01:49) *
А может у автора вопроса gcc не стоит?

Автор вопроса привел скриншот, из которого вообще ничего не понятно. Тем более, что обычно народ вначале что-то узнаёт, читает, какие плагины ставить итд...
Go to the top of the page
 
+Quote Post
Dubov
сообщение Jan 30 2013, 18:09
Сообщение #8


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Простите, господа! Я отсутствовал некоторое время.
Выкладываю ещё один скриншот с ошибками и варнингами. при запуске из консоли - та же история, но консоль пишет:
Unable to find full path for "gcc"
Unable to get $PATH

Понятно что не может получить переменную окружения. Но в чём может быть дело? как поправить?


Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
thodnev
сообщение Jan 30 2013, 18:23
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 44
Регистрация: 20-01-13
Из: Украина, Киев
Пользователь №: 75 259



У Вас проблемы с настройками окружения.
Вот тут кое-что есть: http://forums.debian.net/viewtopic.php?f=16&t=62383
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Jan 30 2013, 19:06
Сообщение #10


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Вопрос традиционный: что говорит echo $(PATH)
?
Go to the top of the page
 
+Quote Post
Dubov
сообщение Jan 31 2013, 05:35
Сообщение #11


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Цитата(_Pasha @ Jan 30 2013, 23:06) *
Вопрос традиционный: что говорит echo $(PATH)
?

показывает пути
/usr/local/bin /usr/bin/

и путь до кросскомпилятора для ARM

самое интересное, что из командной строки gcc собирает проекты прекрасно.

А вот Eclipse не хочет видеть gcc. Может прописать где-то нужно?

Не хочется доп пакеты ставить(да и надо ли?)

P.S. возможно, у кого-то есть образ для VMware с рабочим Eclipsе'ом, может поделится кто...

Сообщение отредактировал Dubov - Jan 31 2013, 05:37
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Jan 31 2013, 06:16
Сообщение #12


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(Dubov @ Jan 31 2013, 09:35) *
А вот Eclipse не хочет видеть gcc. Может прописать где-то нужно?

Тогда еще список установленных плагинов для Ыклипсы покажите. Действительно, загадка.
Go to the top of the page
 
+Quote Post
Dubov
сообщение Jan 31 2013, 10:17
Сообщение #13


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Цитата(_Pasha @ Jan 31 2013, 10:16) *
Тогда еще список установленных плагинов для Ыклипсы покажите. Действительно, загадка.

каюсь, но незнаю как это сделать. Например, когда делаю New->Project->C project
появляется окно, где я выбираю Hello project и на выбор есть два варианта тулчеинов: Linux GCC и Cross GCC.

Как посмотреть плагины?
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Jan 31 2013, 11:33
Сообщение #14


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(Dubov @ Jan 31 2013, 14:17) *
Как посмотреть плагины?

Не знаю. Это я с CodeBlocks перепутал.
Project Properties/"C/C++build"/Builder type должен быть external
Go to the top of the page
 
+Quote Post
Dubov
сообщение Jan 31 2013, 17:40
Сообщение #15


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Проблема решилась частично путём добавление "руками" значения переменной PATH в Project->Properties->C/C++Build->Environment

теперь после сборки такая ошибка:

make: ***[src/Hello.o] Error 127

а в консоли вижу строку:

make: echo
command not found

приключения продолжаются! smile3046.gif

Сообщение отредактировал Dubov - Jan 31 2013, 18:48
Go to the top of the page
 
+Quote Post
Dubov
сообщение Feb 4 2013, 08:48
Сообщение #16


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Решил проблему!
Возможно кому-то поможет в будущем:
Eclipse создаёт Makefile, который содержит команду echo. Эту команду, по всей видимости, не понимал мой make. Таким образом, создание проекта с Makefile который написан "руками" решило проблему.
Как задать настрйоки создания автоматически правильного Makefile я так и не нашёл, если это вообще возможно.

Кто знает подскажите возможно ли задать правила генерации Makefile в Eclipse?
Go to the top of the page
 
+Quote Post
mdmitry
сообщение Feb 4 2013, 09:11
Сообщение #17


Начинающий профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648



Цитата(Dubov @ Feb 4 2013, 11:48) *
Решил проблему!
Возможно кому-то поможет в будущем:
Eclipse создаёт Makefile, который содержит команду echo. Эту команду, по всей видимости, не понимал мой make. Таким образом, создание проекта с Makefile который написан "руками" решило проблему.

Имейте, пожалуйста, в виду , что под linux Makefile и makefile это разные файлы. Утилита make ищет makefile, а Makefile обычно создается автоматически утилитой cmake.
Возможно, Вам стоит посмотреть документацию на make и cmake.


--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
Go to the top of the page
 
+Quote Post
Dubov
сообщение Feb 4 2013, 10:20
Сообщение #18


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Цитата(mdmitry @ Feb 4 2013, 13:11) *
Имейте, пожалуйста, в виду , что под linux Makefile и makefile это разные файлы. Утилита make ищет makefile, а Makefile обычно создается автоматически утилитой cmake.
Возможно, Вам стоит посмотреть документацию на make и cmake.

не знал. Я руками создаю Makefile.
затем делаю make all и происходит сборка (это в консоли)
в Eclipse я создаю проект (проект Makefile project with existing code) где использую тот же Makefile и всё собирается тоже хорошо.

А вот автоматически созданный Makefile содержит команду echo
и тогда консоль в Eclipse пишет:
make: echo : command not foumd
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Feb 4 2013, 10:29
Сообщение #19


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



QUOTE (Dubov @ Feb 4 2013, 12:20) *
А вот автоматически созданный Makefile содержит команду echo
А у вас сама echo стоит? /bin/echo присутствует?
type -a echo что показывает?


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Dubov
сообщение Feb 4 2013, 11:02
Сообщение #20


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052



Цитата(Сергей Борщ @ Feb 4 2013, 14:29) *
А у вас сама echo стоит? /bin/echo присутствует?
type -a echo что показывает?

возможности нет сейчас проверить, но echo $PATH работает. это для примера
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Feb 4 2013, 12:42
Сообщение #21


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Makefile рекомендовали потому, что он вверху списка файлов. Ы
make пофиг что makefile что Makefile
Go to the top of the page
 
+Quote Post
mdmitry
сообщение Feb 4 2013, 20:21
Сообщение #22


Начинающий профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648



Цитата(_Pasha @ Feb 4 2013, 15:42) *
make пофиг что makefile что Makefile

?????
Случай 1. В директории присутствуют оба файла: и makefile, и Makefile. Какой будет использоваться при вызове
Код
make
?
Случай 2. Гипотетический. В makefile присутствует строка
Код
include Makefile

Обычно как-то так:
Код
include Makefile.in

и забыли добавить расширение.
Случай 3. Особенности структуры makefile, автозависимость от него же. Пример, makefile от AHTOXA для ScmRTOS.
Переименовываем его в Makefile, запускаем make и ... результат rolleyes.gif


--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Feb 5 2013, 09:45
Сообщение #23


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(mdmitry @ Feb 4 2013, 23:21) *
Случай 1. В директории присутствуют оба файла: и makefile, и Makefile. Какой будет использоваться при вызове
Код
make
?

Может я чего не знаю, но по логике построения должен юзать Makefile
Go to the top of the page
 
+Quote Post
mdmitry
сообщение Feb 5 2013, 11:41
Сообщение #24


Начинающий профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648



Цитата(_Pasha @ Feb 5 2013, 12:45) *
Может я чего не знаю, но по логике построения должен юзать Makefile

И что мешает поставить эксперимент и обнародовать результат?


--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Feb 5 2013, 12:04
Сообщение #25


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(mdmitry @ Feb 5 2013, 14:41) *
И что мешает поставить эксперимент и обнародовать результат?

Поставил.
Юзает makefile. Никакой логики, то есть smile3046.gif
А потом удивляешься, отчего же надо курить-неперекурить маны по любому мельчайшему вопросу.

Цитата(mdmitry @ Feb 4 2013, 23:21) *
Случай 3. Особенности структуры makefile, автозависимость от него же. Пример, makefile от AHTOXA для ScmRTOS.
Переименовываем его в Makefile, запускаем make и ... результат rolleyes.gif

Это искусственный случай, т.к. его можно свести к использованию макроса вместо явного указания в зависимости.
Код
#comment out one of the following lines
MFILE = makefile
MFILE = Makefile
Go to the top of the page
 
+Quote Post
mdmitry
сообщение Feb 5 2013, 12:39
Сообщение #26


Начинающий профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648



Цитата(_Pasha @ Feb 5 2013, 15:04) *
Поставил.

Давно чего-то собирал из исходников и был сильно удивлен нахождению в одном каталоге смеси makefile, Makefile и Makefile.in после запуска ./configure. Разобрался и перестал удивляться. Логика есть. makefile для make. Makefile.in может быть и от cmake и результатом работы ./confgure. он же может сгененировать и makefile c включением в него Makefile.in со специфическими настройками.

Цитата
Это искусственный случай, т.к. его можно свести к использованию макроса вместо явного указания в зависимости.
Код
#comment out one of the following lines
MFILE = makefile
MFILE = Makefile


О примере без макроса уже говорил. Из makefile от Martin Thomas (ChaN's FatFs)
Код
# List non-source files which should trigger build here
#    Typically the Makefile and selected header-files
#    Entries must be seperated by a space.
BUILDONCHANGE = makefile


--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 02:53
Рейтинг@Mail.ru


Страница сгенерированна за 0.01638 секунд с 7
ELECTRONIX ©2004-2016