×

Discussion Board

Results 1 to 9 of 9
  1. #1
    Registered User
    Join Date
    Jan 2006
    Posts
    41

    Error 1 file I/O fault when i upgraded to carbide express 1.1

    Hi all,

    I have just installed carbide express 1.1 and then imported a project i am working on into it. It compiled fine with version 1.0 but i get Error 1 file I/O fault when i try to compile it for GCCE.

    I know error 1 usually means that you have left out libraries in the properties for GCCE linker but they are all in there as they should be that i needed to add.

    If i compile the code for the emulator, it will compile fine.

    I read that there is a format change between 1.0 and 1.1 so I created a new project in 1.1 and then copied all my .cpp, .h, etc files into the project but i get the same problem.

    I did notice that there were some libraries that were not there by default that were there in 1.0 by default.

    For example:
    "${EPOC32_RELEASE_ROOT}\ARMV5\UREL\usrt2_2.lib"
    ${EPOC32_RELEASE_ROOT}\ARMV5\LIB\dfpaeabi.dso

    And i have also tried to put them in but i still get the same problem.

    I have used the update Symbian MMP file under project and it generates the following MMP file

    Code:
    // ILC.mmp
    
    /*& START_BINARY_BUILD &*/
    // NOTE: Content in this section is auto-generated, any changes are overwritten in the next update process.
    #if !defined(MARM)
    UID 0x00000000 0x20008928
    #endif
    CAPABILITY READUSERDATA
    TARGET ILC.exe
    TARGETTYPE exe
    VENDORID 0x00000000
    SECUREID 0x20008928
    /*& END_BINARY_BUILD &*/
    
    /*& START_SEARCH_PATHS &*/
    // NOTE: Content in this section is auto-generated, any changes are overwritten in the next update process.
    SYSTEMINCLUDE \epoc32\include \epoc32\include\variant
    USERINCLUDE ..\inc ..\data
    #if defined(MARM)
    SYSTEMINCLUDE \epoc32\include\oem
    #endif
    /*& END_SEARCH_PATHS &*/
    
    /*& START_PROJECT_CONTENT &*/
    // NOTE: Content in this section is auto-generated, any changes are overwritten in the next update process.
    SOURCEPATH ..\data
    START RESOURCE ILC.rss
    TARGETPATH resource\apps
    HEADER
    END
    START RESOURCE ILC_reg.rss
    TARGETPATH private\10003a3f\apps
    HEADER
    END
    SOURCEPATH ..\src
    SOURCE ILCTelephony.cpp ILCDocument.cpp ILCDlg.cpp ILCContainer.cpp
    SOURCE ILCApplication.cpp ILCAppView.cpp ILCAppUi.cpp
    /*& END_PROJECT_CONTENT &*/
    
    /*& START_LINKAGE_INFORMATION &*/
    // NOTE: Content in this section is auto-generated, any changes are overwritten in the next update process.
    LIBRARY euser.lib eikcoctl.lib eikdlg.lib charconv.lib eikctl.lib
    LIBRARY etel3rdparty.lib apparc.lib cone.lib eikcore.lib avkon.lib
    LIBRARY commonengine.lib efsrv.lib estor.lib
    #if defined(MARM)
    LIBRARY usrt2_2.lib drtrvct2_2.lib scppnwdl.lib dfprvct2_2.lib drtaeabi.lib
    LIBRARY dfpaeabi.lib eexe.lib
    #endif
    /*& END_LINKAGE_INFORMATION &*/
    The link there i get a red x for an error is in the .pkg file after i build the project. My .pkg file looks like this

    Code:
    ; Installation file for ILC application
    ;
    ; This is an auto-generated PKG file by Carbide.
    ; This file uses variables specific to Carbide builds that will not work
    ; on command-line builds. If you want to use this generated PKG file from the
    ; command-line tools you will need to modify the variables with the appropriate
    ; values: $(EPOCROOT), $(PLATFORM), $(TARGET)
    ;
    ;Language - standard language definitions
    &EN
    
    ; standard SIS file header
    #{"ILC"},(0x20008928),1,0,0
    
    ;Localised Vendor name
    %{"Vendor-EN"}
    
    ;Unique Vendor name
    :"Vendor"
    
    ;Supports Series 60 v 3.0
    [0x101F7961], 0, 0, 0, {"Series60ProductID"}
    
    ;Files to install
    ;You should change the source paths to match that of your environment
    ;<source> <destination>
    "$(EPOCROOT)Epoc32\release\$(PLATFORM)\$(TARGET)\ILC.exe"        -"!:\sys\bin\ILC.exe"
    "$(EPOCROOT)Epoc32\data\z\resource\apps\ILC.rsc"        -"!:\resource\apps\ILC.rsc"
    "$(EPOCROOT)Epoc32\data\z\private\10003a3f\apps\ILC_reg.rsc"    -"!:\private\10003a3f\import\apps\ILC_reg.rsc"
    "$(EPOCROOT)Epoc32\data\z\resource\apps\ILC.mif" -"!:\resource\apps\ILC.mif"
    
    ; Add any installation notes if applicable
    ;"ILC.txt"        -"!:\private\20008928\ILC.txt"
    
    ;required for application to be covered by backup/restore facility 
    "..\sis\backup_registration.xml"		-"!:\private\20008928\backup_registration.xml"
    And the error is on:

    "$(EPOCROOT)Epoc32\release\$(PLATFORM)\$(TARGET)\ILC.exe" -"!:\sys\bin\ILC.exe"

    I have also read about a possible problem with the .mif icon causing this so I generated an hello world project which compiles for all platforms. I took the mif details and icon it generated and brought that into the project and i still have the same issue.

    Can someone please point me in the direction of where this problem is?

    Best Regards,
    Seamus

  2. #2
    Registered User
    Join Date
    Jan 2006
    Posts
    41

    Re: Error 1 file I/O fault when i upgraded to carbide express 1.1

    Just an update,

    i have built on the command line. originally when i used bldmake bldfiles i was getting:

    WARNING: When building for ARMV5 platform Compiler RVCT2.2 or later is required.

    So from the forums I changed my bld.inf to only have the following under PRJ_PLATFORMS:

    WINSCW GCCE

    It did have WINSCW GCCE ARMV5

    After that change, bldmake bldfiles worked with no errors.

    So then i use abld build gcce urel and i get the following problem.

    Code:
      make -r  -f "\Symbian\9.1\S60_3rd_MR_4\EPOC32\BUILD\Symbian\Carbide\workspace\ILC\group\EXPORT.make" EXPORT VERBOSE=-s
    Nothing to do
      make -r  -f "\Symbian\9.1\S60_3rd_MR_4\EPOC32\BUILD\Symbian\Carbide\workspace\ILC\group\GCCE.make" MAKEFILE VERBOSE=-s
    make -s  -C \Symbian\Carbide\workspace\ILC\group -f "ICONS_SCALABLE_DC.MK" TO_ROOT=..\..\..\..\.. EPOCBLD=..\..\..\..\..\Symbian\9.1\S60_3rd_MR_4\EPOC32\BUILD\Symbian\Carbide\workspace\ILC\group\ICONS_SCALABLE_DC\GCCE TO_BLDINF=..\..\..\..\..\Symbian\Carbide\workspace\ILC\group PLATFORM=GCCE MAKMAKE
    perl -S makmake.pl  -D \Symbian\Carbide\workspace\ILC\group\ILC GCCE
    
    MMPFILE "\Symbian\Carbide\workspace\ILC\group\ILC.MMP"
    WARNING: \Symbian\Carbide\workspace\ILC\group\ILC.MMP(20) : SYSTEMINCLUDE path "\Symbian\9.1\S60_3rd_MR_4\EPOC32\include\oem\" not found
    
      make -r  -f "\Symbian\9.1\S60_3rd_MR_4\EPOC32\BUILD\Symbian\Carbide\workspace\ILC\group\GCCE.make" LIBRARY VERBOSE=-s
    make -s  -C \Symbian\Carbide\workspace\ILC\group -f "ICONS_SCALABLE_DC.MK" TO_ROOT=..\..\..\..\.. EPOCBLD=..\..\..\..\..\Symbian\9.1\S60_3rd_MR_4\EPOC32\BUILD\Symbian\Carbide\workspace\ILC\group\ICONS_SCALABLE_DC\GCCE TO_BLDINF=..\..\..\..\..\Symbian\Carbide\workspace\ILC\group PLATFORM=GCCE LIB
    make -s  -r -f "\Symbian\9.1\S60_3rd_MR_4\EPOC32\BUILD\Symbian\Carbide\workspace\ILC\group\ILC\GCCE\ILC.GCCE" LIBRARY
      make -r  -f "\Symbian\9.1\S60_3rd_MR_4\EPOC32\BUILD\Symbian\Carbide\workspace\ILC\group\GCCE.make" RESOURCE CFG=UREL VERBOSE=-s
    make -s  -C \Symbian\Carbide\workspace\ILC\group -f "ICONS_SCALABLE_DC.MK" TO_ROOT=..\..\..\..\.. EPOCBLD=..\..\..\..\..\Symbian\9.1\S60_3rd_MR_4\EPOC32\BUILD\Symbian\Carbide\workspace\ILC\group\ICONS_SCALABLE_DC\GCCE TO_BLDINF=..\..\..\..\..\Symbian\Carbide\workspace\ILC\group PLATFORM=GCCE CFG=UREL RESOURCE
    Checking: ..\gfx\qgn_menu_ILC.svg
    Choosing...
    Loading mif icons...
    Loading file: ..\gfx\qgn_menu_ILC.svg
    Writing mif: \Symbian\9.1\S60_3rd_MR_4\epoc32\data\z\resource\apps\ILC.mif
    make -s  -r -f "\Symbian\9.1\S60_3rd_MR_4\EPOC32\BUILD\Symbian\Carbide\workspace\ILC\group\ILC\GCCE\ILC.GCCE" RESOURCEUREL
      make -r  -f "\Symbian\9.1\S60_3rd_MR_4\EPOC32\BUILD\Symbian\Carbide\workspace\ILC\group\GCCE.make" TARGET CFG=UREL VERBOSE=-s
    make -s  -C \Symbian\Carbide\workspace\ILC\group -f "ICONS_SCALABLE_DC.MK" TO_ROOT=..\..\..\..\.. EPOCBLD=..\..\..\..\..\Symbian\9.1\S60_3rd_MR_4\EPOC32\BUILD\Symbian\Carbide\workspace\ILC\group\ICONS_SCALABLE_DC\GCCE TO_BLDINF=..\..\..\..\..\Symbian\Carbide\workspace\ILC\group PLATFORM=GCCE CFG=UREL BLD
    make -s  -r -f "\Symbian\9.1\S60_3rd_MR_4\EPOC32\BUILD\Symbian\Carbide\workspace\ILC\group\ILC\GCCE\ILC.GCCE" UREL
    arm-none-symbianelf-ld: ..\..\..\..\9.1\S60_3rd_MR_4\EPOC32\RELEASE\ARMV5\LIB\usrt2_2.dso: No such file: No such file or directory
    make[1]: *** [..\..\..\..\9.1\S60_3rd_MR_4\EPOC32\RELEASE\GCCE\UREL\ILC.exe] Error 1
    make: *** [TARGETILC] Error 2
      make -r  -f "\Symbian\9.1\S60_3rd_MR_4\EPOC32\BUILD\Symbian\Carbide\workspace\ILC\group\GCCE.make" FINAL CFG=UREL VERBOSE=-s
    make -s  -C \Symbian\Carbide\workspace\ILC\group -f "ICONS_SCALABLE_DC.MK" TO_ROOT=..\..\..\..\.. EPOCBLD=..\..\..\..\..\Symbian\9.1\S60_3rd_MR_4\EPOC32\BUILD\Symbian\Carbide\workspace\ILC\group\ICONS_SCALABLE_DC\GCCE TO_BLDINF=..\..\..\..\..\Symbian\Carbide\workspace\ILC\group PLATFORM=GCCE CFG=UREL FINAL
    So can anyone tell me how to fix the line make: *** [TARGETILC] Error 2

    FYI

    The line that mentions usrt2_2.dso. I added this .dso and others to match up from when i had carbide 1.0 but i have since removed them as they are no longer required from what i can make out.

    The following are the libraries that i have in my mmp file:

    LIBRARY eikcoctl.lib eikdlg.lib charconv.lib eikctl.lib etel3rdparty.lib
    #endif
    LIBRARY euser.lib apparc.lib cone.lib eikcore.lib avkon.lib commonengine.lib
    LIBRARY efsrv.lib estor.lib

    So any ideas on what to try next please?

    Seamus

  3. #3
    Registered User
    Join Date
    Jan 2006
    Posts
    41

    Angry Re: Error 1 file I/O fault when i upgraded to carbide express 1.1

    ok so iv figured out that the problem is that

    "$(EPOCROOT)Epoc32\data\z\resource\apps\ILC.rsc" -"!:\resource\apps\ILC.rsc"

    is not being created. I cannot find out why this is. If i create a new helloworld project, its .rsc files are created for any platform.

    Perl is running fine as suggested in other forums that this may be the cause.

    Can anyone please tell me why my resource files are not being created for this project please?

    I have even suggested changing the order of my .rss file to:

    #include <eikon.rh>
    #include <eikon.rsg>
    #include <avkon.rh>
    #include <avkon.rsg>
    #include <appinfo.rh>
    #include <avkon.hrh>
    #include <avkon.mbg>
    #include "ILC.hrh"
    #include "ILC.rls"

    as apparently if avkon.rsg is declarded before avkon.rh as it was. then this would create a problem.

    Any ideas please?

  4. #4
    Registered User
    Join Date
    Jan 2006
    Posts
    41

    Re: Error 1 file I/O fault when i upgraded to carbide express 1.1

    another update......

    I have found that the ILC.rsc & ILC_reg.rsc were being created but were being created in:

    C:\Symbian\9.1\S60_3rd_MR_4\Epoc32\Data\z

    And not

    "$(EPOCROOT)Epoc32\data\z\resource\apps\ILC.rsc"
    "$(EPOCROOT)Epoc32\data\z\private\10003a3f\apps\ILC_reg.rsc"

    EPOCROOT is set as: C:\Symbian\9.1\S60_3rd_MR_4

    Even if i copy and paste these into the correct directory, and then rebuild. The files that i have copied into Epoc32\data\z\resource\apps\ & Epoc32\data\z\private\10003a3f\apps\ get deleted from both directories.

    Now id i alter my .pkg file to the following it will create the sis file fine:

    Code:
    "$(EPOCROOT)Epoc32\data\z\ILC.rsc"        -"!:\resource\apps\ILC.rsc"
    "$(EPOCROOT)Epoc32\data\z\ILC_reg.rsc"    -"!:\private\10003a3f\import\apps\ILC_reg.rsc"
    But thats not the point now.

    Can someone tell me why it will not put the resource files in the correct directory.

    I have also been looking at my .mmp file.

    Code:
    // ILC.mmp
    
    /*& START_BINARY_BUILD &*/
    // NOTE: Content in this section is auto-generated, any changes are overwritten in the next update process.
    CAPABILITY READUSERDATA
    TARGET ILC.exe
    TARGETTYPE exe
    VENDORID 0x00000000
    SECUREID 0x20008928
    #if !defined(MARM)
    UID 0x00000000 0x20008928
    #endif
    /*& END_BINARY_BUILD &*/
    
    /*& START_SEARCH_PATHS &*/
    // NOTE: Content in this section is auto-generated, any changes are overwritten in the next update process.
    SYSTEMINCLUDE \epoc32\include \epoc32\include\variant \epoc32\include\oem
    USERINCLUDE ..\inc ..\data
    /*& END_SEARCH_PATHS &*/
    
    /*& START_PROJECT_CONTENT &*/
    // NOTE: Content in this section is auto-generated, any changes are overwritten in the next update process.
    SOURCEPATH ..\data
    START RESOURCE ILC.rss
    HEADER
    END
    START RESOURCE ILC_reg.rss
    HEADER
    END
    SOURCEPATH ..\src
    SOURCE ILCTelephony.cpp ILCDocument.cpp ILCDlg.cpp ILCContainer.cpp
    SOURCE ILCApplication.cpp ILCAppView.cpp ILCAppUi.cpp
    /*& END_PROJECT_CONTENT &*/
    
    /*& START_LINKAGE_INFORMATION &*/
    // NOTE: Content in this section is auto-generated, any changes are overwritten in the next update process.
    LIBRARY euser.lib apparc.lib cone.lib eikcore.lib avkon.lib commonengine.lib
    LIBRARY efsrv.lib estor.lib
    /*& END_LINKAGE_INFORMATION &*/
    Above is the mmp file when it is auto generated. You can see that for:

    START RESOURCE ILC.rss
    HEADER
    END
    START RESOURCE ILC_reg.rss
    HEADER
    END

    There is no target path defined, as opposed to if i created an helloworld project in 1.1, the mmp file has the following:

    START RESOURCE helloworld.rss
    HEADER
    TARGETPATH resource\apps
    END //RESOURCE

    START RESOURCE helloworld_reg.rss
    TARGETPATH \private\10003a3f\apps
    END //RESOURCE

    If i manually change the mmp file to have target paths, it will remove them when i auto update the mmp file. And also before i auto update and try to rebuild, it will not see that i have updated the target path.

    I used to work with codewarrior and i was used to dealing with the .mmp file in the group folder but then carbide express 1.0 had no such folder or file and now 1.1 does have this again.

    Can someone please tell me where to change the target path in 1.1 so that it will be reflected in the mmp file and hence the project when i rebuild. I could not find it under the properties for the project.

    I presume when i know this, this problem will be fully fixed for me

    Thanks
    Seamus

  5. #5
    Regular Contributor
    Join Date
    Sep 2006
    Location
    Australia, NSW
    Posts
    200

    Re: Error 1 file I/O fault when i upgraded to carbide express 1.1

    I have run into the very same problem recently and after 5 hours of fiddling I couldn't not be bothered figuring out why it happens (seemed to be the issue of migrating from 1.0 to 1.1). What I've done is I cleaned the workspace (removed .metadata folder as it stores Eclipse plugin preferences) created a new project manually and moved all files and settings by hand.

  6. #6
    Registered User
    Join Date
    Jan 2006
    Posts
    41

    Re: Error 1 file I/O fault when i upgraded to carbide express 1.1

    Hi sysctl,

    Fair play. i had switched to a different Workspace than the one i was using but the new one had once being used as a workspace before as well and i had not thought of deleting the metadata file :(

    something to note for future for updates :)

    Seamus

  7. #7
    Registered User
    Join Date
    Jul 2008
    Posts
    2

    Angry ME THE SAME PROBLEM.

    EVEN FOR HELLOWORLD.
    file I/O fault.
    PHP Code:
    "$(EPOCROOT)Epoc32\release\$(PLATFORM)\$(TARGET)\helloworld_0xE60906CC.exe"        -"!:\sys\bin\helloworld_0xE60906CC.exe" 
    I m facing the same problem, and this is not the 1st time this happens.

    IS THIS PROBLEM SO HARD THAT NONE OF THE NOKIA'S ENGINEER AND PROFESSIONALS CAN ANSWER???
    OR
    SIMPLY JUST 'CUZ WE DEVELOPERS WHO USE THE CARBIDE C++ ARE TOO STUBID, AND ENGINEER AND PROFESSIONALS ARE NOT REALLY CARE OF OUR QUESTIONS?

  8. #8
    Registered User
    Join Date
    Jul 2008
    Posts
    2

    Thumbs down Really pissed off!!

    the last reply is Jan 2006.
    and not even one real solution the this problem appears on any of the carbide c++ open documents.

    WHAT IS THIS FORUM ACTUALLY FOR?????

  9. #9
    Nokia Developer Moderator
    Join Date
    Feb 2006
    Location
    Oslo, Norway
    Posts
    28,689

    Re: Really pissed off!!

    Hello Joseph, welcome to the Forum :-)

    This is not the smartest possible way of introducing yourself to the community.
    IS THIS PROBLEM SO HARD THAT NONE OF THE NOKIA'S ENGINEER AND PROFESSIONALS CAN ANSWER???
    Anyone can answer, just ask. Unfortunately you can not even read:
    - the last post is from 2007 and not 2006
    - the last post is made by the thread initiator (Seamus), and he confirms that his issue is solved.

    It is almost 100%, that you do not have the same issue, the most recent version of Carbide is 1.3.

    SIMPLY JUST 'CUZ WE DEVELOPERS WHO USE THE CARBIDE C++ ARE TOO STUBID, AND ENGINEER AND PROFESSIONALS ARE NOT REALLY CARE OF OUR QUESTIONS?
    What kind of 'WE' are you talking about? Yesterday you did not even exist.

Similar Threads

  1. Carbide 1.1 C++ : mbg file problem
    By taycho1 in forum Carbide.c++ IDE and plug-ins (Closed)
    Replies: 5
    Last Post: 2008-07-21, 13:02
  2. Carbide bug: Aif Compiler: File or path name too long
    By alexbirkett in forum Carbide.c++ IDE and plug-ins (Closed)
    Replies: 2
    Last Post: 2008-05-10, 18:30
  3. Getting started using Carbide c++ 1.1 -> how to import the sample code
    By terchris in forum Carbide.c++ IDE and plug-ins (Closed)
    Replies: 3
    Last Post: 2007-11-20, 09:12
  4. Tips on using NDS 1.1
    By mitts in forum Symbian Tools & SDKs
    Replies: 7
    Last Post: 2006-01-18, 16:07

Posting Permissions

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