vincent at cojot.name
2023-Jun-06 18:59 UTC
[Samba] Trying to build Samba from source on RHEL 8
Hi, In case you might be interested in the src.rpms with the AD part (might save you some time), there are a few (maintained) sources around: http://samba.tranquil.it/centos8/samba-4.16.10-srcrpm http://vince.cojot.name/dist/samba/samba-4.16.10/RHEL8/SRPMS/ Due to the dependencies, if you want to keep your RHEL systems clean, it's actually some work if you want to avoid replacing system libs. My 2c, Vincent On Tue, 6 Jun 2023, Flynn, Garrett S RTX via samba wrote:> Hi, > > I'm trying to build Samba from source on a RHEL version 8 server. I installed all the necessary packages and untarred the source for Samba version 4.6.10. > In the past I have been able to successfully build and install Samba version 4.13.17 on a RHEL version 7 server with Python2. > Here I believe I am using Python3, but I cannot seem to get past the configure command: > > [root at v2ecsqapp09 samba-4.16.10]# ./configure > Setting top to : /usr/local/src/Samba/samba-4.16.10 > Setting out to : /usr/local/src/Samba/samba-4.16.10/bin > Checking for 'gcc' (C compiler) : /bin/gcc > Checking for program 'git' : not found > Checking for c flags '-MMD' : Traceback (most recent call last): > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Utils.py", line 831, in wrap > return cache[k] > KeyError: (<samba_waf18.ConfigurationContext object at 0x7f08a69dc160>,) > > During handling of the above exception, another exception occurred: > > Traceback (most recent call last): > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Utils.py", line 831, in wrap > return cache[k] > KeyError: (<samba_waf18.ConfigurationContext object at 0x7f08a69dc160>,) > > During handling of the above exception, another exception occurred: > > Traceback (most recent call last): > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Context.py", line 296, in recurse > user_function(self) > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Utils.py", line 833, in wrap > ret = fun(*k) > File "/usr/local/src/Samba/samba-4.16.10/buildtools/wafsamba/wscript", line 309, in configure > conf.load('gccdeps') > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Configure.py", line 271, in load > func(self) > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/extras/gccdeps.py", line 226, in configure > conf.check(fragment='int main() { return 0; }', features='c force_gccdeps', cflags=flags, msg='Checking for c flags %r' % ''.join(flags)) > File "./buildtools/wafsamba/samba_utils.py", line 66, in fun > return f(*k, **kw) > File "./buildtools/wafsamba/samba_waf18.py", line 177, in check > ret = self.run_build(*k, **kw) > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Configure.py", line 317, in fun > return f(*k, **kw) > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Configure.py", line 552, in run_build > h = Utils.h_list(buf) > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Utils.py", line 608, in h_list > return md5(repr(lst).encode()).digest() > TypeError: __init__() takes 1 positional argument but 2 were given > > During handling of the above exception, another exception occurred: > > Traceback (most recent call last): > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Context.py", line 296, in recurse > user_function(self) > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Utils.py", line 833, in wrap > ret = fun(*k) > File "/usr/local/src/Samba/samba-4.16.10/lib/replace/wscript", line 30, in configure > conf.RECURSE('buildtools/wafsamba') > File "./buildtools/wafsamba/samba_utils.py", line 66, in fun > return f(*k, **kw) > File "./buildtools/wafsamba/samba_utils.py", line 469, in RECURSE > return ctx.recurse(relpath) > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Context.py", line 298, in recurse > self.post_recurse(node) > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Configure.py", line 285, in post_recurse > self.hash = Utils.h_list((self.hash, node.read('rb'))) > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Utils.py", line 608, in h_list > return md5(repr(lst).encode()).digest() > TypeError: __init__() takes 1 positional argument but 2 were given > > During handling of the above exception, another exception occurred: > > Traceback (most recent call last): > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Context.py", line 296, in recurse > user_function(self) > File "/usr/local/src/Samba/samba-4.16.10/wscript", line 163, in configure > conf.RECURSE('lib/replace') > File "./buildtools/wafsamba/samba_utils.py", line 66, in fun > return f(*k, **kw) > File "./buildtools/wafsamba/samba_utils.py", line 469, in RECURSE > return ctx.recurse(relpath) > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Context.py", line 298, in recurse > self.post_recurse(node) > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Configure.py", line 285, in post_recurse > self.hash = Utils.h_list((self.hash, node.read('rb'))) > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Utils.py", line 608, in h_list > return md5(repr(lst).encode()).digest() > TypeError: __init__() takes 1 positional argument but 2 were given > > During handling of the above exception, another exception occurred: > > Traceback (most recent call last): > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Scripting.py", line 159, in waf_entry_point > run_commands() > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Scripting.py", line 255, in run_commands > ctx = run_command(cmd_name) > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Scripting.py", line 239, in run_command > ctx.execute() > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Configure.py", line 159, in execute > super(ConfigurationContext, self).execute() > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Context.py", line 214, in execute > self.recurse([os.path.dirname(g_module.root_path)]) > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Context.py", line 298, in recurse > self.post_recurse(node) > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Configure.py", line 285, in post_recurse > self.hash = Utils.h_list((self.hash, node.read('rb'))) > File "/usr/local/src/Samba/samba-4.16.10/third_party/waf/waflib/Utils.py", line 608, in h_list > return md5(repr(lst).encode()).digest() > TypeError: __init__() takes 1 positional argument but 2 were given > > I need to get this working to support a ClearCase environment and I would appreciate any advice. > > > Thanks, > Garrett > -- > To unsubscribe from this list go to the following URL and read the > instructions: https://lists.samba.org/mailman/options/samba >
Flynn, Garrett S RTX
2023-Jun-06 20:34 UTC
[Samba] [External] Re: Trying to build Samba from source on RHEL 8
Thank you all for your responses. Should Samba WAF be able to configure the source in preparation for the build? I have been building from samba.org source this way for years and it allows me to upgrade in similar fashion when there is a Security update. Is this a RHEL 8 or Python 3 nuance with the newer versions of Samba. Should I try to go with an earlier version of Samba and make sure I am using Python 2?