Original Message:
Sent: Thu March 14, 2024 02:25 PM
From: Mi Wang
Subject: Installing llvmlite package on AIX 7.2
Hi Ranjit,
Package "clang+llvm-16.0.4-powerpc64-ibm-aix-7.2.tar" on LLVM official is specifically created for AIX 7.2 running on 64 bits PowerPC structure and should have all LVM modules like lvmconfig.exe. I am wondering if you can make use of that package to speed up the adoption of llvmlite to AIX?
Thanks
Mi
------------------------------
Mi Wang
Original Message:
Sent: Mon February 05, 2024 02:17 AM
From: Ranjit Ranjan
Subject: Installing llvmlite package on AIX 7.2
Hi Wang,
I am looking into it and trying to build llvmlite.
I will provide further update once I get more clarity .
Thanks
Ranjit
------------------------------
Ranjit Ranjan
Original Message:
Sent: Fri January 19, 2024 05:06 PM
From: Mi Wang
Subject: Installing llvmlite package on AIX 7.2
Hi Ranjit,
I have following questions:
- If we install "clang+llvm-16.0.4-powerpc64-ibm-aix-7.2.tar" from LLVM official site, will it create the llvm-config file?
- We have install llvm-installer and it created following under /opt/freeware/lib/python3.9/site-package. Will this help the installation of llvmlite?
llvm_installer:
total 248
-rw-r--r-- 1 root system 0 Sep 28 10:29 py.typed
-rw-r--r-- 1 root system 11455 Sep 28 10:29 __init__.py
-rw-r--r-- 1 root system 5477 Sep 28 10:29 __main__.py
-rw-r--r-- 1 root system 104786 Sep 28 10:29 release_tags.json
drwxr-xr-x 2 root system 256 Sep 28 10:29 __pycache__
llvm_installer-1.3.10.dist-info:
total 72
-rw-r--r-- 1 root system 15 Sep 28 10:29 top_level.txt
-rw-r--r-- 1 root system 64 Sep 28 10:29 entry_points.txt
-rw-r--r-- 1 root system 92 Sep 28 10:29 WHEEL
-rw-r--r-- 1 root system 1274 Sep 28 10:29 METADATA
-rw-r--r-- 1 root system 11358 Sep 28 10:29 LICENSE
-rw-r--r-- 1 root system 4 Sep 28 10:29 INSTALLER
-rw-r--r-- 1 root system 0 Sep 28 10:29 REQUESTED
-rw-r--r-- 1 root system 1259 Sep 28 10:29 RECORD
Thanks
Mi
------------------------------
Mi Wang
Original Message:
Sent: Fri January 19, 2024 07:38 AM
From: Ranjit Ranjan
Subject: Installing llvmlite package on AIX 7.2
Hi Wang,
The above error (unsupported platform: 'aix') can be fixed using below change.
But I guess , you will encounter next issue mentioned in previous discussion https://community.ibm.com/community/user/power/discussion/install-of-shade-package-llvmlite-package-llvmlite-package-aix-platfrom-error
---
# diff -u ffi/build.py.orig ffi/build.py
--- ffi/build.py.orig 2024-01-19 06:29:33.649498742 -0600
+++ ffi/build.py 2024-01-19 06:30:11.517616589 -0600
@@ -213,7 +213,7 @@
def main():
if sys.platform == 'win32':
main_windows()
- elif sys.platform.startswith(('linux', 'gnu')):
+ elif sys.platform.startswith(('linux', 'gnu', 'aix')):
# Linux and GNU-based OSes (e.g. GNU/Hurd), using the same Makefile
main_posix('linux', '.so')
elif sys.platform.startswith(('freebsd','openbsd')):
Thanks
Ranjit
------------------------------
Ranjit Ranjan
Original Message:
Sent: Thu January 18, 2024 05:50 PM
From: Mi Wang
Subject: Installing llvmlite package on AIX 7.2
Hi Ranjit,
I am trying to compile llvmlite package on AIX 7.2: I untar'ed it to a folder and run the following to install. I got following error (unsupported platform: 'aix'). Can you please help?
export CC="gcc -maix64 -pthread"
export CXX="g++ -maix64 -pthread"
export OBJECT_MODE=64
run 'python3 -m pip install . --root / -v'
Thanks
Mi
Using pip 22.2.2 from /opt/freeware/lib/python3.9/site-packages/pip (python 3.9)
Processing /usr/opt/sas/python3a/llvmlite-0.41.1
Running command python setup.py egg_info
running egg_info
creating /tmp/pip-pip-egg-info-zz23t0jx/llvmlite.egg-info
writing /tmp/pip-pip-egg-info-zz23t0jx/llvmlite.egg-info/PKG-INFO
writing dependency_links to /tmp/pip-pip-egg-info-zz23t0jx/llvmlite.egg-info/dependency_links.txt
writing top-level names to /tmp/pip-pip-egg-info-zz23t0jx/llvmlite.egg-info/top_level.txt
writing manifest file '/tmp/pip-pip-egg-info-zz23t0jx/llvmlite.egg-info/SOURCES.txt'
reading manifest file '/tmp/pip-pip-egg-info-zz23t0jx/llvmlite.egg-info/SOURCES.txt'
adding license file 'LICENSE'
writing manifest file '/tmp/pip-pip-egg-info-zz23t0jx/llvmlite.egg-info/SOURCES.txt'
Preparing metadata (setup.py) ... done
Building wheels for collected packages: llvmlite
Running command python setup.py bdist_wheel
running bdist_wheel
/opt/freeware/bin/python3 /usr/opt/sas/python3a/llvmlite-0.41.1/ffi/build.py
Traceback (most recent call last):
File "/usr/opt/sas/python3a/llvmlite-0.41.1/ffi/build.py", line 228, in <module>
main()
File "/usr/opt/sas/python3a/llvmlite-0.41.1/ffi/build.py", line 224, in main
raise RuntimeError("unsupported platform: %r" % (sys.platform,))
RuntimeError: unsupported platform: 'aix'
error: command '/opt/freeware/bin/python3' failed with exit code 1
error: subprocess-exited-with-error
× python setup.py bdist_wheel did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.
full command: /opt/freeware/bin/python3 -u -c '
exec(compile('"'"''"'"''"'"'
# This is <pip-setuptools-caller> -- a caller that pip uses to run setup.py
#
# - It imports setuptools before invoking setup.py, to enable projects that directly
# import from `distutils.core` to work with newer packaging standards.
# - It provides a clear error message when setuptools is not installed.
# - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so
# setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning:
# manifest_maker: standard file '"'"'-c'"'"' not found".
# - It generates a shim setup.py, for handling setup.cfg-only projects.
import os, sys, tokenize
try:
import setuptools
except ImportError as error:
print(
"ERROR: Can not execute `setup.py` since setuptools is not available in "
"the build environment.",
file=sys.stderr,
)
sys.exit(1)
__file__ = %r
sys.argv[0] = __file__
if os.path.exists(__file__):
filename = __file__
with tokenize.open(__file__) as f:
setup_py_code = f.read()
else:
filename = "<auto-generated setuptools caller>"
setup_py_code = "from setuptools import setup; setup()"
exec(compile(setup_py_code, filename, "exec"))
'"'"''"'"''"'"' % ('"'"'/usr/opt/sas/python3a/llvmlite-0.41.1/setup.py'"'"',), "<pip-setuptools-caller>", "exec"))' bdist_wheel -d /tmp/pip-wheel-gtvrf49_
cwd: /usr/opt/sas/python3a/llvmlite-0.41.1/
Building wheel for llvmlite (setup.py) ... error
ERROR: Failed building wheel for llvmlite
Running setup.py clean for llvmlite
Running command python setup.py clean
running clean
'build/lib.aix-7205-2345-64-cpython-39' does not exist -- can't clean it
'build/bdist.aix-7205-2345-64' does not exist -- can't clean it
'build/scripts-3.9' does not exist -- can't clean it
removing '/usr/opt/sas/python3a/llvmlite-0.41.1/llvmlite/__pycache__' (and everything under it)
removing '/usr/opt/sas/python3a/llvmlite-0.41.1/__pycache__' (and everything under it)
Failed to build llvmlite
Installing collected packages: llvmlite
Running command Running setup.py install for llvmlite
running install
/opt/freeware/lib/python3.9/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
warnings.warn(
running build
got version from file /usr/opt/sas/python3a/llvmlite-0.41.1/llvmlite/_version.py {'version': '0.41.1', 'full': '42db9b74c8e8ca012cb4394cbf941f2f9e4ae12b'}
running build_ext
/opt/freeware/bin/python3 /usr/opt/sas/python3a/llvmlite-0.41.1/ffi/build.py
Traceback (most recent call last):
File "/usr/opt/sas/python3a/llvmlite-0.41.1/ffi/build.py", line 228, in <module>
main()
File "/usr/opt/sas/python3a/llvmlite-0.41.1/ffi/build.py", line 224, in main
raise RuntimeError("unsupported platform: %r" % (sys.platform,))
RuntimeError: unsupported platform: 'aix'
error: command '/opt/freeware/bin/python3' failed with exit code 1
error: subprocess-exited-with-error
× Running setup.py install for llvmlite did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.
full command: /opt/freeware/bin/python3 -u -c '
exec(compile('"'"''"'"''"'"'
# This is <pip-setuptools-caller> -- a caller that pip uses to run setup.py
#
# - It imports setuptools before invoking setup.py, to enable projects that directly
# import from `distutils.core` to work with newer packaging standards.
# - It provides a clear error message when setuptools is not installed.
# - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so
# setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning:
# manifest_maker: standard file '"'"'-c'"'"' not found".
# - It generates a shim setup.py, for handling setup.cfg-only projects.
import os, sys, tokenize
try:
import setuptools
except ImportError as error:
print(
"ERROR: Can not execute `setup.py` since setuptools is not available in "
"the build environment.",
file=sys.stderr,
)
sys.exit(1)
__file__ = %r
sys.argv[0] = __file__
if os.path.exists(__file__):
filename = __file__
with tokenize.open(__file__) as f:
setup_py_code = f.read()
else:
filename = "<auto-generated setuptools caller>"
setup_py_code = "from setuptools import setup; setup()"
exec(compile(setup_py_code, filename, "exec"))
'"'"''"'"''"'"' % ('"'"'/usr/opt/sas/python3a/llvmlite-0.41.1/setup.py'"'"',), "<pip-setuptools-caller>", "exec"))' install --record /tmp/pip-record-zs4l1fhp/install-record.txt --single-version-externally-managed --root / --compile --install-headers /opt/freeware/include/python3.9/llvmlite
cwd: /usr/opt/sas/python3a/llvmlite-0.41.1/
Running setup.py install for llvmlite ... error
error: legacy-install-failure
× Encountered error while trying to install package.
╰─> llvmlite
note: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.
WARNING: There was an error checking the latest version of pip.
------------------------------
Mi Wang
------------------------------