Here's a simple org file that's supposed to run some C code and print the 
result:

----------------------

* Sample C code

#+name: RHS.c
#+begin_src C :noweb yes :tangle RHS.c
  #include <stdio.h>
  <<main>>
#+end_src

#+name: main
#+begin_src C
  int main(int argc, char *argv[]) {
    int lst[argc-1];
    int i;
    for(i=1;i<argc;i++)
      lst[i-1] = atoi(argv[i]);
    for(i=1;i<argc;i++)
      printf("%d ", lst[i-1] + 1);
    printf("\n");
}
#+end_src

#+call: RHS.c[:cmdline 8 7 6]()

-------------------------

It works fine on my Mac, producing the result:

#+RESULTS: RHS.c[:cmdline 8 7 6]()
: 9 8 7

On my PC, however, running Windows Vista, the output is blank and there's a 
*Org-babel-error-output* buffer containing the message

Access is denied.
'c:/Users/stanton/AppData/Local/Temp/babel-11948MQP/C-bin-11948Nln' is not 
recognized as an internal or external command,
operable program or batch file.

There is a file called C-bin-11948Nln in that directory, but it has length 0, 
suggesting that something is going wrong in the compilation process. However, I 
can also see potential problems with the fact that the file name does not end 
in .exe, so the Windows shell is not easily going to recognize it as an 
executable anyway.

Does anyone have this running OK under Windows? Alternatively, how can I track 
down what's going wrong in more detail?

Thanks.

Richard Stanton

Reply via email to