×

Discussion Board

Results 1 to 4 of 4
  1. #1
    Registered User
    Join Date
    Dec 2005
    Posts
    5

    S60 + Visual Studio .Net 2003 Link error, but command line fine

    I've Googled this one for a while, but no real luck, closet I got was:
    http://forum.newlc.com/index.php?topic=1785.0

    Anyway, I have a simple S60 application that compiles and runs fine if I use the command line. But if I try in Visual Studio .Net 2003 (which I used to create the project initlially) then I get the following error:

    MortgageCalc fatal error LNK1120: 1 unresolved externals

    I get this error if I try to build the workspace, or the project either way.

    This error also shows, but it seems to be linked to the first problem, and is far too cryptic for me to understand.

    MortgageCalc error LNK2019: unresolved external symbol "public: __thiscall CSimpleExDialog::CSimpleExDialog(class TDes16 &,class TRgb &)" (??0CSimpleExDialog@@QAE@AAVTDes16@@AAVTRgb@@@Z) referenced in function "private: virtual void __thiscall CMortgageCalcAppUi::HandleCommandL(int)" (?HandleCommandL@CMortgageCalcAppUi@@EAEXH@Z)


    It’s obviously a setting in VS.net, since the command line runs and compiles it fine.

    Many thanks.

    Jack

    PS: Just to add: Visual Studio .net prompts me to reload the *.mmp file in Visual Studio .net, after I have successfully run my program via command line. This (I think) means that when I use the command line, it changes the mmp file correctly, and builds the program (all good). But Visual Studio .net, changes the *.mmp file incorrectly, and then tries to build the program.

    If I say 'yes' to reloading the *.mmp file (having run my prog via command line), then Visual Studio .net does the following to a few of the LIBRARY entries.

    // [-] LIBRAY theLibrary.lib

    But it doesn't do this to all of them. What I can't understand, is why is Visual Studio .net commenting out essential LIBRARY entires in the *.mmp file, then attempting a build, and then complaining that it can't link to the library files during compilation?

    Because the command line doesn't do this:

    // [-] LIBRAY theLibrary.lib

    It works fine.
    Last edited by redmeat; 2005-12-21 at 19:45. Reason: Adding more info

  2. #2
    Super Contributor
    Join Date
    Sep 2004
    Posts
    1,048

    Re: S60 + Visual Studio .Net 2003 Link error, but command line fine

    Hi,

    You don't provide information on what software you have installed, but it seems obvious that you have either NDS 1.1 or Carbide.vs 2.0 installed on your system. These provide ease of use features when used according to VS "standard operating procedures". To add a library to your project when using NDS/Carbide, pls see tip #2 in http://discussion.forum.nokia.com/fo...ad.php?t=65445 . If the library has not been defined in "Visual Studio" fashion, NDS/Carbide will remove it also from the .mmp file to keep the WINS(CW) and phone target builds in synch.

    I also suggest that you dig out the Getting started guide for Carbide/NDS (found in the /doc dir under the prouduct's home directory) and check that out.

  3. #3
    Registered User
    Join Date
    Dec 2005
    Posts
    5

    Re: S60 + Visual Studio .Net 2003 Link error, but command line fine

    Hi mitts,

    The link you gave was most useful, and has allowed me to compile and run using VS .net and the command line. It's strange that VS .net still comments out some of the LIBRARY entries, even though in the tutorial I'm following, it reminds you to place the new LIBRARY entries in your *.mmp file. Anyway, that really is irrelevant to my point now it’s all working I guess.

    Thanks very much for your help.
    Last edited by redmeat; 2005-12-22 at 10:01. Reason: Typo

  4. #4
    Super Contributor
    Join Date
    Sep 2004
    Posts
    1,048

    Re: S60 + Visual Studio .Net 2003 Link error, but command line fine

    Hi,

    As I said, the tutorial that you were using is not based on the use of Carbide/NDS and will therefore not provide correct steps for working with NDS/Carbide. It is not VS that processes the .mmp file, it is the build extensions provided by NDS/Carbide, Visual Studio by itself has no notion of an .mmp file.

Similar Threads

  1. S60 + Visual Studio .Net 2003 Link error, but command line fine.
    By redmeat in forum Mobile Java Tools & SDKs
    Replies: 2
    Last Post: 2005-12-21, 19:38
  2. Visual Studio .net 2003 & s60_2nd_fp2 building error!!!
    By liu7788414 in forum Symbian Tools & SDKs
    Replies: 4
    Last Post: 2005-12-02, 02:02
  3. Replies: 1
    Last Post: 2004-08-02, 08:36
  4. I cannot simulate Nokia in Visual Studio .NET 2003!
    By duc_lotus in forum General Development Questions
    Replies: 0
    Last Post: 2004-01-27, 04:51

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
×