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

 
 
> Научите меня пользоваться GCC
sz36
сообщение Mar 24 2007, 21:57
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 91
Регистрация: 26-01-06
Пользователь №: 13 668



Hi, All!

Поставил OpenAT (кто не знает - среда для разработки приложений для GSM модулей от Wavecom). И не могу собрать даже тестовые примеры. То есть, не могу разобраться, как это сделать, что запускать. Project Wizard создает каталог проекта, в котором наличествуют исходники на С, h и make файлы. Теперь это добро надо скомпилировать и собрать с помощью GCC (поставился в составе OpenAT). А как? В каталоге проекта создается файл LoadIde.bat, он запускает какой-то bash, в котором что-то нужно вводить в командной строке. Что это такое, и имеет ли оно какое-нибудь отношение к компиляции?
В каталоге GCC есть каталог BIN, и есть ARM-ELF\BIN, в каждом множество исполняемых файлов, что из этого нужно запускать для компиляции? И как, поскольку явным образом не запускается ни один exe'шник, все говорят что не найден какой-то cygwin1.dll. Я надеялся хоть они будут выдавать подсказку по командной строке... Есть man'ы, говорят, там документация. Но, опять же, чем их смотреть под Windows?
В документации про процесс компиляции не нашел ни слова, исключительно про инсталляцию и, собс-но, программирование.

Ни с Linux, ни с GCC никогда дела не имел, помогите, уже несколько дней бьюсь.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
beer_warrior
сообщение Mar 26 2007, 23:33
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 065
Регистрация: 8-10-05
Из: Kiev, UA
Пользователь №: 9 380



Вброшу рабочий примерчег:
Код
#################################################################
## This Makefile Exported by MinGW Developer Studio
## Copyright (c) 2002-2004 by Parinya Thipchart
#################################################################

ifneq (,$(findstring Release, $(CFG)))
  override CFG = Release
else
  override CFG = Debug
endif

PROJECT = test2
CC = "C:\_tools\MinGW\bin\g++.exe"

ifeq ($(CFG),Debug)
  OBJ_DIR = Debug
  OUTPUT_DIR = Debug
  TARGET = test2.exe
  C_INCLUDE_DIRS =
  C_PREPROC = -DHAVE_W32API_H -D__WXMSW__ -D__WXDEBUG__
  CFLAGS = -pipe -Wno-ctor-dtor-privacy -Wall -g2 -O0 -fno-rtti -fno-exceptions
  RC_INCLUDE_DIRS =
  RC_PREPROC = --define __WXMSW__ --define __WXDEBUG__
  RCFLAGS =
  LIB_DIRS =
  LIBS = -lwxmsw25d_core -lwxbase25d -lwxtiffd -lwxjpegd -lwxpngd -lwxzlibd -lwxregexd -lwxexpatd -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lwsock32 -lodbc32
  LDFLAGS = -pipe -mthreads, -Wl,--subsystem,windows -mwindows
endif

ifeq ($(CFG),Release)
  OBJ_DIR = Release
  OUTPUT_DIR = Release
  TARGET = test2.exe
  C_INCLUDE_DIRS =
  C_PREPROC = -DHAVE_W32API_H -D__WXMSW__
  CFLAGS = -pipe -Wno-ctor-dtor-privacy -Wall -g0 -O2 -fno-rtti -fno-exceptions
  RC_INCLUDE_DIRS =
  RC_PREPROC = --define __WXMSW__
  RCFLAGS =
  LIB_DIRS =
  LIBS = -lwxmsw25_core -lwxbase25 -lwxtiff -lwxjpeg -lwxpng -lwxzlib -lwxregex -lwxexpat -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lwsock32 -lodbc32
  LDFLAGS = -pipe -s -mthreads, -Wl,--subsystem,windows -mwindows
endif

ifeq ($(OS),Windows_NT)
  NULL =
else
  NULL = nul
endif

SRC_OBJS = \
  $(OBJ_DIR)/app.o    \
  $(OBJ_DIR)/main.o

define build_target
@echo Linking...
@$(CC) -o "$(OUTPUT_DIR)\$(TARGET)" $(SRC_OBJS) $(LIB_DIRS) $(LIBS) $(LDFLAGS)
endef

define compile_source
@echo Compiling $<
@$(CC) $(CFLAGS) $(C_PREPROC) $(C_INCLUDE_DIRS) -c "$<" -o "$@"
endef

.PHONY: print_header directories

$(TARGET): print_header directories $(SRC_OBJS)
    $(build_target)

.PHONY: clean cleanall

cleanall:
    @echo Deleting intermediate files for 'test2 - $(CFG)'
    -@del $(OBJ_DIR)\*.o
    -@del "$(OUTPUT_DIR)\$(TARGET)"
    -@rmdir "$(OUTPUT_DIR)"

clean:
    @echo Deleting intermediate files for 'test2 - $(CFG)'
    -@del $(OBJ_DIR)\*.o

print_header:
    @echo ----------Configuration: test2 - $(CFG)----------

directories:
    -@if not exist "$(OUTPUT_DIR)\$(NULL)" mkdir "$(OUTPUT_DIR)"
    -@if not exist "$(OBJ_DIR)\$(NULL)" mkdir "$(OBJ_DIR)"

$(OBJ_DIR)/app.o: ../TEST_SOFT/app.cpp    \
../TEST_SOFT/app.h    \
../TEST_SOFT/main.h
    $(compile_source)

$(OBJ_DIR)/main.o: ../TEST_SOFT/main.cpp    \
../TEST_SOFT/main.h    \
../TEST_SOFT/app.h
    $(compile_source)


--------------------
Вони шукають те, чого нема,
Щоб довести, що його не існує.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


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

 


RSS Текстовая версия Сейчас: 25th July 2025 - 06:31
Рейтинг@Mail.ru


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