ПрограммированиеФорумФизика

Проблемка с Bullet'ом

#0
15:47, 6 сен 2020

Привет всем. В общем проблема вроде и понятна, компилю на 2019. Инклюды беру из src из которых библиотеки и компилируются. Погуглил и вроде не мало чего перепробовал но меня знатно посылает каждый раз на неразрешенный внешний символ. Короче вот:

+ Показать

Буду признателен за ответ и пояснение)

#1
16:03, 6 сен 2020

Target
в Bullet порядок линковки либ имеет значение:
libBulletDynamics
libBulletCollision
libLinearMath

#2
16:23, 6 сен 2020

Aroch

+ Показать

Я тебя правильно понял насчёт порядка?

P.S. все так-же по итогу. Порядок линковки - это каков этап? CMake по стандарту юзал из коробки и ничего не менял.

#3
17:10, 6 сен 2020

Target
да, ну и проверь флаги с которыми собирал либы. MD/MT

#4
17:15, 6 сен 2020

Совпадают:и там и там MTd

#5
18:12, 6 сен 2020

Действительно, поменяй порядок.
Например SDL2Main, SDL2, потом Bullet.
A зачем тебе кстати Bullet *_Debug?

Тут короче есть изрядная доля шаманства. Типа порядок линковки, битность и пр флаги.
Был у меня проект пользующий bullet3-2.88, собранный из исходников.
Все работало, пока не скачал обновление  bullet3-2.89.
Сама либа bullet строится точно так-же (успешно), а проект не линкуется. Так и не победил.
Дело было правда под gcc.

#6
18:39, 6 сен 2020

Target
Проблема при сборке твоего проекта или либы bullet?

#7
19:12, 6 сен 2020

leonardo98
Свой проект, пока хз, даже уже вроде всё в настройках выставил аналогично как в настройках проекта примера. Заюзал 2.8.8 но трабла так и осталась.

#8
19:51, 6 сен 2020

Target
Проект на CMake? Покажи что там.

#9
19:59, 6 сен 2020

leonardo98

+ Показать
#10
20:06, 6 сен 2020

исходники буллета к проекту на 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)
#11
20:37, 6 сен 2020

Я победил) Правда не запомнил что именно изменил в настройках.

#12
22:09, 6 сен 2020

Target
Используй CMake для настройки проектов и svn/git и будет всегда понятно что поменял.

ПрограммированиеФорумФизика

Тема в архиве.