jeudi 23 juin 2016

Direct2D Not Linking Whole Library in C++ Builder [duplicate]


This question already has an answer here: What is an undefined reference/unresolved external symbol error and how do I fix it? 25 answers Message to Ken White Mr White. I do not believe this is not the same how do I include an external reference in a C++ project and how does it work. I'm aware of how linking works. The question is posted because RAD studio does the linking for me; or at least does their best to make it a mystery. It tries to do everything for me, unsuccessfully. In fact, everything else in Direct2D already links fine, I can even use almost everything in the D2D1.h and D2D1Helper.h files until I add that one rotation function (and a few others too). When I asked embarcadero about it they replied with something to the effect of "yeah, that is a bug." So maybe next time you and others could not down vote my questions or mark them as things other than what they are. I though I was clear: Canvas drawing works just fine with the TDirect2DCanvas. Everything renders smoothly. However, I need to use render targets. I get linking error when I try to. Please ask for clarity before marking the question:) It really hurts me in getting a good answer. If you are trying to help me get an answer, ask for clarity and help me understand things. What is an idea of a title that you believe would be better? It is linking Direct2D in C++ builder. I've changed the title to try to make it better. But your recommendation would be appreciated. If you think this question should be asked somewhere else. Please point me to the location for people who are frustrated with Embarcadero. Actual Question I've got a C++ Builder (Rad Studio Berlin) project setup to use Direct2d. Canvas drawing works just fine with the TDirect2DCanvas. Everything renders smoothly. However, I need to use render targets. I get linking error when I try to. For example, when try I: canvas->RenderTarget->SetTransform(D2D1::Matrix3x2F::Rotation(15.0, D2D1PointF(100, 100))); ...I get the following linking error: [ilink32 Error] Error: Unresolved external 'D2D1MakeRotateMatrix' referenced from C:DPTRUNKSRCCLIENTSIDEAPPLICATIONSVIEWERWIN32DEBUGMIMAGE.OBJ I thought c++ builder was supposed to already be setup to link against direct2d if I just included the headers. Can anyone help me link against the appropriate files?

Aucun commentaire:

Enregistrer un commentaire