title: File System in Userspace (FUSE) compilation error
body: <pre><code>/*This is a simple try to create a File System in UserSpace 
  The pre_init function just initializes the filesystem */
  #include&lt;linux/fuse.h&gt;
  #include&lt;stdio.h&gt;
  #include&lt;stdlib.h&gt;
  #include&lt;fuse_lowlevel.h&gt;
  
  
  static void* pre_init(struct fuse_conn_info *conn, struct fuse_config *cfg){
          printf("[init] called\n");
          (void) conn;
          return NULL;
  }
  static struct fuse_operations opr = {
          .init = pre_init,
  };
  int main(int argc, char *argv[]){
          return fuse_main(argc, argv, &amp;opr, NULL);
  }
  </code></pre>
  
  <p>I am trying to compile the code using <strong>gcc sample.c -o sample `pkg-config fuse --cflags --libs`</strong> And I'm getting a whole lot of errors in the code as i have shown</p>
  
  <pre><code> sample.c:7:59: warning: ‘struct fuse_config’ declared inside parameter list will not be visible outside of this definition or declaration
   static void* pre_init(struct fuse_conn_info *conn, struct fuse_config *cfg){
                                                             ^~~~~~~~~~~
   sample.c:12:15: error: variable ‘opr’ has initializer but incomplete type
   static struct fuse_operations opr = {
                 ^~~~~~~~~~~~~~~
   sample.c:13:3: error: ‘struct fuse_operations’ has no member named ‘init’
    .init = pre_init,
     ^~~~
   sample.c:13:10: warning: excess elements in struct initializer
    .init = pre_init,
            ^~~~~~~~
   sample.c:13:10: note: (near initialization for ‘opr’)
   sample.c: In function ‘main’:
   sample.c:16:9: warning: implicit declaration of function ‘fuse_main’; did you mean ‘fuse_mount’? [-Wimplicit-function-declaration]
   return fuse_main(argc, argv, &amp;opr, NULL);
           ^~~~~~~~~
           fuse_mount
   sample.c: At top level:
   sample.c:12:31: error: storage size of ‘opr’ isn’t known
   static struct fuse_operations opr = {
                                 ^~~
  </code></pre>
  
  <p>I have also checked that fuse is installed properly as the header files have been included without any issues. But why am I not able to compile this simple code?    </p>