Home Help Center

using --impl with visual studio plugin

halfhphalfhp Member Nick FellowsOrganization: AoptixProject: optical comms appliance ✭✭
Is this supported?

In the Ice Configuration dialog, I type --impl into the "Extra Compiler Options" text area. After I do that though, I get "GeneratedFileX.h already exists - will not overwrite." for each c++ header file that Ice typically generates. The existing files dont exist though, or at least get removed from the Visual Studio project by the Ice plugin and do not get recreated, causing the C++ compiler to complain about missing .h files. When I remove the flag though, the source is generated and everything compiles.

I found the below thread in which another user briefly mentions attempting to use the command and was told that it should work:


Can it be done?


  • halfhphalfhp Member Nick FellowsOrganization: AoptixProject: optical comms appliance ✭✭
    Quick update:

    The files do exist, they just get removed from the Solution. Dont know why the --impl flag causes the plugin to stop deleting the files but thats a different issue.

    Anyway, I got past the initial error by manually deleting the generated .h and .cpp files, but I dont see any extra information being spit out by the slice compiler. This is all I see:

    Slice compilation started: Project: AOMModuleIce
    cmd.exe /c ""C:\Ice-3.3.1-VC90\bin\slice2cpp.exe" --depend -I"C:\Ice-3.3.1-VC90\slice" -I"." --impl "i:\Work\Phase2\trunk\AOM\Common\ice\AOMDefsIf.ice""
    cmd.exe /c ""C:\Ice-3.3.1-VC90\bin\slice2cpp.exe" -I"C:\Ice-3.3.1-VC90\slice" -I"." --impl --output-dir "i:\Work\Phase2\trunk\AOM\Common\ice" "i:\Work\Phase2\trunk\AOM\Common\ice\AOMDefsIf.ice""
    cmd.exe /c ""C:\Ice-3.3.1-VC90\bin\slice2cpp.exe" --depend -I"C:\Ice-3.3.1-VC90\slice" -I"." --impl "i:\Work\Phase2\trunk\AOM\Common\ice\AOMModuleIf.ice""
    cmd.exe /c ""C:\Ice-3.3.1-VC90\bin\slice2cpp.exe" -I"C:\Ice-3.3.1-VC90\slice" -I"." --impl --output-dir "i:\Work\Phase2\trunk\AOM\Common\ice" "i:\Work\Phase2\trunk\AOM\Common\ice\AOMModuleIf.ice""
    cmd.exe /c ""C:\Ice-3.3.1-VC90\bin\slice2cpp.exe" --depend -I"C:\Ice-3.3.1-VC90\slice" -I"." --impl "i:\Work\Phase2\trunk\AOM\Common\ice\AOMTestModuleIf.ice""
    i:/Work/Phase2/trunk/AOM/Common/ice/AOMTestModuleIf.ice:29: warning: End of input with no newline, supplemented newline
    cmd.exe /c ""C:\Ice-3.3.1-VC90\bin\slice2cpp.exe" -I"C:\Ice-3.3.1-VC90\slice" -I"." --impl --output-dir "i:\Work\Phase2\trunk\AOM\Common\ice" "i:\Work\Phase2\trunk\AOM\Common\ice\AOMTestModuleIf.ice""
    cmd.exe /c ""C:\Ice-3.3.1-VC90\bin\slice2cpp.exe" --depend -I"C:\Ice-3.3.1-VC90\slice" -I"." --impl "i:\Work\Phase2\trunk\AOM\Common\ice\AOMCommandIf.ice""
    cmd.exe /c ""C:\Ice-3.3.1-VC90\bin\slice2cpp.exe" -I"C:\Ice-3.3.1-VC90\slice" -I"." --impl --output-dir "i:\Work\Phase2\trunk\AOM\Common\ice" "i:\Work\Phase2\trunk\AOM\Common\ice\AOMCommandIf.ice""
    cmd.exe /c ""C:\Ice-3.3.1-VC90\bin\slice2cpp.exe" --depend -I"C:\Ice-3.3.1-VC90\slice" -I"." --impl "i:\Work\Phase2\trunk\AOM\Common\ice\AOMEventIf.ice""
    cmd.exe /c ""C:\Ice-3.3.1-VC90\bin\slice2cpp.exe" -I"C:\Ice-3.3.1-VC90\slice" -I"." --impl --output-dir "i:\Work\Phase2\trunk\AOM\Common\ice" "i:\Work\Phase2\trunk\AOM\Common\ice\AOMEventIf.ice""
    Slice compilation succeeded: Project: AOMModuleIce
    ========== Build: 0 succeeded, 0 failed, 1 up-to-date, 0 skipped ==========
  • dwaynedwayne St. John's, NewfoundlandMember Dwayne BooneOrganization: ZeroC, Inc.Project: Internet Communications Engine
    The VS plugin was not really designed to be used with the --impl option. It would be better for you to run the command manually if you want to generate implementation classes.
Sign In or Register to comment.