Topic: Error while linking [SOLVED] (Read 21672 times)
Hey There!
I’ve been developing under windows so far. Now I want to switch to ubuntu as my development environment. I have a project I’ve been working on for a while and I want to continue working on it under Linux. However, when I try to run the project it throws an «error while linking» error message and the project wouldn’t build. I’ve created a new project to check if it’d be something related to Lazarus IDE but it’s not since brand-new project builds and runs correctly. What am I missing..? Thanks in advance
« Last Edit: July 26, 2017, 09:09:58 pm by odvesims »
Logged
Do you use the stable version of Lazarus? For production use, you should use only the stable version, not the development version.
On the project that failed to build, can you check if the setting is configured to Linux target? If you want to target Windows binary, you should first make your Lazarus/FPC to cross compile to Windows.
Logged
Hey There!
I’ve been developing under windows so far. Now I want to switch to ubuntu as my development environment. I have a project I’ve been working on for a while and I want to continue working on it under Linux. However, when I try to run the project it throws an «error while linking» error message and the project wouldn’t build. I’ve created a new project to check if it’d be something related to Lazarus IDE but it’s not since brand-new project builds and runs correctly. What am I missing..? Thanks in advance
You’re probably missing *-dev packages … I’m using fedora so don’t know exact names, but probably something like libgtk2-dev libgdk2-dev etc
Logged
In my tests, I found that to make Lazarus/FPC working correctly on Linux, you may need to install these:
— libx11-dev
— libgtk2.0-dev
— libgdk-pixbuf2.0-dev
— libcairo2-dev
— libpango1.0-dev
— libgl1-mesa-dev (if you want to develop OpenGL programs)
Read more here:
http://forum.lazarus.freepascal.org/index.php/topic,35214
Logged
In my tests, I found that to make Lazarus/FPC working correctly on Linux, you may need to install these:
— libx11-dev
— libgtk2.0-dev
— libgdk-pixbuf2.0-dev
— libcairo2-dev
— libpango1.0-dev
— libgl1-mesa-dev (if you want to develop OpenGL programs)Read more here:
http://forum.lazarus.freepascal.org/index.php/topic,35214
I have all of those installed.
Logged
You mentioned you got «error while linking» message. Can you please provide the whole message or screenshot? Usually it contains something useful for fixing the issue.
Logged
You mentioned you got «error while linking» message. Can you please provide the whole message or screenshot? Usually it contains something useful for fixing the issue.
That’s all it says. It’s like «user/myProjects/myProject.lpr(63,1) Error: Error while linking». The 63,1 points to the «end.» line in my project’s .lpr file.
Logged
@odvesims
Try to increase verbosity(project options) during compilation, maybe you get more info. In my experience the linking failure usually is caused by the missing libgl-dev.
Logged
@odvesims
Try to increase verbosity(project options) during compilation, maybe you get more info. In my experience the linking failure usually is caused by the missing libgl-dev.
Checked all the checkboxes in verborsity and even increased the number for the «stop after» at the bottom. Same results, it doesn’t give any extra information
Logged
Checked all the checkboxes in verborsity and even increased the number for the «stop after» at the bottom. Same results, it doesn’t give any extra information
![]()
I’m out of ideas. Do you use resources in your application? Perhaps you deleted some resource declaration by accident? You should also try to build your application on a different platform(windows maybe?).
Logged
What version of your Ubuntu, Lazarus and FPC?
Do you install Lazarus that comes from Ubuntu repositories?
Logged
@handoko
linker does usually not ouput verbose information, so either you need a full log (and know where to look for), or use gnu link verbosity option using fpc’s -k option
Logged
What version of your Ubuntu, Lazarus and FPC?
Do you install Lazarus that comes from Ubuntu repositories?
I downloaded it from the lazarus web-page and downloaded some packages (basically the ones you listed in a previous post) using apt-get.
Logged
Hi,
Some tips:
1) Right click at the messages windows and change filtering setting to the lowest level.
2) In Debian 8, stable, FPC 3.0.2 and above, I had a linker issue solved (I should say worked around) by recompiling the compiler:
https://bugs.freepascal.org/view.php?id=31490
Logged
Hi,
Some tips:
1) Right click at the messages windows and change filtering setting to the lowest level.
2) In Debian 8, stable, FPC 3.0.2 and above, I had a linker issue solved (I should say worked around) by recompiling the compiler:
https://bugs.freepascal.org/view.php?id=31490
Sorry for sort of «abandoning» this thread.
I’m now using rasbian, which is a Debian distribution for raspberry. I installed Lazarus (1.9) and FPC (3.1.1) and after installing all my required packages, the project build fails with the same «Error while linking» error, no other output (When hovering the error message it says «generic linking error» and that’s it)
I tried your suggestion but it stops with a «*** The only supported starting compiler version is 3.0.0. You are trying to build with 3.1.1.. Stop».
Logged
Модератор: Модераторы
Ошибка при компиляции?! (Error while linking)
Всем доброго времени суток! Сразу к делу…
Имеется программа на FreePascal следующего вида;
program new;
begin
WriteLn(‘Hello world!’);
ReadLn;
end.
Жмем F9… И видим: project.pas (5,1) Error: Error while linking
В чем собственно говоря проблема?
- Andreich
- постоялец
- Сообщения: 268
- Зарегистрирован: 17.04.2008 12:33:43
Andreich » 18.04.2008 11:20:45
Все,.. отбой!
Проблема решилась полной переустановкой FPC.
- Andreich
- постоялец
- Сообщения: 268
- Зарегистрирован: 17.04.2008 12:33:43
alexs » 18.04.2008 11:21:27
Как я понимаю — ты это дулаеш из среды FP
посмотри целевую платформу, под которую собираешсмя компилировать.
-
alexs - долгожитель
- Сообщения: 4009
- Зарегистрирован: 15.05.2005 23:17:07
- Откуда: г.Ставрополь
-
- Профиль
- Сайт
- ICQ
Cheb » 18.04.2008 14:03:43
Error while linking под Виндовс возникает когда программа запущена (и соответственно её екзешник залочен). Почему, кстати, в Линуксе программировать гораздо удобнее.
-
Cheb - энтузиаст
- Сообщения: 964
- Зарегистрирован: 06.06.2005 15:54:34
-
- Профиль
- Сайт
alexs » 18.04.2008 15:03:27
Ещё может быть, если целевая платформа не верно установлена
-
alexs - долгожитель
- Сообщения: 4009
- Зарегистрирован: 15.05.2005 23:17:07
- Откуда: г.Ставрополь
-
- Профиль
- Сайт
- ICQ
@!!ex » 23.04.2008 11:34:19
Как показала практика, причин для Error while linking может быть 1000….
Но все они вроде решаются не сложно.
- @!!ex
- новенький
- Сообщения: 35
- Зарегистрирован: 12.04.2008 11:55:32
Re:
psylone » 21.04.2013 20:19:05
@!!ex писал(а):Как показала практика, причин для Error while linking может быть 1000….
Но все они вроде решаются не сложно.
Может и так конечно, но вот у меня, например, в Ubuntu 12.10 значительные проблемы с использованием ptcgraph. Ему нужны libXxf86dga.so и libXxf86vm.so, но все равно ошибка при компиляции «Error while linking» вылезает.
- psylone
- незнакомец
- Сообщения: 2
- Зарегистрирован: 21.04.2013 20:11:34
Re: Ошибка при компиляции?! (Error while linking)
Vadim » 22.04.2013 03:17:38
- Vadim
- долгожитель
- Сообщения: 4112
- Зарегистрирован: 05.10.2006 08:52:59
- Откуда: Красноярск
Re: Ошибка при компиляции?! (Error while linking)
psylone » 23.04.2013 02:15:39
Vadim писал(а):Читали?http://www.freepascal.ru/article/freepa … 215095658/
Да, конечно =) Благодарю за ответ. Проблема решилась установкой заголовочных файлов для xrandr: sudo apt-get install libxrandr-dev
- psylone
- незнакомец
- Сообщения: 2
- Зарегистрирован: 21.04.2013 20:11:34
Вернуться в Free Pascal Compiler
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12
В этом разделе представлен список ошибок, которые могут случиться, когда компилятор обрабатывает параметры командной строки или конфигурационные файлы.
Сообщение |
Описание |
---|---|
Warning: Source operating system redefined |
Исходная операционная система переопределена. |
Info: Assembling (pipe) Сообщение |
Сборка использует канал для внешнего ассемблера. |
Error: Can’t create assembler file: Сообщение |
Указанный файл не может быть создан. Убедитесь, что у вас достаточно прав для создания этого файла. |
Error: Can’t create object file: Сообщение |
Указанный файл не может быть создан. Убедитесь, что у вас достаточно прав для создания этого файла. |
Error: Can’t create archive file: Сообщение |
Указанный файл не может быть создан. Убедитесь, что у вас достаточно прав для создания этого файла. |
Error: Assembler Сообщение not found, switching to external assembling |
Программа ассемблера не найдена. Компилятор создаст сценарий, который может быть использован для ассемблирования и компоновки программы. |
Using assembler: Сообщение |
Информационно сообщение, которое уведомляет о том, какой ассемблер будет использоваться. |
Error: Error while assembling exitcode Сообщение |
Произошла ошибка во время ассемблирования файла при использовании внешнего ассемблера. Подробную информацию об этой ошибке см. в документации на внешний ассемблер. |
Error: Can’t call the assembler, error Сообщение switching to external assembling |
Ошибка произошла при вызове внешнего ассемблера. Компилятор создаст сценарий, который может быть использован для ассемблирования и компоновки программы. |
Info: Assembling Сообщение |
Информационное сообщение о том, что файл находится в процессе сборки. |
Info: Assembling with smartlinking Сообщение |
Информационное сообщение о том, что файл находится в процессе сборки с использованием «умной компоновки». |
Warning: Object arg1 not found, Linking may fail ! |
Один из объектных файлов отсутствует, и компоновка, вероятно, завершилась неудачно. Проверьте пути. |
Warning: Library arg1 not found, Linking may fail ! |
Один из библиотечных файлов отсутствует, и компоновка, вероятно, завершилась неудачно. Проверьте пути. |
Error: Error while linking |
Генерация ошибки во время компоновки. |
Error: Can’t call the linker, switching to external linking |
Произошла ошибка при вызове внешнего компоновщика. Компилятор создаст сценарий, который может быть использован для ассемблирования и компоновки программы. |
Info: Linking Сообщение |
Информационное сообщение о том, что программа или библиотека находится в процессе компоновки. |
Error: Util Сообщение not found, switching to external linking |
Внешний инструмент не найден. Компилятор создаст сценарий, который может быть использован для ассемблирования и компоновки или выполнения заключительной обработки программы. |
Using util Сообщение |
Информационное сообщение о том, что внешняя программа (обычно постпроцессор) находится в процессе выполнения. |
Error: Creation of Executables not supported |
Создание исполняемых программ не поддерживается для этой платформы, поэтому она не выполняется в компиляторе. |
Error: Creation of Dynamic/Shared Libraries not supported |
Создание динамически загружаемых библиотек не поддерживается для этой платформы, поэтому она не выполняется в компиляторе. |
Info: Closing script Сообщение |
Информационное сообщение показывает, когда запись сценария внешней сборки и компоновки завершена. |
Error: resource compiler «Сообщение» not found, switching to external mode |
Внешний ресурс компилятора не был найден. Компилятор создаст сценарий, который может быть использован для ассемблирования, компиляции ресурсов и компоновки или выполнения заключительной обработки программы. |
Info: Compiling resource Сообщение |
Информационное сообщение о том, что выполняется компиляция ресурсов. |
unit Сообщение can’t be statically linked, switching to smart linking |
Была запрошена статическая компоновка, но был использован модуль, который не допускает статической компоновки. |
unit Сообщение can’t be smart linked, switching to static linking |
Была запрошена «умная» компоновка, но был использован модуль, который не допускает «умной» компоновки. |
unit Сообщение can’t be shared linked, switching to static linking |
Была запрошена общая компоновка, но был использован модуль, который не допускает такой компоновки. |
Error: unit Сообщение can’t be smart or static linked |
Была запрошена «умная» или статическая компоновка, но был использован модуль, который не допускает какой-либо из этих компоновок. |
Error: unit Сообщение can’t be shared or static linked |
Была запрошена общая или статическая компоновка, но был использован модуль, который не допускает какой-либо из этих компоновок. |
Calling resource compiler «Сообщ1» with «Сообщ2» as command line |
Информационное сообщение о том, что командная строка использована для ресурсов компилятора. |
Error: Error while compiling resources |
Ресурс компилятора или конвертер вернул ошибку. |
Error: Can’t call the resource compiler «Сообщение», switching to external mode |
Ошибка произошла при вызове ресурса компилятора. Компилятор создаст сценарий, который может быть использован для ассемблирования, компиляции ресурсов и компоновки или выполнения заключительной обработки программы. |
Error: Can’t open resource file «Сообщение» |
Файл ресурсов не был открыт, произошла ошибка. |
Error: Can’t write resource file «Сообщение» |
Файл ресурсов не был записан, произошла ошибка. |
Вверх ↑
#1: 2015-07-15 10:08:28 ЛС | |
|
Помогите пожалуйста. У меня перестали компилироваться программы даже когда новую создал мне пишет эту ошибку. Программы создаю в приложение windows и приложение exe Подготовка к сборке проекта… |
|
карма: 0 |
vip |
#1.1контекстная реклама от партнеров |
Разработчик Ответов: 26049 Рейтинг: 2113 |
#2: 2015-07-15 10:11:50 ЛС | |
rotov9927 писал(а): Что делать подскажите Переустановить HiAsm в другую папку, только не в Program Files, к этой папке запрещен доступ rotov9927 писал(а): cannot open output file C Permission denied — это и говорит о запрете доступа |
|
карма: 22 |
Ответов: 2 Рейтинг: 0 |
#3: 2015-07-16 18:07:23 ЛС | |
Спасибо большое очень помогли теперь все работает. |
|
карма: 0 |
Ответов: 100 Рейтинг: -1 |
#4: 2015-08-22 12:00:46 ЛС | |
FTP.pas(19,1) Error: Error while linking помогите |
|
карма: 0 |
Ответов: 16884 Рейтинг: 1239 |
#5: 2015-08-22 14:03:11 ЛС | |
||
Читай чуть выше nesco писал(а): Переустановить HiAsm в другую папку, только не в Program Files, к этой папке запрещен доступ
|
|||
карма: 25 |
|
Ответов: 100 Рейтинг: -1 |
#6: 2015-08-23 14:56:33 ЛС | |
Tad писал(а): Читай чуть выше читал но если посмотреть у меня в строке нет слова о доступе к папке и запуск HiAsm от имени администратора и системы не помог. |
|
карма: 0 |
Ответов: 16884 Рейтинг: 1239 |
#7: 2015-08-23 15:05:04 ЛС | |
||
Yaremchenko писал(а): у меня в строке нет слова о доступе к папке Yaremchenko писал(а): Error: D:Program FileswHiAsmcompilerfpcppc386.exe returned an error exitcode
|
|||
карма: 25 |
|
7
В консольной IDE ввожу программу:
uses
Сохраняю, жму F9. Получаю собщение: Error while linking.
mysql51;
begin
writeln('Hello, world!!!!!');
end.
Что делаю неправильно?
Записан
Ноут HP550, AltLinux 8 KDE4 Desktop x86-64
Настольный, AltLinux Workstation 8.1 x86-64
uses
mysql51;
Это что ?
Это полный код или только часть ?
Записан
Сноси Винду, переходи на Линукс !
Это полный код или только часть ?
mysql51 — модуль для работы с mysql. Находится здесь: /usr/lib64/fpc/units/x86_64-linux/mysql.
Т. е. это не мой код.
Записан
Ноут HP550, AltLinux 8 KDE4 Desktop x86-64
Настольный, AltLinux Workstation 8.1 x86-64
В консольной IDE ввожу программу:
uses
Сохраняю, жму F9. Получаю собщение: Error while linking.
mysql51;
begin
writeln('Hello, world!!!!!');
end.
Что делаю неправильно?
Впервую очередь внимательно читайте, что за ошибки выдает IDE. Во вторую очередь возьмите книжку по Pascal и почитайте её.
Как должно быть правильно(Я не беру в расчет ваш модуль mysql51, почитайте на него документацию)
program primer; //Можно писать и без него.
uses crt; //crt - базовые классы и функции, он должен быть обязательно
begin
writeln('Hellow, world!');
end.
Честно говоря вошел в ступор, когда начал писать. Сейчас восновном разрабатываю на Pascal-e в виде unit-ов, а чистый набор program и т.д. просто забыл.
« Последнее редактирование: 27.05.2012 12:43:17 от Kemper »
Записан
Alt Linux — Поддержим Российского производителя!
какой нафиг crt обязательно? Это для работы с терминалом и часто не нужно вообще.
Записан
какой нафиг crt обязательно? Это для работы с терминалом и часто не нужно вообще.
Для работы с write или writeln обязательно.
Записан
Alt Linux — Поддержим Российского производителя!
В любом случае, следующая программа компилируется и выполняется нормально:
begin
Мне нужно написать прогу для работы с mysql. Подключаю модуль — и такой облом.
writeln('Hello, world!!!!!');
end.
Записан
Ноут HP550, AltLinux 8 KDE4 Desktop x86-64
Настольный, AltLinux Workstation 8.1 x86-64
Записан
Alt Linux — Поддержим Российского производителя!
Посмотрите тут, может что полезное увидите:
http://softwaretopic.informer.com/free-pascal-mysql-example/
http://www.win-ni.narod.ru/FPC/testdb4.htm
Благодарю за ссылки. Буду изучать.
Выполнил компиляцию в командной строке. Вот что получил:
[vanya@VanyaBook mysql_db]$ fpc mysql1.pas
Занитересовала строка
Free Pascal Compiler version 2.6.0 [2012/05/22] for x86_64
Copyright (c) 1993-2011 by Florian Klaempfl and others
Target OS: Linux for x86-64
Compiling mysql1.pas
Linking mysql1
/usr/bin/ld: warning: link.res contains output sections; did you forget -T?
/usr/bin/ld: cannot find -lmysqlclient
mysql1.pas(4,1) Error: Error while linking
mysql1.pas(4,1) Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted
Error: /usr/bin/ppcx64 returned an error exitcode (normal if you did not specify a source file to be compiled)
[vanya@VanyaBook mysql_db]$
/usr/bin/ld: cannot find -lmysqlclient
Поискал в репозитории — нашёл пакет libmysqlclient-devel. Его установка проблему решила.
Всем большое спасибо.
Записан
Ноут HP550, AltLinux 8 KDE4 Desktop x86-64
Настольный, AltLinux Workstation 8.1 x86-64
Поискал в репозитории — нашёл пакет libmysqlclient-devel. Его установка проблему решила.
Всем большое спасибо
об аналогичной проблеме(с другими модулями) я писал и на форуме и в багзиллу. Чтобы добавили в зависимости для FPC devel библиотеки.
Пока тишина. А на эти грабли будут еще многие наступать.
PS 2Kemper — Таки, для write или writeln модуль crt не нужен. Как старый пасквилянт заявляю.
Записан
об аналогичной проблеме(с другими модулями) я писал и на форуме и в багзиллу. Чтобы добавили в зависимости для FPC devel библиотеки.
Чтобы не тянуть полрепозитория, нужно делить этот пакет на более мелкие, по модулям, каждый их которых тянет нудные зависимости. Иначе ради 1-2% пользователей FPC все будут вытягивать MySQL, хотя им для обучения БД и не нужна.
Записан
Андрей Черепанов (cas@)
какой нафиг crt обязательно? Это для работы с терминалом и часто не нужно вообще.
Для работы с write или writeln обязательно.
не нужен.
его обычно юзали для «repeat until keypressed;» (последнее как раз оттуда)
Записан
об аналогичной проблеме(с другими модулями) я писал и на форуме и в багзиллу. Чтобы добавили в зависимости для FPC devel библиотеки.
Чтобы не тянуть полрепозитория, нужно делить этот пакет на более мелкие, по модулям, каждый их которых тянет нудные зависимости. Иначе ради 1-2% пользователей FPC все будут вытягивать MySQL, хотя им для обучения БД и не нужна.
Я не о 1-2% пользователей, которые прежде чем писать для БД должны выяснить что-с чем работает.
Как раз имел ввиду школьников и студентов. (Недавно сын с аналогичной ошибкой столкнулся и удивлялся — » почему в BP работает?». Доставили — заработало.)
ЕМНИП, большинство народа после «Hello word!» обычно пытается что-нить нарисовать:-) А без пары нужных библиотек тот же «uses graph» будет послан и не слинкован…
Хотя бы libX11-devel и xorg-xf86dgaproto-devel (кажется, их докинуть пришлось) для «рисования» воткнуть в зависимости.
А по большому счету, да- если пишешь что-то сложнее «Hello …», то разберись «откуда ноги растут».
Записан
А по большому счету, да- если пишешь что-то сложнее «Hello …», то разберись «откуда ноги растут».
Я предложил более элегантное решение: разбить всё на подпакеты. которые вытягивают то, что нужно.
Записан
Андрей Черепанов (cas@)
I have installed boost on Fedora 20 via yum and am trying some simple examples. However I have trouble to compile the first example from the logging tutorial.
Compiling with g++ -c boosttest.cc
works fine, but I get lot’s of errors when I try to link it with
g++ boosttest.o -o boosttest -lboost_log -lpthread
the full error-log:
boosttest.o: In function `main':
boosttest.cc:(.text+0x44): undefined reference to `boost::log::v2s_mt_posix::trivial::logger::get()'
boosttest.cc:(.text+0x9a): undefined reference to `boost::log::v2s_mt_posix::trivial::logger::get()'
boosttest.cc:(.text+0x167): undefined reference to `boost::log::v2s_mt_posix::trivial::logger::get()'
boosttest.cc:(.text+0x1bd): undefined reference to `boost::log::v2s_mt_posix::trivial::logger::get()'
boosttest.cc:(.text+0x28a): undefined reference to `boost::log::v2s_mt_posix::trivial::logger::get()'
boosttest.o:boosttest.cc:(.text+0x2e0): more undefined references to `boost::log::v2s_mt_posix::trivial::logger::get()' follow
boosttest.o: In function `boost::log::v2s_mt_posix::record::reset()':
boosttest.cc:(.text._ZN5boost3log12v2s_mt_posix6record5resetEv[_ZN5boost3log12v2s_mt_posix6record5resetEv]+0x18): undefined reference to `boost::log::v2s_mt_posix::record_view::public_data::destroy(boost::log::v2s_mt_posix::record_view::public_data const*)'
boosttest.o: In function `boost::log::v2s_mt_posix::record boost::log::v2s_mt_posix::sources::basic_composite_logger<char, boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level>, boost::log::v2s_mt_posix::sources::multi_thread_model<boost::log::v2s_mt_posix::aux::light_rw_mutex>, boost::log::v2s_mt_posix::sources::features<boost::log::v2s_mt_posix::sources::severity<boost::log::v2s_mt_posix::trivial::severity_level>, void, void, void, void, void, void, void, void, void> >::open_record<boost::parameter::aux::tagged_argument<boost::log::v2s_mt_posix::keywords::tag::severity, boost::log::v2s_mt_posix::trivial::severity_level const> >(boost::parameter::aux::tagged_argument<boost::log::v2s_mt_posix::keywords::tag::severity, boost::log::v2s_mt_posix::trivial::severity_level const> const&)':
boosttest.cc:(.text._ZN5boost3log12v2s_mt_posix7sources22basic_composite_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEENS2_8featuresINS2_8severityIS6_EEvvvvvvvvvEEE11open_recordINS_9parameter3aux15tagged_argumentINS1_8keywords3tag8severityEKS6_EEEENS1_6recordERKT_[_ZN5boost3log12v2s_mt_posix7sources22basic_composite_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEENS2_8featuresINS2_8severityIS6_EEvvvvvvvvvEEE11open_recordINS_9parameter3aux15tagged_argumentINS1_8keywords3tag8severityEKS6_EEEENS1_6recordERKT_]+0x1e): undefined reference to `boost::log::v2s_mt_posix::core::get_logging_enabled() const'
boosttest.o: In function `boost::log::v2s_mt_posix::aux::record_pump<boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level> >::~record_pump()':
boosttest.cc:(.text._ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEED2Ev[_ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEED5Ev]+0x2c): undefined reference to `boost::log::v2s_mt_posix::aux::unhandled_exception_count()'
boosttest.o: In function `boost::log::v2s_mt_posix::aux::record_pump<boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level> >::record_pump(boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level>&, boost::log::v2s_mt_posix::record&)':
boosttest.cc:(.text._ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEEC2ERS8_RNS1_6recordE[_ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEEC5ERS8_RNS1_6recordE]+0x1d): undefined reference to `boost::log::v2s_mt_posix::aux::stream_provider<char>::allocate_compound(boost::log::v2s_mt_posix::record&)'
boosttest.cc:(.text._ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEEC2ERS8_RNS1_6recordE[_ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEEC5ERS8_RNS1_6recordE]+0x28): undefined reference to `boost::log::v2s_mt_posix::aux::unhandled_exception_count()'
boosttest.o: In function `boost::log::v2s_mt_posix::aux::record_pump<boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level> >::auto_release::~auto_release()':
boosttest.cc:(.text._ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEE12auto_releaseD2Ev[_ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEE12auto_releaseD5Ev]+0xf): undefined reference to `boost::log::v2s_mt_posix::aux::stream_provider<char>::release_compound(boost::log::v2s_mt_posix::aux::stream_provider<char>::stream_compound*)'
boosttest.o: In function `boost::log::v2s_mt_posix::sources::aux::severity_level<boost::log::v2s_mt_posix::trivial::severity_level>::set_value(boost::log::v2s_mt_posix::trivial::severity_level)':
boosttest.cc:(.text._ZN5boost3log12v2s_mt_posix7sources3aux14severity_levelINS1_7trivial14severity_levelEE9set_valueES6_[_ZN5boost3log12v2s_mt_posix7sources3aux14severity_levelINS1_7trivial14severity_levelEE9set_valueES6_]+0x7): undefined reference to `boost::log::v2s_mt_posix::sources::aux::get_severity_level()'
boosttest.o: In function `boost::log::v2s_mt_posix::record boost::log::v2s_mt_posix::sources::basic_logger<char, boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level>, boost::log::v2s_mt_posix::sources::multi_thread_model<boost::log::v2s_mt_posix::aux::light_rw_mutex> >::open_record_unlocked<boost::parameter::aux::tagged_argument<boost::log::v2s_mt_posix::keywords::tag::severity, boost::log::v2s_mt_posix::trivial::severity_level const> >(boost::parameter::aux::tagged_argument<boost::log::v2s_mt_posix::keywords::tag::severity, boost::log::v2s_mt_posix::trivial::severity_level const> const&)':
boosttest.cc:(.text._ZN5boost3log12v2s_mt_posix7sources12basic_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEEE20open_record_unlockedINS_9parameter3aux15tagged_argumentINS1_8keywords3tag8severityEKS6_EEEENS1_6recordERKT_[_ZN5boost3log12v2s_mt_posix7sources12basic_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEEE20open_record_unlockedINS_9parameter3aux15tagged_argumentINS1_8keywords3tag8severityEKS6_EEEENS1_6recordERKT_]+0x2a): undefined reference to `boost::log::v2s_mt_posix::core::open_record(boost::log::v2s_mt_posix::attribute_set const&)'
boosttest.o: In function `boost::log::v2s_mt_posix::sources::basic_logger<char, boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level>, boost::log::v2s_mt_posix::sources::multi_thread_model<boost::log::v2s_mt_posix::aux::light_rw_mutex> >::push_record_unlocked(boost::rv<boost::log::v2s_mt_posix::record>&)':
boosttest.cc:(.text._ZN5boost3log12v2s_mt_posix7sources12basic_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEEE20push_record_unlockedERNS_2rvINS1_6recordEEE[_ZN5boost3log12v2s_mt_posix7sources12basic_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEEE20push_record_unlockedERNS_2rvINS1_6recordEEE]+0x36): undefined reference to `boost::log::v2s_mt_posix::core::push_record_move(boost::log::v2s_mt_posix::record&)'
collect2: error: ld returned 1 exit status
What am I missing? What am I doing wrong?
EDIT 1: The order of -lboost_log -lpthread
makes no difference in the output. There is also a very similar question, but the solution does not work for me. The following also fails with the same errors:
g++ -DBOOST_LOG_DYN_LINK boosttest.o -o boosttest -lboost_log -lpthread
- Remove From My Forums
-
Question
-
Hi Guys,
As part of porting our 32 bit code to 64bit, I am trying to compile and link my old code with the visual studio 9.0 version.
I am not able to build the code as I am getting lots of errors while linking.
Following are the errors while linking.
cpm_copy.o : error LNK2019: unresolved external symbol __imp_strcmpi referenced in function main
cpm_copy.o : error LNK2019: unresolved external symbol __imp__putenv referenced in function main
cpm_copy.o : error LNK2019: unresolved external symbol strcat referenced in function main
cpm_copy.o : error LNK2019: unresolved external symbol strcpy referenced in function main
cpm_copy.o : error LNK2019: unresolved external symbol __imp_malloc referenced in function main
cpm_copy.o : error LNK2019: unresolved external symbol strlen referenced in function main
cpm_copy.o : error LNK2019: unresolved external symbol __imp_getenv referenced in function main
cpm_copy.o : error LNK2019: unresolved external symbol __imp_printf referenced in function main
cpm_copy.o : error LNK2019: unresolved external symbol __security_cookie referenced in function main
cpm_copy.o : error LNK2019: unresolved external symbol __security_check_cookie referenced in function main
cpm_copy.o : error LNK2019: unresolved external symbol PrcExecute referenced in function generate_xml
cpm_copy.o : error LNK2019: unresolved external symbol __imp__stat64i32 referenced in function is_hpos40
cpm_copy.o : error LNK2019: unresolved external symbol __imp_unlink referenced in function do_transformation
cpm_copy.o : error LNK2019: unresolved external symbol __imp_atoi referenced in function do_transformation
cpm_copy.o : error LNK2019: unresolved external symbol __imp_close referenced in function do_transformation
cpm_copy.o : error LNK2019: unresolved external symbol __imp__setmode referenced in function do_transformation
cpm_copy.o : error LNK2019: unresolved external symbol __imp__fileno referenced in function do_transformation
cpm_copy.o : error LNK2019: unresolved external symbol __imp___iob_func referenced in function do_transformation
cpm_copy.o : error LNK2019: unresolved external symbol __imp_open referenced in function do_transformation
cpm_copy.o : error LNK2019: unresolved external symbol __imp_sprintf referenced in function do_transformation
cpm_copy.o : error LNK2019: unresolved external symbol __imp__mkdir referenced in function do_transformation
cpm_copy.o : error LNK2019: unresolved external symbol __imp_fclose referenced in function do_transformation
cpm_copy.o : error LNK2019: unresolved external symbol __imp_fscanf referenced in function do_transformation
cpm_copy.o : error LNK2019: unresolved external symbol __imp_fopen referenced in function do_transformation
cpm_copy.o : error LNK2019: unresolved external symbol strcmp referenced in function do_transformation
cpm_copy.o : error LNK2019: unresolved external symbol __imp__getcwd referenced in function do_transformation
cpm_copy.o : error LNK2019: unresolved external symbol __imp_strchr referenced in function normalize_pathname
cpm_copy.o : error LNK2019: unresolved external symbol __imp_free referenced in function free_memory
cpm_copy.o : error LNK2019: unresolved external symbol __imp_write referenced in function cpm_copy_io
cpm_copy.o : error LNK2019: unresolved external symbol __imp_read referenced in function cpm_copy_io
cpm_copy.o : error LNK2019: unresolved external symbol __imp_strtok referenced in function validate_and_get_compart_doc_format
cpm_copy.o : error LNK2019: unresolved external symbol memset referenced in function validate_and_get_compart_doc_format
cpm_copy.o : error LNK2019: unresolved external symbol __imp_fgets referenced in function validate_and_get_compart_doc_format
cpm_copy.o : error LNK2019: unresolved external symbol __imp_strncpy referenced in function get_comp_key_value
cpm_copy.o : error LNK2019: unresolved external symbol __imp_calloc referenced in function get_comp_key_value
cpm_copy.o : error LNK2019: unresolved external symbol __imp_strstr referenced in function get_comp_key_value
cpm_copy.o : error LNK2019: unresolved external symbol __imp_realloc referenced in function get_complist_buf
LINK : error LNK2001: unresolved external symbol mainCRTStartupI am not getting any error when I am building the same code on visual studion 2005.
Can anyone please help me in resolving this issue.
Thanks,
Sushil