3

I spent a sleepless night trying to build QUICKFIX to have the 64-bit version of quickfix_net.dll and quickfix_net_messages.dll

My C# Framework is 64-bit and the regular offered QUICKFIX dll's are 32-bit, so I have no other choice (Switching back my app to 32-bit is NOT an option)

I was expecting the VS_10 solution to build instantly (Poor little naive bunny...) but I have a bunch of unfound libraries errors (cannot open source file "xxxxxx.h") for many #include "xxxxxx.h" statements. I have this behavior for the two project sources I have tried. I am puzzled as I am more of a .net guy and I did not manage to fix this on my own.

The original project source is downloadable here and the 64-bit fork which interest me most is here
If some of you could open quickfix_vs10.sln and have a clean compile I would be MORE than grateful as I could then get at least a couple of hours sleep in the company's basement before getting back to work.

EDIT :

Detailed Errors :

  • I have many unrecognized #include "quickfix/foo" > I have to remove all the "quickfix/" prefixes from the entires solution
  • 'FIX' : is not a class or namespace name (especially in FieldMap.h)
  • missing type specifier - int assumed. Note: C++ does not support default-int -'QuickFix::FieldNotFound __gc &' : unable to throw or catch a managed object by value or reference

I have hundreds of each and many more... :(

EDIT : EFFICIENT ANSWER

If you want a REAL .Net FIX Engine, then you'd better go for VERSAFIX or QUICKFIX/N Both are native .Net and Open Source, and hence compilable as x64 dlls (or x86if you like)

  • QUICKFIX/N just came out and is very promising. Too bad it came out a few months after the post :(
  • As of VERSAFIX, my company has used it for 6 Months and we are pretty satisfied so far. (Russ Curry, the project initiator is technically rock solid and responsive.)
Mehdi LAMRANI
  • 11,289
  • 14
  • 88
  • 130

3 Answers3

2

You should check out QuickFIX/n, a FIX library built specifically for .NET (without the unmanaged C++ wrapper). QuickFIX/n keeps all the good conventions of QuickFIX.

  • Oh my God I am bursting into tears. This is EXACTLY what I was waiting for, for soooooooooooo long !!! Sadly, that was not available yet at the time of the post, so we used Assimilate's Open Source .Net VERSAFIX (see edit) – Mehdi LAMRANI Feb 01 '12 at 12:17
  • QuickFIX/n is very promising. However I hit too many problems with it when I tried it last year, so ended up moving to the QuickFIX .net wrapper. – Andrew Rimmer May 10 '13 at 11:27
1

I needed the 64 bit version of quickfix aswell few days ago and here is how i did it and had no errors or problems at all converting it to 64bit. Unrar a new instance of the archive open it with VS. Then go to properties of the entire solution and select Configuration Properties. Then press "Configuration Manager" button and from the drop down of "Active Solution Patforms" chose "New". Now select x64 from the first drop down and from the second "Copy settings from:" select "Mixed Platforms". After you do this just rebuild the solution and you are done.

I hope this help you all guys. Have a nice day.

Jordan
  • 530
  • 7
  • 23
  • are you talking about "quickfix-1.13.3.zip" source archive available on quickfix site ? Actually This is exactly what I have done I had tried this before and had hard times doing it. I was not able to compile it at first time : What version of VS did you use and did the solution compile with no problems ? Didi it find the .h missing libraries ? Could you give more details please ? – Mehdi LAMRANI Feb 01 '12 at 12:10
  • I use VS2010 and if you follow the steps as i typed you wont have any problems building it. If you still have problems write me here and i`m willing to send you the DLLs if this will help you. – Jordan Feb 02 '12 at 12:07
  • Well since the time of the post I have used Versafix (see edit). And now Quickfix/N is available. Thanks anyway. – Mehdi LAMRANI Feb 02 '12 at 12:22
0

The header (.h) errors are due to it being unable to find the include folder. If you add that folder to the list of places that the project looks for header files it should build fine. I had this problem as well but, bing a c++ dev knew what it was instantaneously, I admit it would have taken me a while if I weren't so au fait with c++ and it's quirks

MD-Tech
  • 1,224
  • 1
  • 9
  • 15
  • It seems a bit more complicated than that : After adding the include Directory to VC++ Directories, I got 1000+ build errors. I'm just going nuts. As the project source is officially committed I suppose it is stable and that there is something somewhere I am missing – Mehdi LAMRANI Sep 21 '11 at 10:06
  • what kind of errors are the current ones? There are other directories you may need to add; sometimes VS doesn't play well with the QF project files – MD-Tech Sep 21 '11 at 11:39
  • See edit. I can't figure out if there are folders to add to include or if the problems lies elsewhere. – Mehdi LAMRANI Sep 21 '11 at 15:44
  • I had those errors when I started too, I'll need to think how I repaired them – MD-Tech Sep 21 '11 at 16:03
  • I think that if you add all of the folders with .h or .cpp files in into the projects it should build. Also ensure that build order is correct and dependencies are set – MD-Tech Sep 22 '11 at 10:47