×

Discussion Board

Results 1 to 15 of 15
  1. #1
    Registered User
    Join Date
    Jul 2006
    Posts
    16

    Carbide.C++ pro problems

    I have a little problem with linking my project.
    While this worked nicely under carbide.c++ express now it refuses to link with carbide.c++ pro.
    is there a new configuration that i am missing or is it a bug?

    here's the output of the linker
    'Invoking: GCCE Linker'
    arm-none-symbianelf-ld.exe --check-sections --no-undefined --no-allow-shlib-undefined -nostdlib -shared --entry _E32Startup -Tdata 0x400000 -Ttext 0x8000 --target1-abs --discard-locals --default-symver -u_E32Startup -L"C:\Symbian\CSL Arm Toolchain\arm-none-symbianelf\lib" -L"C:\Symbian\CSL Arm Toolchain\lib\gcc\arm-none-symbianelf\3.4.3" -soname "temp{000a0000}.exe" "C:\Symbian\S60_3rd_MR_3\EPOC32\RELEASE\ARMV5\UREL\eexe.lib" C:\Symbian\S60_3rd_MR_3\EPOC32\RELEASE\ARMV5\LIB\dfpaeabi.dso C:\Symbian\S60_3rd_MR_3\EPOC32\RELEASE\ARMV5\LIB\drtaeabi.dso C:\Symbian\S60_3rd_MR_3\EPOC32\RELEASE\ARMV5\LIB\dfprvct2_2.dso C:\Symbian\S60_3rd_MR_3\EPOC32\RELEASE\ARMV5\LIB\scppnwdl.dso C:\Symbian\S60_3rd_MR_3\EPOC32\RELEASE\ARMV5\LIB\drtrvct2_2.dso C:\Symbian\S60_3rd_MR_3\EPOC32\RELEASE\ARMV5\UREL\usrt2_2.lib -o "C:\Symbian\S60_3rd_MR_3\epoc32\release\GCCE\UDEB\temp.sym" -Map C:\Symbian\S60_3rd_MR_3\epoc32\release\GCCE\UDEB\\temp.exe.map ./src/active.o C:\Symbian\S60_3rd_MR_3\epoc32\release\ARMV5\LIB\euser.dso "C:\Symbian\S60_3rd_MR_3\Epoc32\release\armv5\lib\etel3rdparty.dso" "C:\Symbian\S60_3rd_MR_3\Epoc32\release\armv5\lib\flogger.dso" "C:\Symbian\S60_3rd_MR_3\Epoc32\release\armv5\lib\efsrv.dso" -lsupc++ -lgcc
    ./src/active.o: In function `__static_initialization_and_destruction_0':
    ../src/active.cpp:12: undefined reference to `__aeabi_atexit'
    ../src/active.cpp:206: undefined reference to `__dso_handle'

  2. #2
    Nokia Developer Expert
    Join Date
    Oct 2004
    Location
    Austin, TX USA
    Posts
    271

    Re: Carbide.C++ pro problems

    When you moved from Express to Pro, did you create a new workspace and re-import the MMP? Try that first; your workspace might be corrupted.

    Regards,

    Matt P.

  3. #3
    Regular Contributor
    Join Date
    May 2003
    Posts
    96

    Re: Carbide.C++ pro problems

    Hi,

    did you manage to solve the problem?
    I am still strugling with mine, which I believe it is related.
    (http://discussion.forum.nokia.com/fo...ad.php?t=91627)
    If you succeed please tell me how you did it.

    Mik

  4. #4
    Registered User
    Join Date
    Jul 2006
    Posts
    16

    Re: Carbide.C++ pro problems

    the problem seems to be with some libraries ,maybe with sensitive capabilties.
    my problem seems to be with FLOGGER.dso using the class RFileLogger.
    I think this lib i used, must have sensitive capabilities to work.
    I removed everything related to RFileLogger class ,removed the flogger.h header and everything linked nicely.

  5. #5
    Regular Contributor
    Join Date
    May 2003
    Posts
    96

    Re: Carbide.C++ pro problems

    Thanks for the hint.
    I am not using that library, but I will play by cutting other libraries and recompile it.
    To me it looks that all the libraries I am using are quite standard/common ones.
    Except that one library that I compiled myself as static library and included in the project.
    I wonder if by some reason that one could be the problematic one.
    The way I added it is in properties + libraries + static libraries and "library search path".

    Mik

  6. #6
    Super Contributor
    Join Date
    Dec 2005
    Location
    England,UK
    Posts
    1,600

    Re: Carbide.C++ pro problems

    Quote Originally Posted by kamenoss
    I have a little problem with linking my project.
    While this worked nicely under carbide.c++ express now it refuses to link with carbide.c++ pro.
    is there a new configuration that i am missing or is it a bug?
    ............
    ...........

    ../src/active.cpp:206: undefined reference to `__dso_handle'
    Hi,
    I had this problem when building using GCCE.
    First if you build a GCCE debug .sis file in Carbide Express workspace successfully and then use the same workspace in Carbide Professional it WILL fail.

    This is because extra files are needed one being `__dso_handle'. Same applies to Developer version. Basically Express is version 1.0 and Dev and Pro are version 1.1 (Eclipse base version 3.0=Express and version 3.1 = Pro)

    Mixing libraries is a recipe for disaster.

    If you need to rebuild an .MMP file, load the Express workspace, without an MMP file, into Pro version. Now select the project and use the "Update MMP" function. This creates a new version of the .MMP file.

    Now select and "close project"

    In Pro create a "S60 OS C++ Project",then give a name like "LinkTest",
    "S60 3.X GUI Application" now "Rebuild Project".
    Delete the LinkTest .mmp file and Now select the LinkTest and us the "Update MMP" function. This creates a new version of the .MMP file.

    Exit the Pro version and go directly into the new LinkTest.mmp with Notepad and check which extra libraries have been created for creating your .sis files and for the emulator. There are "#if !defined" sections which are used define linking list for the emulator ans the .sis debug functions.

    Finally after adding the "missing" lib references to your project .mmp file from the LinkTest.mmp files you should be able to build with professional.

    The clean method and more likely to work is simply correct your project .mmp file and import this to a new workspace for Professional version
    Good Luck,
    Jim

  7. #7
    Regular Contributor
    Join Date
    May 2003
    Posts
    96

    Re: Carbide.C++ pro problems

    Thanks for the hint.
    Unfortunately neither rebuilding from scratch a new project in Carbide Pro helped.
    As soon as I add the total number of files I need I get 'undefined reference to' errors.
    Funny that these errors are about symbols that work otherwise, meaning that when I have fewer files these symbols are into use and everything links nicely.

    Does anyone know if there is an actual limit on number of files that can be used?

    Despaired,
    Mik

  8. #8
    Super Contributor
    Join Date
    Dec 2005
    Location
    England,UK
    Posts
    1,600

    Re: Carbide.C++ pro problems

    Quote Originally Posted by mikfi
    Thanks for the hint.
    .
    .
    Funny that these errors are about symbols that work otherwise, meaning that when I have fewer files these symbols are into use and everything links nicely.
    .
    .

    Despaired,
    Mik
    Hi,
    I have had this problem whilst building bluetooth apps, I know which library files are needed and I go into project properties select C++ Build, in the Configuration Settings and select GCCE Linker then Libraries.

    In the right had pane I add the bluetooth libraries, the green plus icon.

    There does not seem any limit to the list,but there does seem limitations on the import program, and the silent error rate does not seem to help.

    If you can have the patience to read through the symbol map of a working project you will find the correct reference point and name of the library required for the symbol, but this is tedious as most of this tends to be addresses.

    The size of symbol table allocated in GCCE may be the problem. I wonder if this is dynamic and depends on the sizes of memory allocated in eclipse.ini or Carbide.ini.


    Jim

  9. #9
    Regular Contributor
    Join Date
    May 2003
    Posts
    96

    Re: Carbide.C++ pro problems

    Problem solved:
    I've moved to ARM compiler and everything compile & links nicely.

    Mik

  10. #10
    Registered User
    Join Date
    Apr 2006
    Posts
    34

    Re: Carbide.C++ pro problems

    Hi,

    The symbol __aeabi_atexit is defined in epoc32\release\ARMV5\UREL\ustr2_2.lib.

    Try including this...

    Regards,
    Giri.

  11. #11
    Regular Contributor
    Join Date
    Dec 2005
    Posts
    121

    Re: Carbide.C++ pro problems

    Hello!

    usrt2_2.lib is only located in

    C:\Symbian\9.1\S60_3rd_MR\Epoc32\release\armv5\udeb and urel

    I'm using GCCE compiler.

    Can I link with ARMV5 libs?

    GCCE lib format is compatible with ARMV5 format?

    Thank You!

  12. #12
    Nokia Developer Moderator
    Join Date
    Feb 2006
    Location
    Budapest, Hungary
    Posts
    28,567

    Re: Carbide.C++ pro problems

    Since you are the one who needs these symbols, it could be a viable approach that you try if it works, and even post here the result.

  13. #13
    Regular Contributor
    Join Date
    Dec 2005
    Posts
    121

    Re: Carbide.C++ pro problems

    I'm using GCCE compiler and I get this error:

    arm-none-symbianelf-ld: ..\..\..\..\..\..\..\..\Symbian\9.1\S60_3rd_MR\EPOC32\RELEASE\ARMV5\LIB\usrt2_2.dso: No such file: No such file or directory

    What can I do?

    Thank You

  14. #14
    Registered User
    Join Date
    Apr 2006
    Posts
    34

    Re: Carbide.C++ pro problems

    Hi,

    I have compiled one of my application using both carbide express and pro edition.And it is compiled without any errors in case of express, but giving the error "undefined reference to `__aeabi_atexit'" in pro.

    I compared both of the linker command

    Express Version:

    'Invoking: GCCE Linker'
    arm-none-symbianelf-ld.exe --check-sections --no-undefined --no-allow-shlib-undefined -nostdlib -shared --entry _E32Startup -Tdata 0x400000 -Ttext 0x8000 --target1-abs --discard-locals --default-symver -u_E32Startup -L"C:\Program Files\CSL Arm Toolchain\lib\gcc\arm-none-symbianelf\3.4.3" -L"C:\Program Files\CSL Arm Toolchain\arm-none-symbianelf\lib" -soname "TestExp{000a0000}.exe" -o "TestExp.sym" -Map D:\Symbian\9.1\S60_3rd\epoc32\release\GCCE\UREL\\TestExp.exe.map ./src/TestExp.o ./src/TestExpAppUi.o ./src/TestExpAppView.o ./src/TestExpApplication.o ./src/TestExpDocument.o "D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\UREL\eexe.lib" D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\dfpaeabi.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\drtaeabi.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\dfprvct2_2.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\scppnwdl.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\drtrvct2_2.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\UREL\usrt2_2.lib D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\euser.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\apparc.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\cone.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\eikcore.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\avkon.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\commonengine.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\efsrv.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\estor.dso -lsupc++ -lgcc
    'Finished building: TestExp.sym'

    Pro Version:

    'Invoking: GCCE Linker'
    arm-none-symbianelf-ld.exe --check-sections --no-undefined --no-allow-shlib-undefined -nostdlib -shared --entry _E32Startup -Tdata 0x400000 -Ttext 0x8000 --target1-abs --discard-locals --default-symver -u_E32Startup -L"C:\Program Files\CSL Arm Toolchain\arm-none-symbianelf\lib" -L"C:\Program Files\CSL Arm Toolchain\lib\gcc\arm-none-symbianelf\3.4.3" -soname "TestPro{000a0000}.exe" "D:\Symbian\9.1\S60_3rd\EPOC32\RELEASE\ARMV5\UREL\eexe.lib" D:\Symbian\9.1\S60_3rd\EPOC32\RELEASE\ARMV5\LIB\dfpaeabi.dso D:\Symbian\9.1\S60_3rd\EPOC32\RELEASE\ARMV5\LIB\drtaeabi.dso D:\Symbian\9.1\S60_3rd\EPOC32\RELEASE\ARMV5\LIB\dfprvct2_2.dso D:\Symbian\9.1\S60_3rd\EPOC32\RELEASE\ARMV5\LIB\scppnwdl.dso D:\Symbian\9.1\S60_3rd\EPOC32\RELEASE\ARMV5\LIB\drtrvct2_2.dso D:\Symbian\9.1\S60_3rd\EPOC32\RELEASE\ARMV5\UREL\usrt2_2.lib -o "D:\Symbian\9.1\S60_3rd\epoc32\release\GCCE\UREL\TestPro.sym" -Map D:\Symbian\9.1\S60_3rd\epoc32\release\GCCE\UREL\\TestPro.exe.map ./src/TestPro.o ./src/TestProAppUi.o ./src/TestProAppView.o ./src/TestProApplication.o ./src/TestProDocument.o D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\euser.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\apparc.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\cone.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\eikcore.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\avkon.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\commonengine.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\efsrv.dso D:\Symbian\9.1\S60_3rd\epoc32\release\ARMV5\LIB\estor.dso -lsupc++ -lgcc
    'Finished building: TestPro.sym'


    The difference is that the usrt2_2.lib is before the .o files in case of pro and after in case of Express edition.

    According to my experience in case of gcce linker

    If a "file.o" is referring to a symbol that is defined in a particular "library.lib" then "library.lib" should be specified after "file.o" in the command line. Order does matters(It is not the same case with .dso)

    That is why it is compiling in case of Express edition.

    AlfredoRU , see the linker command in Carbide, you can link against ustr2_2.lib .And try including it as a static library

  15. #15
    Nokia Developer Expert
    Join Date
    Oct 2004
    Location
    Austin, TX USA
    Posts
    271

    Re: Carbide.C++ pro problems

    Also note that there is a known problem sometimes with including more than one static library in Carbide 1.1. As a workaround, try including the static library in the "Libraries" section of the project's linker prerences instead of the "Static Libraries" section. As long as you are sure to specify the .lib extension it should work. (Otherwise it will assume .dso)

    This is only a temporary workaround; the problem will be fixed in v1.2 and you can include as many static libraries as you want then.

    Regards,

    Matt P.

Similar Threads

  1. Several problems with NMIT 4.1
    By jtalviva in forum Mobile Web Site Development
    Replies: 1
    Last Post: 2006-03-20, 13:00
  2. Several problems with NMIT 4.1 MMS
    By jtalviva in forum General Messaging
    Replies: 0
    Last Post: 2006-03-10, 11:03
  3. Several problems with NMIT 4.1
    By jtalviva in forum Mobile Java Tools & SDKs
    Replies: 0
    Last Post: 2006-03-10, 10:59
  4. D211 installation problems with XP pro
    By espengr in forum Multimodecards
    Replies: 3
    Last Post: 2004-02-05, 10:25
  5. Nokia 6210 to PC Suite Connection under Win XP PRO connection Problems
    By Nokia_Archived in forum PC Suite API and PC Connectivity SDK
    Replies: 3
    Last Post: 2004-01-07, 14:05

Posting Permissions

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