Привет всем. В общем проблема вроде и понятна, компилю на 2019. Инклюды беру из src из которых библиотеки и компилируются. Погуглил и вроде не мало чего перепробовал но меня знатно посылает каждый раз на неразрешенный внешний символ. Короче вот:
Буду признателен за ответ и пояснение)
Target
в Bullet порядок линковки либ имеет значение:
libBulletDynamics
libBulletCollision
libLinearMath
Aroch
Я тебя правильно понял насчёт порядка?
P.S. все так-же по итогу. Порядок линковки - это каков этап? CMake по стандарту юзал из коробки и ничего не менял.
Target
да, ну и проверь флаги с которыми собирал либы. MD/MT
Совпадают:и там и там MTd
Действительно, поменяй порядок.
Например SDL2Main, SDL2, потом Bullet.
A зачем тебе кстати Bullet *_Debug?
Тут короче есть изрядная доля шаманства. Типа порядок линковки, битность и пр флаги.
Был у меня проект пользующий bullet3-2.88, собранный из исходников.
Все работало, пока не скачал обновление bullet3-2.89.
Сама либа bullet строится точно так-же (успешно), а проект не линкуется. Так и не победил.
Дело было правда под gcc.
Target
Проблема при сборке твоего проекта или либы bullet?
leonardo98
Свой проект, пока хз, даже уже вроде всё в настройках выставил аналогично как в настройках проекта примера. Заюзал 2.8.8 но трабла так и осталась.
Target
Проект на CMake? Покажи что там.
leonardo98
исходники буллета к проекту на cmake достаточно просто добавляются
include_directories(${FBR_ENGINE_PATH}/libs/bullet/src) set ( BULLET_VERSION 2.89) add_subdirectory( ${FBR_ENGINE_PATH}/libs/bullet/src) target_link_libraries( fbr Bullet3Collision) target_link_libraries( fbr Bullet3Common) target_link_libraries( fbr Bullet3Dynamics) target_link_libraries( fbr Bullet3Geometry) target_link_libraries( fbr BulletCollision) target_link_libraries( fbr BulletDynamics) target_link_libraries( fbr BulletInverseDynamics) target_link_libraries( fbr BulletSoftBody) target_link_libraries( fbr LinearMath)
Я победил) Правда не запомнил что именно изменил в настройках.
Target
Используй CMake для настройки проектов и svn/git и будет всегда понятно что поменял.
Тема в архиве.