Hi,
First a little background, I am tring to use ezFCPlib from http://freenetproject.org/cgi-bin/twiki/view/Main/FCPTools. Which is C/C++, it creates a static library. I converted the header using h2inc and some code clean up on my part.

The problem is when I try to link my test application. The error message from link is "ezFCPlib_test.obj : error LNK2001: unresolved external symbol _fcpStartup@20".

Any help would be appreciated.
If you want the lib , inc and my test app just let me know.

jInuQ
Posted on 2002-05-09 22:14:08 by jInuQ
jInuQ ,
If you could it would give us a better understanding of what you may be doing... Just upload all files needed

Sliver
Posted on 2002-05-09 23:26:13 by Sliver
error LNK2001 this is from C++ stuff... If you are capuable of doing what youi did with h2inc go to masm32 and do the rest. Clean your machine "new install" leave that MS6.0 or what ever OUT....of a real Machine
Posted on 2002-05-09 23:43:44 by cmax
Attached is the the include file, my test app asm and the static built library. As to the VC++ causing the problem, it won't be as I call link and ml with a hardcoded path and I don't have the bin directory of VC++ in my path. Also I need VC++ to compile the static lib.
Posted on 2002-05-10 00:07:15 by jInuQ
Used my lib2inc program and it came up with intresting results...

Only these prototypes were found in the lib?



; ezFCPlib.lib PROTOTYPES
; ~~~~~~~~~~~~~~~~~~~~~~~

WSAGetLastError PROTO
WSAStartup PROTO :DWORD,:DWORD
closesocket PROTO :DWORD
connect PROTO :DWORD,:DWORD,:DWORD
gethostbyname PROTO :DWORD
htons PROTO :DWORD
recv PROTO :DWORD,:DWORD,:DWORD,:DWORD
send PROTO :DWORD,:DWORD,:DWORD,:DWORD
socket PROTO :DWORD,:DWORD,:DWORD



I think I have to do a little more research

Sliver
Posted on 2002-05-10 00:30:19 by Sliver
I got the same results. I also tried linking the .obj(from the ezFCPlib folder) with the link from the masm package and not the VC++ one. It didn't change anything. I also tried things like adding the /EXPORT swicth to the linker. Wouldn't export it. I tried linking my app with the /OPT:NOREF , /IMLIB:ezFCPlib.lib and it didn't make a difference.

jInuQ

"Take your life in your own hands, and what happens? A terrible thing: no one to blame." -Erica Jong
Posted on 2002-05-10 16:29:55 by jInuQ
I think this can help you:

http://www.asmcommunity.net/board/index.php?topic=2891 - How do you use Masm32 functions in Visual C++ programs

or maybe not :)
Posted on 2002-05-10 19:42:28 by pahan
I read that thread and tried some ideas it brought up ,but it didn't seem to help. Must of just missed something. Anywho I was just wondering if there could be a problem because the library uses __cdecl Calling?
Posted on 2002-05-11 15:29:41 by jInuQ
Well I tried rebuilding the library using both __fastcall and __stdcall. When done with __stdcall it exports all of the functions correctly in the lib. When done with __fastcall only part of the get exported. If I try to link with the __stdcall version I get can't find and some more libraries that are with VC++. If doesn't change anything when you try and link with the __fastcall version.
Posted on 2002-05-14 21:11:44 by jInuQ
I have nothing useful. but if that is not search the Board first *very seriously* ... What is

Best of Luck to you jInuQ
Posted on 2002-05-14 21:34:35 by cmax