Re: Build problem
Jan Kotas <[email protected]>
| Newsgroups | gmane.comp.windows.devel.dotnet.rotor |
|---|---|
| Message-ID | <DD12668590C9274E9B2226FDBD02B98807EC81F7@red-msg-08.redmond.corp.microsoft.com> |
The JIT and the EE communicate exclusively through ICorJitXXX
interfaces.
The build is not designed to allow direct calls between the JIT and the
EE.
Try to do the following:
In inc\corjit.h, add to the class ICorJitInfo:
virtual int foo(int x);
In vm\jitinteface.h, add to the class CEEJitInfo:
int foo(int x);
In vm\jitinterface.cpp, add:
int CEEJitInfo::foo(int x)
{ return x; }
In fjit\fjit.cpp, added in the method FJit::compileCEE_LDFLD.
jitInfo->foo(3);
-Jan
This posting is provided "AS IS" with no warranties, and confers no
rights.
-----Original Message-----
From: Discussion of the Rotor Shared Source CLI implementation
[mailto:[email protected]] On Behalf Of Yuan Yu
Sent: Tuesday, July 29, 2003 4:26 PM
To: [email protected]
Subject: [DOTNET-ROTOR] Build problem
I tried to add some code to src\vm, and call it in src\fjit, but
ran into linking problem. Here is what I did.
In inc\corjit.h, I added:
int foo(int x);
In vm\jitinterface.cpp, I added:
int foo(int x) { return x; }
In fjit\fjit.cpp, I added a call foo(3) in the method
FJit::compileCEE_LDFLD.
To build, I typed "build" in the src folder, but got the following
linking error:
Linking Executable - c:\yuan\proj\rotor\sscli\clr\bin\rotor_x86
\checked\mscorejt.dll for i386
fjit.obj : error LNK2019: unresolved external symbol "int
__stdcall foo(int)" (?foo@@YGHH@Z) referenced in function "private: enum
FJitResult __thiscall FJit::compileCEE_LDFLD(enum
opcode_t)" (?compileCEE_LDFLD@FJit@@AAE?
AW4FJitResult@@W4opcode_t@@@Z)
What was wrong with this? Help is greatly appreciated!
-Yuan