2010-03-31 1 views
2

Я использую CodeBlocks и MinGW toolchain, который по существу является GCC. Я использовал VStudio, но я хочу уйти от него, чтобы сделать кросс-платформенную разработку. В некоторых библиотеках, которые я связываю, в некоторых библиотеках, в частности, в CXImage SDK (_chkstk), есть некоторые специфические ссылки для Microsoft. Я предполагаю, что библиотека была собрана вместе с VS. Из моих поисков я узнал, что GCC использует _alloca, а не _chkstk. Я все еще хочу использовать CXImage для некоторых вещей, которые я делаю. Мой вопрос: есть ли способ обойти эту проблему, или я придерживаюсь канавных библиотек, например, если я хочу использовать GCC?GCC против Microsoft: Неопределенная ссылка на `_chkstk '?

+0

Вы пытаетесь напрямую связать себя с тем же статическим архивом (.lib), с которым вы связывались с Visual Studio? –

+0

Я не уверен, что происходит, но я начал новый проект и добавил файлы обратно, и теперь он соединяется. Я использовал CB для импорта VS-файла, поэтому, я думаю, он смотрел на неправильные библиотеки. Поэтому, если вы хотите добавить ответ о libs, я соглашусь с ним. Благодарю. – SethCoder

ответ

1

Как я уже сказал в своем комментарии, вы, скорее всего, ссылаетесь на неправильные файлы lib, так как MinGW/gcc компилирует вещи совсем по-другому от msvc. Всегда пытайтесь перекомпилировать библиотеки из источника с помощью компилятора, который вы используете, чтобы в конечном итоге связать их (если можно).

+0

Да, спасибо, сэр. – SethCoder