2014-12-04 3 views
0

У меня есть программа, с которой у меня нет проблем, и она компилируется на моем компьютере, который у меня есть, который запускает Windows 7 32bit. Чтобы запустить программу, я должен использовать библиотеку, для которой есть файлы .h и .lib.LNK2019 на смену компьютера

Мне нужно было внести небольшое изменение в программу, просто изменив часть текста на экране справки, но я делал это с другого компьютера, на котором работает Windows 7 64bit. Когда я пытаюсь скомпилировать программу без внесения каких-либо изменений в код, просто скопировав файлы на новый компьютер из Dropbox, я получаю «LNK2019: неразрешенный внешний символ ...» для некоторых функций, которые я вызываю из библиотека.

Для компиляции я использую Qt Creator и вызываю на компилятор Visual Studio для Microsoft (я использую то же самое на обоих компьютерах, за исключением, конечно, одного x64 и другого x86).

Неужели кто-нибудь сталкивался с проблемой, подобной этому в прошлом? Если да, то что вы сделали, чтобы исправить это?

+0

Там очень вероятно, правильный ответ для вашей проблемы здесь: http://stackoverflow.com/questions/12573816/what-is-un-undefined-reference-unresolved-external-symbol-error-and-how-do-i-fix –

ответ

0

Почти наверняка ваша проблема заключается в вашей файловой системе/сборке.

Либо вы ориентируетесь на 32-разрядные стандартные библиотеки, которые не существуют на 64-битной платформе.

или вы скопировали 32-битные библиотеки из другой системы и ссылки на 64-битных библиотек на новой системе

+0

Есть ли способ заставить его использовать 32-битные библиотеки при его создании, хотя он компилируется на 64-битной системе? – user3830784

+0

Ваш вопрос будет намного яснее, если вы указали фактическую ошибку связи. Например. это скажет нам, что многие ошибки были из стандартной библиотеки c неправильного количества бит. –

+0

Обычно вы можете использовать 32-битные библиотеки в 64-битной системе, но вам нужно их запросить, а в некоторых случаях вам также придется загружать специальные библиотеки. Обычно вам лучше использовать системные библиотеки, которые входят в стандартную комплектацию и изменяют вашу программу. –

Смежные вопросы