crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Undefined reference, Странное поведение линковщика
Azazello
  опции профиля:
сообщение 7.5.2010, 20:14
Сообщение #1


Студент
*

Группа: Новичок
Сообщений: 16
Регистрация: 17.4.2010
Пользователь №: 1635

Спасибо сказали: 0 раз(а)




Репутация:   0  


Добавил в проект следующий код:
private slots:
void setOutput_str(const QString &msg);

И получил странное сообщение:
Цитата
moc_LinuxAnalysisTool.cpp:163: undefined reference to `LinuxAnalysisTool::setOutput_str(QString const&)'

При этом в другом проекте все работает. Заголовки везде прописаны, оба проекта компилились на одной и той же машине. Думал баг, даже переставил линуха, но это ничего не изменило.
В чем я ошибся? Думал какой-то либы нет, но ведь в другом пректе все без проблем....

IDE QtCreator, qt 4.5.2, собираю в режиме дебага, других аргументов нет.

При этом, в private slots не получается добавить вообще ни одну запись, все равно та же ошибка :blink:
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kibsoft
  опции профиля:
сообщение 7.5.2010, 20:17
Сообщение #2


Участник
**

Группа: Участник
Сообщений: 180
Регистрация: 21.7.2009
Из: Самара
Пользователь №: 928

Спасибо сказали: 14 раз(а)




Репутация:   2  


Цитата(Azazello @ 7.5.2010, 21:14) *
Добавил в проект следующий код:
private slots:
void setOutput_str(const QString &msg);

И получил странное сообщение:
Цитата
moc_LinuxAnalysisTool.cpp:163: undefined reference to `LinuxAnalysisTool::setOutput_str(QString const&)'

При этом в другом проекте все работает. Заголовки везде прописаны, оба проекта компилились на одной и той же машине. Думал баг, даже переставил линуха, но это ничего не изменило.
В чем я ошибся? Думал какой-то либы нет, но ведь в другом пректе все без проблем....

IDE QtCreator, qt 4.5.2, собираю в режиме дебага, других аргументов нет.

При этом, в private slots не получается добавить вообще ни одну запись, все равно та же ошибка :blink:

А ты уверен, что ошибка в хедере? Покажи cpp файл, как реализовываешь слот. Возможно ты написал просто setOutput_str(QString const&), а надо LinuxAnalysisTool::setOutput_str(QString const&).
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Azazello
  опции профиля:
сообщение 7.5.2010, 20:43
Сообщение #3


Студент
*

Группа: Новичок
Сообщений: 16
Регистрация: 17.4.2010
Пользователь №: 1635

Спасибо сказали: 0 раз(а)




Репутация:   0  


В другом проекте все работало без проблем. А сейчас еще веселее, попробовал собрать просто через make - собралось :blink:
Походу что-то с qtcreator

Нашел довольно бредовое, но рабочее решение, запустил IDE из-под рута...

Не в руте было дело, а в моей традиционной невнимательности. Пошел покурил, выпил кофе и понял, что сам слот-то я в cpp и не реализовал :wacko: сказывается рабочий день.
Прошу меня извинить, тему можно удалять.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 7.5.2010, 21:22
Сообщение #4


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


Цитата(Azazello @ 7.5.2010, 21:43) *
что сам слот-то я в cpp и не реализовал
только хотел сказать, но ты сам догадался. :)

Цитата(Azazello @ 7.5.2010, 21:43) *
тему можно удалять.
не нужно тему удалять, проблема насущная, я сам с ней сталкивался и думаю другие будет сталкиваться, оставим тему для страждущих! :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


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




RSS Текстовая версия Сейчас: 25.4.2024, 7:11