Форум программистов, компьютерный форум, киберфорум
С++ под Linux
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/12: Рейтинг темы: голосов - 12, средняя оценка - 4.67
214 / 116 / 14
Регистрация: 30.05.2011
Сообщений: 1,772
1

unresolved external

11.02.2012, 17:25. Просмотров 2226. Ответов 15
Метки нет (Все метки)


на убунту в эклипс CDT постоянно высвечивает unresolved externals хотя код собирается и запускается.


C++
1
2
3
4
5
6
7
#include <iostream>
using namespace std;
 
int main() {
        cout << "!!!Hello World!!!" << endl; // prints !!!Hello World!!!
        return 0;
}
в чем проблем? появилось после обновления эклипс


Description Resource Path Location Type
Symbol 'endl' could not be resolved 56.cpp /56/src line 13 Semantic Error
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.02.2012, 17:25
Ответы с готовыми решениями:

unresolved external
Имеется сольюшн из 3х файлов: List.h: #include &quot;stdafx.h&quot; #ifndef _LIST_H_ #define _LIST_H_...

unresolved external symbol
В одном hpp файле описано N кол-во классов (для примера достаточно двух): namespace heart {...

LNK2019 unresolved external symbol
По сути я просто хочу написать метод, в который можно передать функцию и её параметры, и затем...

Непонятные ошибки - unresolved token, unresolved external
Здравствуйте, у меня Visual Studio 2010, и при выполнении кода #include &quot;stdafx.h&quot; #include...

15
Эксперт С++
3210 / 1458 / 73
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
11.02.2012, 17:36 2
уничтожь эклипс.
0
Evg
Эксперт CАвтор FAQ
21153 / 8169 / 628
Регистрация: 30.03.2009
Сообщений: 22,469
Записей в блоге: 30
11.02.2012, 18:24 3
Чисто ради интереса. Из-под эклипса можно посмотреть строку запуска компилятора? А то есть подозрение, что niXman прав
0
Почетный модератор
7356 / 2619 / 275
Регистрация: 29.07.2006
Сообщений: 13,675
11.02.2012, 18:34 4
Цитата Сообщение от Evg Посмотреть сообщение
Чисто ради интереса. Из-под эклипса можно посмотреть строку запуска компилятора?
Да. Проекты CDT генерят мэйк-файл, который можно открыть и посмотреть. Либо просто заглянуть в консоль во время билда он туда логирует запуск мэйка. В моем случае байда примерно такая:
Код
g++ -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/test1.d" -MT"src/test1.d" -o "src/test1.o" "../src/test1.cpp"
билдится ок
0
Evg
Эксперт CАвтор FAQ
21153 / 8169 / 628
Регистрация: 30.03.2009
Сообщений: 22,469
Записей в блоге: 30
11.02.2012, 18:36 5
А если теперь ручками запустить указанную строку, то компилятор (линкер) будет ругаться или нет?

Добавлено через 33 секунды
Вернее тебе надо посмотреть дальше. Тут только строка запуска компилятора, без линкера

Добавлено через 31 секунду
И для начала сделай clean проекта
0
Почетный модератор
7356 / 2619 / 275
Регистрация: 29.07.2006
Сообщений: 13,675
11.02.2012, 18:42 6
Цитата Сообщение от Evg Посмотреть сообщение
Вернее тебе надо посмотреть дальше. Тут только строка запуска компилятора, без линкера
тьфу ты, не ту строку скопировал. Ну там без разницы, все билдится нормально
Код
g++  -o "test1"  ./src/test1.o
Добавлено через 37 секунд
Цитата Сообщение от Evg Посмотреть сообщение
И для начала сделай clean проекта
проект новый был ))))

Добавлено через 2 минуты
Цитата Сообщение от Evg Посмотреть сообщение
А если теперь ручками запустить указанную строку, то компилятор (линкер) будет ругаться или нет?
Зачем? )))) он же и из CDT плагина запущенный не ругается ))))

Добавлено через 46 секунд
Evg, а, дошло )))) не, у меня нет проблем, которые описал автор. Я просто на вопрос по поводу
Цитата Сообщение от Evg Посмотреть сообщение
Из-под эклипса можно посмотреть строку запуска компилятора?
ответил.
0
Evg
Эксперт CАвтор FAQ
21153 / 8169 / 628
Регистрация: 30.03.2009
Сообщений: 22,469
Записей в блоге: 30
11.02.2012, 18:45 7
Ой, я не заметил, что на мой вопрос не ТС отвечал. Просто у ТС'а эклипс пережил смену версии, а потому могли всякие дейекты появиться из-за того, что проект был начат на одной версии эклипса, а продолжен на другой
0
Почетный модератор
7356 / 2619 / 275
Регистрация: 29.07.2006
Сообщений: 13,675
11.02.2012, 18:47 8
Цитата Сообщение от Evg Посмотреть сообщение
Ой, я не заметил, что на мой вопрос не ТС отвечал. Просто у ТС'а эклипс пережил смену версии, а потому могли всякие дейекты появиться из-за того, что проект был начат на одной версии эклипса, а продолжен на другой
Ну да, могли. Пусть в мейк-файл посмотрит, да в вывод в консоль эклипса...
0
214 / 116 / 14
Регистрация: 30.05.2011
Сообщений: 1,772
11.02.2012, 21:02  [ТС] 9
############################################################ ####################
# Automatically-generated file. Do not edit!
############################################################ ####################

-include ../makefile.init

RM := rm -rf

# All of the sources participating in the build are defined here
-include sources.mk
-include src/subdir.mk
-include subdir.mk
-include objects.mk

ifneq ($(MAKECMDGOALS),clean)
ifneq ($(strip $(C++_DEPS)),)
-include $(C++_DEPS)
endif
ifneq ($(strip $(C_DEPS)),)
-include $(C_DEPS)
endif
ifneq ($(strip $(CC_DEPS)),)
-include $(CC_DEPS)
endif
ifneq ($(strip $(CPP_DEPS)),)
-include $(CPP_DEPS)
endif
ifneq ($(strip $(CXX_DEPS)),)
-include $(CXX_DEPS)
endif
ifneq ($(strip $(C_UPPER_DEPS)),)
-include $(C_UPPER_DEPS)
endif
endif

-include ../makefile.defs

# Add inputs and outputs from these tool invocations to the build variables

# All Target
all: 66

# Tool invocations
66: $(OBJS) $(USER_OBJS)
@echo 'Building target: $@'
@echo 'Invoking: GCC C++ Linker'
g++ -o "66" $(OBJS) $(USER_OBJS) $(LIBS)
@echo 'Finished building target: $@'
@echo ' '

# Other Targets
clean:
-$(RM) $(OBJS)$(C++_DEPS)$(C_DEPS)$(CC_DEPS)$(CPP_DEPS)$(EXECUTABLE S)$(CXX_DEPS)$(C_UPPER_DEPS) 66
-@echo ' '

.PHONY: all clean dependents
.SECONDARY:

-include ../makefile.targets
вот из мэйк файла.

Добавлено через 1 минуту
Evg, я кажется понял что надо было сделать. но увы успел последовать привычной схеме и снес эклипс.
затем поставил по новой. ничего не изменилось. к сожалению теперь проект хэллоу ворд еше и не запускается.

Добавлено через 44 минуты
слушайте что то я не так делаю видимо

sudo apt-get install eclipse
sudo apt-get install eclipse-cdt

все ставится. однако с++ эдитора более нет в эклипсе. нельзя создать новый с++ проект. есть только java.
хотя в списке установленного cdt c++ tollchain есть.

Could not open the editor: No editor descriptor for id org.eclipse.cdt.ui.editor.CEditor
0
Evg
Эксперт CАвтор FAQ
21153 / 8169 / 628
Регистрация: 30.03.2009
Сообщений: 22,469
Записей в блоге: 30
11.02.2012, 23:11 10
Тут помимо Makefile'а нужен был ещё и весь паровоз вложенных файлов, подключаемых через include. Хотя если снёс, то уже не критично

Цитата Сообщение от AzaKendler Посмотреть сообщение
все ставится. однако с++ эдитора более нет в эклипсе. нельзя создать новый с++ проект. есть только java.
хотя в списке установленного cdt c++ tollchain есть
Зато бесплатно
1
214 / 116 / 14
Регистрация: 30.05.2011
Сообщений: 1,772
12.02.2012, 00:18  [ТС] 11
Evg, большого юмора ты человек.

все восстановил. появился эдитор. проект собирается запускается. выводит на печать что надо из контейнера. но.. это сообщение так и осталось об unresolved. и интелисенс перестал работать. а ранее все работало.
вобщем стыдно мне признаться но пришлось таки придушить эклипс вообще и остановиться на коде блокс. очень даже пойдет. хотя и нету подсказок.
0
386 / 150 / 16
Регистрация: 12.05.2011
Сообщений: 450
12.02.2012, 00:36 12
Цитата Сообщение от Evg Посмотреть сообщение
Зато бесплатно
предлагаешь переходить на MSVS2010?
0
Evg
Эксперт CАвтор FAQ
21153 / 8169 / 628
Регистрация: 30.03.2009
Сообщений: 22,469
Записей в блоге: 30
12.02.2012, 00:45 13
Цитата Сообщение от yekka Посмотреть сообщение
предлагаешь переходить на MSVS2010?
Нет, просто пытаюсь утешить
0
Почетный модератор
7356 / 2619 / 275
Регистрация: 29.07.2006
Сообщений: 13,675
12.02.2012, 18:23 14
Цитата Сообщение от AzaKendler Посмотреть сообщение
-include src/subdir.mk
Туда смотреть надо было.
Цитата Сообщение от AzaKendler Посмотреть сообщение
вобщем стыдно мне признаться но пришлось таки придушить эклипс вообще
Точно стыдно...
0
214 / 116 / 14
Регистрация: 30.05.2011
Сообщений: 1,772
15.02.2012, 14:58  [ТС] 15
Vourhey, да ты прав. при случае доведу до конца. поможешь разобраться? тот файл я выложу про который ты пишешь
0
Почетный модератор
7356 / 2619 / 275
Регистрация: 29.07.2006
Сообщений: 13,675
15.02.2012, 22:35 16
AzaKendler, угу, интересно ж
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.02.2012, 22:35

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Unresolved external symbol, unresolved token
Всем привет. У меня тут такое дело: // learncpp.cpp : main project file. #include &quot;stdafx.h&quot;...

error LNK2001: unresolved external symbol---fatal error LNK1120: 4 unresolved externals
Здравствуйте! Занимаюсь программированием не очень долго, прошу объяснить в доступных терминах для...

Unresolved external
Builder 2010 Error: Unresolved external '__fastcall...

Unresolved external
Проблема следующая: класс &quot;die&quot; хранится отдельным файлом. .h: #ifndef butsH #define butsH...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.