I am not sure if I should ask these questions here or on the developers mail list, but will start here and will move this over to the other mail list if told that it would be more appropriate. (I don't want to bother the developers with beginner's questions) I am attempting to build Bacula (a backup server) from source code and in order to do so, the build configuration for Bacula requires that I give it the path to the source code files for mysql. (or in the case of openSuSE mariadb) I figured out that I could use zypper si mariadb to fetch the source code from the openSuSE repositories. (for some reason YaST is unable to fetch source code packages, which I posted and earlier query about, so I am not sure if this was the proper way to fetch and install the source code for a package, please read on before responding to this comment.) This installed a gzipped tar file for the source directories under /usr/src/packages/SOURCES and I expanded this tarball in that same location - /usr/src/packages/SOURCES/mariadb-10.0.31 I then configured the build configuration file for Bacula to use that path for the mysql source files and ran into a snag when I tried to build Bacula. When it started to compile stuff from mysql this is what happened - ... previous output from make deleted... Compiling mysql.c In file included from mysql.c:39:0: /usr/src/packages/SOURCES/mariadb-10.0.31/include/mysql.h:72:27: fatal error: mysql_version.h: No such file or directory #include "mysql_version.h" ^ compilation terminated. Makefile:198: recipe for target 'mysql.o' failed make[1]: *** [mysql.o] Error 1 make[1]: Leaving directory '/home/marc/bacula/bacula-7.4.7/src/cats' ====== Error in /home/marc/bacula/bacula-7.4.7/src/cats ====== Makefile:148: recipe for target 'all' failed make: *** [all] Error 1 .... When I examined the include directory to see if mysql_version.h is there I found that it sort of is, there is a mysql_version.h.in It has been awhile since I have done C/C++ programming but I vaguely recall that a .h.in file is some sort of trick that a make file uses to dynamically expand these files into a proper .h file, depending upon environmental conditions. So my first question is this, am I going to have to build mariadb/mysql first in order to get the proper source files set up for my own system? (or would YaST, if it was working properly, have fetched the source files in the proper configuration for my system? I suspect not....) If I have to build mariadb as well, then this rabbit hole is starting to get really deep! I tried to read/grok the documentation I found at - https://www.suse.com/documentation/opensuse103/opensuse103_reference/data/se... and https://www.suse.com/documentation/opensuse103/opensuse103_reference/data/se... about how to build from source code, but I think the author was targeting an audience that has the same deep understanding of the build processes that he has. I admit that does not include me! I don't understand, for example what the "various stages of a build process" are, what the difference is between rpmbuild and build, what a "package tree" is and how to set one up on an NFS mount or on a DVD. Please bear with me, I am really struggling here, not having done this before, and having a lot of difficulties trying to Google and track down what all this means. Nor are the man pages enlightening me. So can someone tell me, in elegant simple to understand steps, what I have to do exactly in order to build the mariadb/mysql source code, not into executable binaries necessarily, but into the source code that Bacula will be happy to work with? (FYI I am using Leap42.3 x64) Thanks in advance as always... Marc... -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org