Форум программистов, компьютерный форум CyberForum.ru

Проблемы с линковкой - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Переписать программу с разными типами данных http://www.cyberforum.ru/cpp/thread30230.html
Тема: Использование указателей для работы со сложными типами данных Вот я хочу чтобы мне помогли переписать эту программу чтобы она соответствовала теме #include <iostream.h> void main() { char x; int n,i,k; cout<<"Введите количество ОС: ";
C++ Запуск процесса из буфера Собственно вопрос стоит так: в результате некоторых манипуляций получаю в ОП буфер, содержащий в двоичном виде код приложения, есть адрес этого буфера. (в смысле что откомпилированный, работоспособный экзешник там, от первого до последнего бита) Необходимо запустить это приложение, не создавая никаких временных файлов и т.п. на жёстком. Т.е. вся работа только в оперативке. Препод говорит, что... http://www.cyberforum.ru/cpp/thread30178.html
Программа управляющая другой программой.... C++
Здраствуйте многоуважаемые форумчане, помогите мне пожалуйста одолеть такую программу: Есть программка, называеца Tuner tools, которая играет ноты, для того чтоб настраивать гитару, задача очень проста, нужно чтоб разрабатываемая мной программа в 15:00 нажала первую кнопку, а в 15:10 поставила галочку "loop" и нажала вторую кнопку, если не сложно помогите пожалусто...
C++ Двусвязный линейный список
Здравствуйте. Помогите пожалуйста в написании программы: Реализовать класс на основе двусвязного линейного списока Реализовать в нем следующие методы: - все виды конструкторов; - деструктор; - итераторы класса Next(), Pred(), возвращают значение информационного поля списка; - добавление в конец и в начало списка; - вставка элемента в список; - удаление элемента в списке;
C++ Переменные не иницилизируются http://www.cyberforum.ru/cpp/thread30148.html
народ! че делать если переменные объявленные в теле функции не инициализируются и нигде их не видно??
C++ Посчитать количество согласных букв в каждом втротом слове предложения ПОМОГИТЕ КТО НИБУДЬ ПЕРЕПИСАТЬ НА С++!!! Добавлено через 24 минуты 54 секунды program example1; uses wincrt; const glasn=; soglas=; var st: string; подробнее

Показать сообщение отдельно
mas
0 / 0 / 0
Регистрация: 14.04.2009
Сообщений: 5
16.04.2009, 16:53     Проблемы с линковкой
Возникла проблема. Нашел на другом форуме точную формулировку своей проблемы. Решение той проблемы не описано. Прошу помочь:

Hi All,
I've built the arm-elf tool chain with the following
gcc 3.0.2 release
binutil 2.11.92.0.7
newlib-1.9.0

When I build the following C++ program I get undefined reference to
_gxx_personality_sj0

file t.hpp

Код C++1234567class foo{public:foo(void);~foo(void);void test(void);}


file t.cpp

Код C++1234567#include "t.hpp"foo::foo(void){;}foo::~foo(void){;}void foo::test(void){;}


file tt.cpp

Код C++1234567#include "t.hpp"int main(void){foo k;while(1) k.test();}


If all the files listed are place in the same source file I don't get the
undefined reference to _gxx_personality_sj0.
Any suggestions?
Добавлено через 10 минут 14 секунд
мой маке файл:
Код
TRGT = arm-elf-
CPP = $(TRGT)g++
CC = $(TRGT)gcc
LD = $(TRGT)ld
AS = $(TRGT)as
OC = $(TRGT)objcopy
SZ = $(TRGT)size
 
MCU = arm7tdmi
PROJECT = mit
 
LDSCRIPT = AT91SAM7S64-ROM.ld
source_dirs = source
out_dir = out
 
#флаги g++
CPPFLAGS = -c -fexpensive-optimizations -O3
#флаги gcc
CCFLAGS = -c -MD -O0
#флаги as
ASFLAGS = -Wa -amhls=$(out_dir)/$(notdir $(<:.s=.lst)) -ahls -mapcs-32
#флаги ld
LDFLAGS = -Wl,-T$(LDSCRIPT),-Map=$(out_dir)/$(PROJECT).map,--cref,-lstdc++,-lsupc++
LDFLAGS2= -mcpu=$(MCU) -nostartfiles -T$(LDSCRIPT) -Wl,--no-warn-mismatch
 
#флаги objcopy
OCFLAGS = --output-target=binary
 
 
search_wildcards := $(addsuffix /*.s,$(source_dirs)) $(addsuffix /*.cpp,$(source_dirs)) $(addsuffix /*.c,$(source_dirs)) 
VPATH := $(source_dirs)
OBJECTS = $(addprefix $(out_dir)/, $(notdir $(patsubst %.c,%.o, $(patsubst %.cpp,%.o, $(patsubst %.s,%.o, $(wildcard $(search_wildcards)))))))
 
 
all: clean binutilsversions $(PROJECT) $(out_dir)/$(PROJECT).elf size
 
.PHONY: clean
 
clean:
    rm -f $(addprefix $(out_dir)/, *.d *.o *.lst *.map *.out *.bin)
 
binutilsversions: 
    @echo ===================================================================
    @$(CPP) --version
    @echo ===================================================================
    @$(CC) --version
    @echo ===================================================================
    @$(AS) --version
    @echo ===================================================================
    @$(LD) --version
    @echo ===================================================================
    @echo    
 
$(out_dir)/$(PROJECT).elf: $(OBJECTS)
    $(CC) $(OBJECTS) $(LDFLAGS2) -o $@
 
$(PROJECT): $(out_dir)/$(PROJECT).out
    $(OC) $(OCFLAGS) $< $(out_dir)/$(PROJECT).bin    
 
#линковка
$(out_dir)/$(PROJECT).out: $(OBJECTS)
    $(CC) $(LDFLAGS) $^ -o $@
#$(LD) $(LDFLAGS) $^ -o $@
 
#компиляция
$(addprefix $(out_dir)/,%.o): %.c
    $(CC) $(CCFLAGS) $< -o $@
 
$(addprefix $(out_dir)/,%.o): %.cpp
    $(CPP) $(CPPFLAGS) $< -o $@
 
#асемблирование
$(addprefix $(out_dir)/,%.o): %.s
    $(AS) $(ASFLAGS) $< -o $@
 
size: $(out_dir)/$(PROJECT).out
    $(SZ) $<
 
include $(wildcard *.d)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 11:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru