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

Undefined reference to 'My_lab2::serialize_child(My_lab2::My_stack&,boost::interpro cess::file_lock&)') - C++

Восстановить пароль Регистрация
 
i7otep9wka
1 / 1 / 1
Регистрация: 13.12.2011
Сообщений: 76
18.05.2014, 16:45     Undefined reference to 'My_lab2::serialize_child(My_lab2::My_stack&,boost::interpro cess::file_lock&)') #1
Компилирую test:
Bash
1
g++ test.cpp -L. -lwrk -lboost_serialization -o programwrk -std=c++0x
Так же компилирую libwrk до компиляции test.

libwrk:
C++
1
2
3
4
5
6
7
8
9
10
11
void serialize_child(My_lab2::My_stack &stck,boost::interprocess::file_lock &flock){
    std::ofstream ofs ("serialized");
    //create archive
    if (flock.try_lock() == true) std::cout <<">>>child process GOT acess to file"<<std::endl;
    sleep(15);  
    boost::archive::text_oarchive oa(ofs);
    //write class stck instance to archive
    oa << stck;
    //boost::interprocess::file_lock funlock("serialized");
    flock.unlock(); 
    }
В хедере прототип есть. Хедер included в test.cpp и libwrk

test.cpp:
C++
1
2
3
4
5
6
if (fork()){
    serialize_child(stck,flock);
}else{
    serialize_parrent(stck,flock);
    deserialize(stck);
    }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.05.2014, 16:45     Undefined reference to 'My_lab2::serialize_child(My_lab2::My_stack&,boost::interpro cess::file_lock&)')
Посмотрите здесь:

Проблема с проверкой условия цикла for( int i=2; !((n%i||d%i)&&!(n%i&&d%i))==0 ; i++) C++
В заштрихованную фигуру бросают точки с координатами x и y. Получить координаты первой точки не попавшей в эту область (фигура x*x+y*y<25&&x*x+y*y>=9& C++
Ошибка [Linker error] undefined reference to `Triangulation::distPoints(tagPOINT&, tagPOINT&)' C++
C++ Почему friend ostrem& operator <<(ostream& outs, const Rational&); - invalid function declaration?
ostream &operator<< (ostream &output, const Array &obj) - что означает эта строка? C++
Выделение памяти для буффера, под std::istream& operator>>(std::istream &, String &) C++
Friend ostream& operator<<(ostream& stream, CArr& obj); C++
Boost & предстоящая компиляция C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
5942 / 5547 / 1783
Регистрация: 18.12.2011
Сообщений: 14,155
Завершенные тесты: 1
18.05.2014, 17:24     Undefined reference to 'My_lab2::serialize_child(My_lab2::My_stack&,boost::interpro cess::file_lock&)') #2
Оба файла должны быть включены в одну команду компиляции.
В VS это делается подключением обоих файлов к одному проекту.
Как сделать это из командной строки, к сожалению, не знаю.
i7otep9wka
1 / 1 / 1
Регистрация: 13.12.2011
Сообщений: 76
18.05.2014, 17:38  [ТС]     Undefined reference to 'My_lab2::serialize_child(My_lab2::My_stack&,boost::interpro cess::file_lock&)') #3
так включены же:

Bash
1
g++ test.cpp -L. -lwrk -lboost_serialization -o programwrk -std=c++0x
1. test.cpp
2. -lwrk - моя библиотека
3. + #include "header.h" в библиотеке и test.cpp
Yandex
Объявления
18.05.2014, 17:38     Undefined reference to 'My_lab2::serialize_child(My_lab2::My_stack&,boost::interpro cess::file_lock&)')
Ответ Создать тему
Опции темы

Текущее время: 14:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru