পিআইপি এবং সেটআপ.পি দিয়ে পাইথন ক্রিপ্টোগ্রাফি প্যাকেজ ইনস্টল করতে ব্যর্থ


256

যখন আমি পাইথনের জন্য ক্রিপ্টোগ্রাফি প্যাকেজটি ইনস্টল করার চেষ্টা করি pip install cryptographyবা তাদের সাইট থেকে প্যাকেজটি ডাউনলোড করে চালিয়ে python setup.pyযাচ্ছি, আমি নিম্নলিখিত ত্রুটিটি পেয়েছি:


D:\Anaconda\Scripts\pip-script.py run on 02/27/14 16:13:17
Downloading/unpacking cryptography
  Getting page https://pypi.python.org/simple/cryptography/
  URLs to search for versions for cryptography:
  * https://pypi.python.org/simple/cryptography/
  Analyzing links from page https://pypi.python.org/simple/cryptography/
    Skipping https://pypi.python.org/packages/cp26/c/cryptography/cryptography-0.2-cp26-none-win32.whl#md5=13e5c4b19520e7dc6f07c6502b3f74e2 (from https://pypi.python.org/simple/cryptography/) because it is not compatible with this Python
    Skipping https://pypi.python.org/packages/cp26/c/cryptography/cryptography-0.2.1-cp26-none-win32.whl#md5=00e733648ee5cdb9e58876238b1328f8 (from https://pypi.python.org/simple/cryptography/) because it is not compatible with this Python
    Skipping https://pypi.python.org/packages/cp27/c/cryptography/cryptography-0.2-cp27-none-win32.whl#md5=013ccafa6a5a3ea92c73f2c1c4879406 (from https://pypi.python.org/simple/cryptography/) because it is not compatible with this Python
    Skipping https://pypi.python.org/packages/cp27/c/cryptography/cryptography-0.2.1-cp27-none-win32.whl#md5=127d6a5dc687250721f892d55720a06c (from https://pypi.python.org/simple/cryptography/) because it is not compatible with this Python
    Skipping https://pypi.python.org/packages/cp32/c/cryptography/cryptography-0.2-cp32-none-win32.whl#md5=051424a36e91039807b72f112333ded3 (from https://pypi.python.org/simple/cryptography/) because it is not compatible with this Python
    Skipping https://pypi.python.org/packages/cp32/c/cryptography/cryptography-0.2.1-cp32-none-win32.whl#md5=53f6f57db8e952d64283baaa14cbde3d (from https://pypi.python.org/simple/cryptography/) because it is not compatible with this Python
    Skipping https://pypi.python.org/packages/cp33/c/cryptography/cryptography-0.2-cp33-none-win32.whl#md5=302812c1c1a035cf9ba3292f8dbf3f9e (from https://pypi.python.org/simple/cryptography/) because it is not compatible with this Python
    Skipping https://pypi.python.org/packages/cp33/c/cryptography/cryptography-0.2.1-cp33-none-win32.whl#md5=81acca90caf8a45f2ca73f3f9859fae4 (from https://pypi.python.org/simple/cryptography/) because it is not compatible with this Python
    Found link https://pypi.python.org/packages/source/c/cryptography/cryptography-0.1.tar.gz#md5=bdc1c5fe069deca7467b71a0cc538f17 (from https://pypi.python.org/simple/cryptography/), version: 0.1
    Found link https://pypi.python.org/packages/source/c/cryptography/cryptography-0.2.1.tar.gz#md5=872fc04268dadc66a0305ae5ab1c123b (from https://pypi.python.org/simple/cryptography/), version: 0.2.1
    Found link https://pypi.python.org/packages/source/c/cryptography/cryptography-0.2.tar.gz#md5=8a3d21e837a21e1b7634ee1f22b06bb6 (from https://pypi.python.org/simple/cryptography/), version: 0.2
  Using version 0.2.1 (newest of versions: 0.2.1, 0.2, 0.1)
  Downloading from URL https://pypi.python.org/packages/source/c/cryptography/cryptography-0.2.1.tar.gz#md5=872fc04268dadc66a0305ae5ab1c123b (from https://pypi.python.org/simple/cryptography/)
  Running setup.py (path:c:\users\paco\appdata\local\temp\pip_build_Paco\cryptography\setup.py) egg_info for package cryptography
    In file included from c/_cffi_backend.c:7:0:
    c/misc_win32.h:225:23: error: two or more data types in declaration specifiers
    c/misc_win32.h:225:1: warning: useless type name in empty declaration [enabled by default]
    c/_cffi_backend.c: In function 'convert_array_from_object':
    c/_cffi_backend.c:1105:26: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:1105:26: warning: too many arguments for format [-Wformat-extra-args]
    c/_cffi_backend.c:1130:30: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:1130:30: warning: too many arguments for format [-Wformat-extra-args]
    c/_cffi_backend.c:1150:30: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:1150:30: warning: too many arguments for format [-Wformat-extra-args]
    c/_cffi_backend.c: In function 'convert_struct_from_object':
    c/_cffi_backend.c:1183:26: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:1183:26: warning: too many arguments for format [-Wformat-extra-args]
    c/_cffi_backend.c:1196:30: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:1196:30: warning: too many arguments for format [-Wformat-extra-args]
    c/_cffi_backend.c: In function 'cdata_repr':
    c/_cffi_backend.c:1583:13: warning: unknown conversion type character 'L' in format [-Wformat]
    c/_cffi_backend.c:1583:13: warning: too many arguments for format [-Wformat-extra-args]
    c/_cffi_backend.c:1595:9: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:1595:9: warning: too many arguments for format [-Wformat-extra-args]
    c/_cffi_backend.c: In function 'cdataowning_repr':
    c/_cffi_backend.c:1647:30: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:1647:30: warning: too many arguments for format [-Wformat-extra-args]
    c/_cffi_backend.c: In function '_cdata_get_indexed_ptr':
    c/_cffi_backend.c:1820:26: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:1820:26: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:1820:26: warning: too many arguments for format [-Wformat-extra-args]
    c/_cffi_backend.c: In function '_cdata_getslicearg':
    c/_cffi_backend.c:1872:26: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:1872:26: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:1872:26: warning: too many arguments for format [-Wformat-extra-args]
    c/_cffi_backend.c: In function 'cdata_ass_slice':
    c/_cffi_backend.c:1951:26: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:1951:26: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:1951:26: warning: too many arguments for format [-Wformat-extra-args]
    c/_cffi_backend.c:1969:30: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:1969:30: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:1969:30: warning: too many arguments for format [-Wformat-extra-args]
    c/_cffi_backend.c:1983:22: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:1983:22: warning: too many arguments for format [-Wformat-extra-args]
    c/_cffi_backend.c: In function 'cdata_call':
    c/_cffi_backend.c:2367:30: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:2367:30: warning: format '%s' expects argument of type 'char *', but argument 3 has type 'Py_ssize_t' [-Wformat]
    c/_cffi_backend.c:2367:30: warning: too many arguments for format [-Wformat-extra-args]
    c/_cffi_backend.c: In function 'cast_to_integer_or_char':
    c/_cffi_backend.c:2916:26: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:2916:26: warning: format '%s' expects argument of type 'char *', but argument 3 has type 'Py_ssize_t' [-Wformat]
    c/_cffi_backend.c:2916:26: warning: too many arguments for format [-Wformat-extra-args]
    c/_cffi_backend.c:2928:26: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:2928:26: warning: format '%s' expects argument of type 'char *', but argument 3 has type 'Py_ssize_t' [-Wformat]
    c/_cffi_backend.c:2928:26: warning: too many arguments for format [-Wformat-extra-args]
    c/_cffi_backend.c: In function 'new_array_type':
    c/_cffi_backend.c:3480:9: warning: unknown conversion type character 'l' in format [-Wformat]
    c/_cffi_backend.c:3480:9: warning: too many arguments for format [-Wformat-extra-args]
    c/_cffi_backend.c: In function 'b_complete_struct_or_union':
    c/_cffi_backend.c:3878:22: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:3878:22: warning: unknown conversion type character 'z' in format [-Wformat]
    c/_cffi_backend.c:3878:22: warning: too many arguments for format [-Wformat-extra-args]
    Traceback (most recent call last):
      File "<string>", line 17, in <module>
      File "c:\users\paco\appdata\local\temp\pip_build_Paco\cryptography\setup.py", line 113, in <module>
        "build": cffi_build,
      File "D:\Anaconda\lib\distutils\core.py", line 112, in setup
        _setup_distribution = dist = klass(attrs)
      File "build\bdist.win-amd64\egg\setuptools\dist.py", line 239, in __init__
      File "build\bdist.win-amd64\egg\setuptools\dist.py", line 264, in fetch_build_eggs
      File "build\bdist.win-amd64\egg\pkg_resources.py", line 580, in resolve
        dist = best[req.key] = env.best_match(req, ws, installer)
      File "build\bdist.win-amd64\egg\pkg_resources.py", line 818, in best_match
        return self.obtain(req, installer) # try and download/install
      File "build\bdist.win-amd64\egg\pkg_resources.py", line 830, in obtain
        return installer(requirement)
      File "build\bdist.win-amd64\egg\setuptools\dist.py", line 314, in fetch_build_egg
      File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 593, in easy_install

      File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 623, in install_item

      File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 809, in install_eggs

      File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 1015, in build_and_install

      File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 1003, in run_setup

    distutils.errors.DistutilsError: Setup script exited with error: command 'gcc' failed with exit status 1
    Complete output from command python setup.py egg_info:
    In file included from c/_cffi_backend.c:7:0:

c/misc_win32.h:225:23: error: two or more data types in declaration specifiers

c/misc_win32.h:225:1: warning: useless type name in empty declaration [enabled by default]

c/_cffi_backend.c: In function 'convert_array_from_object':

c/_cffi_backend.c:1105:26: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:1105:26: warning: too many arguments for format [-Wformat-extra-args]

c/_cffi_backend.c:1130:30: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:1130:30: warning: too many arguments for format [-Wformat-extra-args]

c/_cffi_backend.c:1150:30: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:1150:30: warning: too many arguments for format [-Wformat-extra-args]

c/_cffi_backend.c: In function 'convert_struct_from_object':

c/_cffi_backend.c:1183:26: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:1183:26: warning: too many arguments for format [-Wformat-extra-args]

c/_cffi_backend.c:1196:30: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:1196:30: warning: too many arguments for format [-Wformat-extra-args]

c/_cffi_backend.c: In function 'cdata_repr':

c/_cffi_backend.c:1583:13: warning: unknown conversion type character 'L' in format [-Wformat]

c/_cffi_backend.c:1583:13: warning: too many arguments for format [-Wformat-extra-args]

c/_cffi_backend.c:1595:9: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:1595:9: warning: too many arguments for format [-Wformat-extra-args]

c/_cffi_backend.c: In function 'cdataowning_repr':

c/_cffi_backend.c:1647:30: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:1647:30: warning: too many arguments for format [-Wformat-extra-args]

c/_cffi_backend.c: In function '_cdata_get_indexed_ptr':

c/_cffi_backend.c:1820:26: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:1820:26: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:1820:26: warning: too many arguments for format [-Wformat-extra-args]

c/_cffi_backend.c: In function '_cdata_getslicearg':

c/_cffi_backend.c:1872:26: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:1872:26: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:1872:26: warning: too many arguments for format [-Wformat-extra-args]

c/_cffi_backend.c: In function 'cdata_ass_slice':

c/_cffi_backend.c:1951:26: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:1951:26: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:1951:26: warning: too many arguments for format [-Wformat-extra-args]

c/_cffi_backend.c:1969:30: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:1969:30: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:1969:30: warning: too many arguments for format [-Wformat-extra-args]

c/_cffi_backend.c:1983:22: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:1983:22: warning: too many arguments for format [-Wformat-extra-args]

c/_cffi_backend.c: In function 'cdata_call':

c/_cffi_backend.c:2367:30: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:2367:30: warning: format '%s' expects argument of type 'char *', but argument 3 has type 'Py_ssize_t' [-Wformat]

c/_cffi_backend.c:2367:30: warning: too many arguments for format [-Wformat-extra-args]

c/_cffi_backend.c: In function 'cast_to_integer_or_char':

c/_cffi_backend.c:2916:26: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:2916:26: warning: format '%s' expects argument of type 'char *', but argument 3 has type 'Py_ssize_t' [-Wformat]

c/_cffi_backend.c:2916:26: warning: too many arguments for format [-Wformat-extra-args]

c/_cffi_backend.c:2928:26: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:2928:26: warning: format '%s' expects argument of type 'char *', but argument 3 has type 'Py_ssize_t' [-Wformat]

c/_cffi_backend.c:2928:26: warning: too many arguments for format [-Wformat-extra-args]

c/_cffi_backend.c: In function 'new_array_type':

c/_cffi_backend.c:3480:9: warning: unknown conversion type character 'l' in format [-Wformat]

c/_cffi_backend.c:3480:9: warning: too many arguments for format [-Wformat-extra-args]

c/_cffi_backend.c: In function 'b_complete_struct_or_union':

c/_cffi_backend.c:3878:22: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:3878:22: warning: unknown conversion type character 'z' in format [-Wformat]

c/_cffi_backend.c:3878:22: warning: too many arguments for format [-Wformat-extra-args]

Traceback (most recent call last):

  File "<string>", line 17, in <module>

  File "c:\users\paco\appdata\local\temp\pip_build_Paco\cryptography\setup.py", line 113, in <module>

    "build": cffi_build,

  File "D:\Anaconda\lib\distutils\core.py", line 112, in setup

    _setup_distribution = dist = klass(attrs)

  File "build\bdist.win-amd64\egg\setuptools\dist.py", line 239, in __init__

  File "build\bdist.win-amd64\egg\setuptools\dist.py", line 264, in fetch_build_eggs

  File "build\bdist.win-amd64\egg\pkg_resources.py", line 580, in resolve

    dist = best[req.key] = env.best_match(req, ws, installer)

  File "build\bdist.win-amd64\egg\pkg_resources.py", line 818, in best_match

    return self.obtain(req, installer) # try and download/install

  File "build\bdist.win-amd64\egg\pkg_resources.py", line 830, in obtain

    return installer(requirement)

  File "build\bdist.win-amd64\egg\setuptools\dist.py", line 314, in fetch_build_egg

  File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 593, in easy_install



  File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 623, in install_item



  File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 809, in install_eggs



  File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 1015, in build_and_install



  File "build\bdist.win-amd64\egg\setuptools\command\easy_install.py", line 1003, in run_setup



distutils.errors.DistutilsError: Setup script exited with error: command 'gcc' failed with exit status 1

----------------------------------------
Cleaning up...
  Removing temporary dir c:\users\paco\appdata\local\temp\pip_build_Paco...
Command python setup.py egg_info failed with error code 1 in c:\users\paco\appdata\local\temp\pip_build_Paco\cryptography
Exception information:
Traceback (most recent call last):
  File "D:\Anaconda\lib\site-packages\pip-1.5.4-py2.7.egg\pip\basecommand.py", line 122, in main
    status = self.run(options, args)
  File "D:\Anaconda\lib\site-packages\pip-1.5.4-py2.7.egg\pip\commands\install.py", line 278, in run
    requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
  File "D:\Anaconda\lib\site-packages\pip-1.5.4-py2.7.egg\pip\req.py", line 1229, in prepare_files
    req_to_install.run_egg_info()
  File "D:\Anaconda\lib\site-packages\pip-1.5.4-py2.7.egg\pip\req.py", line 325, in run_egg_info
    command_desc='python setup.py egg_info')
  File "D:\Anaconda\lib\site-packages\pip-1.5.4-py2.7.egg\pip\util.py", line 697, in call_subprocess
    % (command_desc, proc.returncode, cwd))
InstallationError: Command python setup.py egg_info failed with error code 1 in c:\users\paco\appdata\local\temp\pip_build_Paco\cryptography

আমি অন্যান্য ডিম_ইনফো ত্রুটি পোস্টগুলি পেয়েছি ( এখানে এবং এখানে ) তবে সেখানে প্রদত্ত সমাধানগুলি আমার সমস্যার সমাধান করবে না। এছাড়াও, আমি পিআইপি-র মাধ্যমে অন্যান্য প্যাকেজ ইনস্টল করতে সক্ষম।

পিআইপি সংস্করণ 1.5.4 সেটআপল সংস্করণ 2.2


প্রত্যেকের জন্য পয়েন্টার - ক্রিপ্টোগ্রাফি এখন বেশিরভাগ ওএসের জন্য প্রিল বিল্ড হুইল পাঠায়, তাই একটি pip installক্রিপ্টোগ্রাফি। বাক্সের বাইরে কাজ করা উচিত।
লেগোরুজ

উত্তর:


427

আমার অনুরূপ সমস্যা ছিল এবং আমি খুঁজে পেয়েছিলাম যে আমি কেবল একটি নির্ভরতা (আমার জন্য libssl-dev) মিস করছি। Https://cryptography.io/en/latest/installation/ এ উল্লিখিত হিসাবে , সমস্ত নির্ভরতা পূরণ হয়েছে তা নিশ্চিত করুন:

উইন্ডোজ এ

আপনি যদি উইন্ডোজে থাকেন তবে আপনাকে ওপেনএসএসএল ইনস্টল করা আছে তা নিশ্চিত করতে হবে। প্রাক-সংকলিত বাইনারি উপলব্ধ। যদি আপনার ইনস্টলেশনটি কোনও অস্বাভাবিক স্থানে থাকে তবে এলআইবি এবং অন্তর্ভুক্ত পরিবেশের ভেরিয়েবলগুলিকে সংশ্লিষ্ট অবস্থানগুলি অন্তর্ভুক্ত করতে সেট করুন। উদাহরণ স্বরূপ:

C:\> \path\to\vcvarsall.bat x86_amd64
C:\> set LIB=C:\OpenSSL-1.0.1f-64bit\lib;%LIB%
C:\> set INCLUDE=C:\OpenSSL-1.0.1f-64bit\include;%INCLUDE%
C:\> pip install cryptography

লিনাক্সে ক্রিপ্টোগ্রাফি তৈরি করা হচ্ছে

ক্রিপ্টোগ্রাফিটি খুব সহজেই লিনাক্সে তৈরি করা উচিত যখন আপনার কাছে একটি সি সংকলক, পাইথনের শিরোনাম (যদি আপনি পাইপি ব্যবহার করেন না) এবং আপনার সিস্টেমে ওপেনএসএসএল এবং লিবিফি লাইব্রেরির জন্য শিরোনাম রয়েছে।

জন্য উবুন্টু এবং ডেবিয়ান , নিম্নলিখিত কমান্ড প্রয়োগ নিশ্চিত করবে যে প্রয়োজনীয় নির্ভরতা ইনস্টল হয়েছে:

sudo apt-get install build-essential libssl-dev libffi-dev python-dev

জন্য ফেডোরা এবং RHEL-ডেরাইভেটিভস , নিম্নলিখিত কমান্ড প্রয়োগ নিশ্চিত করবে যে প্রয়োজনীয় নির্ভরতা ইনস্টল হয়েছে:

sudo yum install gcc libffi-devel python-devel OpenSSL-devel

আপনার এখন স্বাভাবিকের সাথে ক্রিপ্টোগ্রাফি তৈরি এবং ইনস্টল করতে সক্ষম হওয়া উচিত।

pip install cryptography

1
ধন্যবাদ, পুরোপুরি কাজ করেছেন! VS2010 থাকায় আমাকে করতে হয়েছিল: VS90COMNTOOLS =% VS100COMNTOOLS% সেট করুন এবং lib নামে "mt" প্রত্যয় যুক্ত করুন
ম্যাকিক

//, আমি নিশ্চিত করতে পারি যে এটি মূল প্রশ্নে পোস্ট করা অনুরূপ ত্রুটির সাথে পাইথন ৩.৩ সহ সিইন্টস .3.৩ মেশিনে কাজ করেছে।
নাথান বাসানিজ

4
মনে হয় যে libffi-devপ্যাকেজটি একেবারে কী। আমার আর কিছু কনফিগার করার দরকার নেই, তবে সেই প্যাকেজের নাম ত্রুটি লগটিতে উপস্থিত হয়নি: - / আপনাকে ধন্যবাদ।
এম

6
ভুলবেন প্রতিস্থাপন করতে না python-devদিয়ে python3-devআপনি python3 ব্যবহার করছেন কিনা তা
Duan

1
এফডাব্লুআইডাব্লু আমি ডেবিয়ান 9 চালাচ্ছি এবং পাইপ ইনস্টল ক্রিপ্টোগ্রাফি চলাকালীন ত্রুটি পেতে ছাড়ার আগে একটি অ্যাপট-ইনস্টল libssl1.0-dev করতে হয়েছিল
মাইক পেনিংটন

113

এটি ক্রিপ্টোগ্রাফির ইনস্টলেশন ডক্স পৃষ্ঠায় প্রাপ্ত তথ্যের একটি কনডেন্সড সংস্করণ । সর্বশেষ বিবরণের জন্য সেই পৃষ্ঠাটি পরামর্শ করুন।

এই যেহেতু এই প্রশ্নটি আসতে থাকে আমি এখানেও একটি প্রতিক্রিয়া রেখে যাব (আমি পাইকার / ক্রিপ্টোগ্রাফি বিকাশকারীদের একজন)। 3 টি বড় প্ল্যাটফর্মগুলিতে আপনার নির্ভরযোগ্যভাবে পাইকা / ক্রিপ্টোগ্রাফি ইনস্টল করতে হবে তা এখানে।

দয়া করে মনে রাখবেন যে এই সমস্ত ক্ষেত্রে আপনি বিশ্বস প্যাকেজ স্পেসে নয়, একটি ভার্চুয়ালেনভের সাথে ইনস্টল করার পরামর্শ দেওয়া হচ্ছে। এটি ক্রিপ্টোগ্রাফির ক্ষেত্রে সুনির্দিষ্ট নয় বরং এটি আপনার পাইথন ইনস্টলেশনটি নির্ভরযোগ্য রাখার সাধারণ পরামর্শ। ওএসে প্রদত্ত পাইথনগুলির বিশ্বব্যাপী প্যাকেজ স্পেসটি সিস্টেমের মালিকানাধীন এবং এতে পাইপের মাধ্যমে জিনিসগুলি ইনস্টল করা সমস্যার জন্য জিজ্ঞাসা করছে।

উইন্ডোজ

সর্বশেষতম পাইপ (জুন 2016 হিসাবে 8.1.2) এবং আপগ্রেড করুন pip install cryptography

ক্রিপ্টোগ্রাফি এবং সিএফআই উভয় স্থায়ীভাবে সংযুক্ত চাকা হিসাবে চালিত হয়।

ওএস এক্স

সর্বশেষতম পাইপ (জুন 2016 হিসাবে 8.1.2) এবং আপগ্রেড করুন pip install cryptography

ক্রিপ্টোগ্রাফি এবং সিএফআই উভয় স্থায়ীভাবে সংযুক্ত চাকা হিসাবে চালিত হয়। এটি পাইয়নভ পাইথন, সিস্টেম পাইথন, হোমব্রু পাইথন ইত্যাদির জন্য কাজ করবে যতক্ষণ আপনি সর্বশেষ পাইপটিতে রয়েছেন ততক্ষণ আপনার একটি সংকলকও লাগবে না।

লিনাক্স

সংস্করণ ২.০ হিসাবে ক্রিপ্টোগ্রাফি বহুতলিনাক্স 1 চাকা পাঠায়। এর অর্থ হ'ল পিপ 8.1+ ব্যবহারকারীরা গ্লিবসি ভিত্তিক বিতরণ (অ্যালপাইন লিনাক্স ব্যতীত প্রায় সমস্ত কিছু) এবং x86 / x86-64 (দুঃখিত রাস্পবেরি পাই লোক) -এ চলমান ব্যবহারকারীদের আর একটি সংকলক বা শিরোলেখের প্রয়োজন নেই কারণ আপনি স্বয়ংক্রিয়ভাবে একটি পূর্বনির্ধারিত চাকা পাবেন । সুতরাং, আপনার প্রথমে আপনার পাইপটি আপগ্রেড করার চেষ্টা করা উচিত!

আপনি যদি মাল্টিনলিনাক্স 1 সামঞ্জস্যপূর্ণ না হন তবে আপনার যা করা দরকার তা এখানে:

আপনার একটি সি সংকলক, লিবিফি + এর বিকাশ শিরোনাম এবং ওপেনসেল + এর বিকাশ শিরোনাম প্রয়োজন।

ডেবিয়ান বা উবুন্টু বিতরণ প্রাপ্ত

apt-get install build-essential libssl-dev libffi-dev python-dev অনুসরণ করেছে

pip install cryptography

রেড হ্যাট বিতরণ প্রাপ্ত

yum install gcc openssl-devel libffi-devel python-devel অনুসরণ করেছে

pip install cryptography


1
আমি এটি করেছি, তবে আমি এখনও এই ত্রুটিটি পেয়েছি: "ক্রিপ্টোগ্রাফির জন্য বিল্ডিং হুইল" অনেকগুলি আউটপুট অনুসরণ করে (কোনও মন্তব্যের জন্য খুব বেশি)।
RolandiXor

4
ম্যাকোএসএক্স প্রতিক্রিয়া ম্যাকস সিয়েরা 10.12 তে মনোযোগের মতো কাজ করেছে। আমি এই মুহুর্তে আমার পাইপটি অতি সাম্প্রতিক সংস্করণে আপগ্রেড করেছি, 9.0.1।
জোয়াও সান্তোসের

3
সর্বশেষতম পাইপে আপগ্রেড করুন (জুন 2016 হিসাবে 8.1.2) এবং কেবল পাইপ ইনস্টল করুন ক্রিপ্টোগ্রাফি কাজ করে!
তীমথিয় ডালটন

আমার ম্যানুয়ালি আপডেট করতে হয়েছিল pipযা আমার পুরানো বয়স, তারপরে ওএসএক্স দ্রবণটি কবজির মতো কাজ করে। ( pip 9.0.1, MacOS Sierra)
বেনজামিনজ

1
আমার উইন্ডোজ 10 এ কাজ করে না, বিল্ড ত্রুটি পেয়ে ফাইলটি অন্তর্ভুক্ত করতে পারে না: 'ওপেনসেল / ওপেনস্লভ এইচ'
টোটে কার্লসন

43

আপনারা ওএস এক্স চালাচ্ছেন তাদের জন্য, আমার জন্য এটিই কাজ করেছে:

brew install openssl
env ARCHFLAGS="-arch x86_64" LDFLAGS="-L/usr/local/opt/openssl/lib" CFLAGS="-I/usr/local/opt/openssl/include"
pip install cryptography

(চলছে 10.9 ম্যাভেরিক্স)

আপনি নীচের মন্তব্য অনুসারে নীচে পতাকা এবং পাইপ কমান্ডগুলি মার্জ করার চেষ্টা করতে পারেন:

brew install openssl
env ARCHFLAGS="-arch x86_64" LDFLAGS="-L/usr/local/opt/openssl/lib" CFLAGS="-I/usr/local/opt/openssl/include" pip install cryptography

1
CFLAGS="-I/usr/include" pip install cryptographyরিপারহুল্ক থেকে মাভেরিক্সে আমার জন্য কাজ করেছে।
jjr4826

উত্তরের এই আদেশটি সঠিক নয়: দ্বিতীয় এবং তৃতীয় লাইনটি অবশ্যই মার্জ করতে হবে (একটি ব্যাকস্ল্যাশ ব্যবহার করুন)। তারপরে এটি পুরোপুরি কাজ করে, কেবল এল ক্যাপিটনে পরীক্ষা করা। উপরের এই মন্তব্যটিও সঠিক নয়। উত্তরের অন্যান্য সেটিংস প্রয়োজনীয়, বা আপনি পরে অভিযোগ পাবেন।
খ্রিস্টান টিসমার

1
বরাবরের মতো @ নাথানচাহিল এইচইইচইই
নিক উডহামস

1
আমাকে ব্যবহার করতে exportহয়নি env, তবে অন্যথায় কাজ করে।
রিচার্ড

$ ARCHFLAGS="-arch x86_64" LDFLAGS="-L/usr/local/opt/openssl/lib" CFLAGS="-I/usr/local/opt/openssl/include" pip install cryptographyইনস্টল করার প্রয়োজনে আমার macOS 10.12সাথে Python3.7(একটি ভার্চুয়ালেনভে) সাথে কাজ করেছিলেন । cryptographyansible
jalanb

23

এটি এল ক্যাপিটেনে আমার জন্য কাজ করেছিল

brew install pkg-config libffi openssl
env LDFLAGS="-L$(brew --prefix openssl)/lib" CFLAGS="-I$(brew --prefix openssl)/include" pip install cryptography

আপনি এখানে থ্রেডও চেক করতে পারেন: https://github.com/pyca/cryptography/issues/2350


এটি এই পৃষ্ঠায় প্রথমটি (এবং অনেকগুলি অনেকগুলি ..) যা মোজাভে 10.14.5 এ আমার জন্য কাজ করেছে, ধন্যবাদ। এছাড়াও পরিবেশের ভেরিয়েবলগুলি অন্য কোথাও সেশনের চেয়ে কমান্ডের জন্য কেবল সক্রিয় রয়েছে।
ক্রিস

23

এটি আমার জন্য সমস্যার সমাধান করেছে (উবুন্টু 16.04):

sudo apt-get install build-essential libssl-dev libffi-dev python-dev python3-dev

এবং তারপরে এটি কাজ করছিল:

pip install cryptography
pip install pyopenssl ndg-httpsclient pyasn1

14

স্পষ্টতই ওএসএক্সের সাম্প্রতিক সংস্করণগুলিতে এটি অ্যাপল তাদের ওপেনএসএসএল এর নিজস্ব সংস্করণ শিপিংয়ের কারণে হতে পারে, যা ক্রিপ্টোগ্রাফি লাইব্রেরির সাথে কাজ করে না।

ক্রিপ্টোগ্রাফি গ্রন্থাগারের সাম্প্রতিক সংস্করণগুলি তাদের নিজস্ব নেটিভ নির্ভরতা সহ শিপ করে তবে সেগুলি পেতে আপনাকে পাইপ এবং সম্ভবত ভার্চুয়াল এনভিও আপগ্রেড করতে হবে। সুতরাং আমার জন্য, সমাধানটি ছিল:

pip install --upgrade --force-reinstall pip virtualenv

ভার্চুয়ালেনভ আমার জন্য এটি পুনরায় ইনস্টল করলেন, এটি পাইপের একটি পুরানো সংস্করণ ব্যবহার করছিল যা ব্যর্থ হয়ে পড়েছিল, আপনাকে ধন্যবাদ!
অদ্রি ভ্যান হউডট

এখনও আমার জন্য ব্যর্থ। ওএসএক্স 10.11.3 এল ক্যাপিটান এখানে।
আগুনডিকেন

14

আমি কীভাবে "ক্রিপ্টোগ্রাফির জন্য বিল্ড দির বিল্ড ক্লিয়ারিং ব্যর্থ" সমাধান করেছি
(আমি এই ত্রুটির ফলস্বরূপ গুগল থেকে এখানে এসেছি))

নোট : একটি virtualenv ব্যবহার করে

টি এল; ডিআর:

আমার ফাইলটি /etc/apt/sources.listআমার ডেবিয়ান 8 এর জন্য সঠিকভাবে কনফিগার করা হয়নি।

ব্যাখ্যা:

আমি পরমিকো ইনস্টল করতে চেয়েছিলাম। পরমিকোর ক্রিপ্টোগ্রাফি দরকার।

আমি এই ত্রুটিগুলি পেয়েছি: এর সাথে প্রথম pip install cryptography:

(...)
  ----------------------------------------
  Failed cleaning build dir for cryptography
Failed to build cryptography
(...)
    ----------------------------------------
Command "/home/myuser/pyenvs/testo/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-HXWKAO/cryptography/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-WjqY6V-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/myuser/pyenvs/testo/include/site/python2.7/cryptography" failed with error code 1 in /tmp/pip-build-HXWKAO/cryptography/

এবং তারপরে sudo apt-get install build-essential:

Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 build-essential : Depends: libc6-dev but it is not going to be installed > or
                            libc-dev
                   Depends: gcc (>= 4:4.4.3) but it is not going to be installed
                   Depends: g++ (>= 4:4.4.3) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

(ওপি হিসাবে ঠিক একই ত্রুটিগুলি নয় তবে শেষ পর্যন্ত সহায়তা করার জন্য আমি এখানে আছি )

সমাধান:

প্রতিটি পোস্ট থেকে প্রায় প্রতিটি কমান্ড পরীক্ষা করার পরে আমি
https://wiki.debian.org/SourceList এ চলেছি
এবং ফাইলটিতে আমার পর্যাপ্ত কনফিগারেশন কপি করেছি/etc/apt/sources.list

তারপর:

sudo aptitude update

এবং তারপর

sudo apt-get install build-essential libssl-dev libffi-dev python-dev

এবং তারপর

pip install cryptography

HTH


উবুন্টু 16.04 সার্ভারে আমার সমস্যা সমাধান করুন। ধন্যবাদ
আলতাফ হুসেন

14

আমি উপরের অনেকগুলি সমাধানের চেষ্টা করেছি, তবে কেবলমাত্র নিম্নলিখিত লিবটি ইনস্টল করার পরে আমি ইনস্টল করতে পারি cryptography:

sudo apt install libssl1.0

আমি উবুন্টু 18.04 ব্যবহার করছি, তবে এটি উবুন্টু 18.10 তেও কাজ করবে।


1
যদিও এই কোডটি প্রশ্নের উত্তর দিতে পারে, কীভাবে এবং / বা কেন এটি সমস্যার সমাধান করে তা সম্পর্কিত অতিরিক্ত প্রসঙ্গ সরবরাহ করলে উত্তরের দীর্ঘমেয়াদী মান উন্নত হবে।
নিক 3500

1
এটি আমার পক্ষে কাজ করেছে। কেন এটি কাজ করে? সেই প্যাকেজের মধ্যে পার্থক্য কী, যা libssl1.0-dev এবং libssl-dev ইনস্টল করে?
ক্রিস

2
আমি কেন পাই না, তবে কেবল
এটিই

আমার জন্যও কাজ করেছেন। যদিও সফল ইনস্টল ঘোষণার পরে পাইপটি এখনও একটি সেগমেন্টেশন ত্রুটি পেয়েছে, তবে আমি মনে করি এটি কেবল একটি পাইপের সমস্যা।
রব মোশার

10

এটি আমার পক্ষে কাজ করেছে (আমি উবুন্টু 14.04 ব্যবহার করছি):

প্রথমে libffi-dev libssl-dev libpython2.7-dev ইনস্টল করুন:

sudo apt-get install libffi-dev libssl-dev libpython2.7-dev

তারপরে ভ্যুচুয়ালেনভের ভিতরে:

pip install cryptography
pip install pyopenssl ndg-httpsclient pyasn1

সূত্র:

https://stackoverflow.com/a/32800685/5123544

https://stackoverflow.com/a/29202163/5123544


7

নিক উডহ্যামের উত্তর আমার জন্য ওএসএক্স 10.11 এল ক্যাপিটেনে কাজ করে নি, তবে এটি হয়েছে।

brew install openssl
CFLAGS="-I/usr/local/opt/openssl/include" pip install cryptography==0.8

এটি আমার পক্ষে কাজ করার সবচেয়ে কাছাকাছি হয়ে গেছে তবে ব্যর্থ হয়েছে .. এল ক্যাপিটান ওএসএক্স 10.11.3 এখানে। / প্রাইভেট / ভেরি / ফোল্ডারগুলিতে ত্রুটি কোড 1 সহ ব্যর্থ হয়েছে / d9 / 75cfznt17cjc124j3stq3qc40000gn / টি / পিপ-বিল্ড-কিউ_জেজেডি / ক্রিপ্টোগ্রাফি /
আগোদিনিকেন

আমাকে ব্যবহার করতে হয়েছিল CFLAGS="-I/usr/local/opt/openssl/include" pip install cryptographyএবং এটি ইনস্টল করা হয়েছিল। LDFLAGS="-L/usr/local/opt/openssl/lib"লাইব্রেরিটি লোড করার জন্য আমাকেও যুক্ত করতে হয়েছিল । ডিন ক্রিশ্চান আর্মাদের মন্তব্য একই কাজ করেছে বলে মনে হচ্ছে তবে হার্ড কোডিংয়ের পরিবর্তে ব্রিউ উত্পন্ন ভেরিয়েবল ব্যবহার করা হচ্ছে।

4

আপনি যদি পাইথন 3 ব্যবহার করেন তবে আপনার ইনস্টল করা দরকার python3-dev। এটি আমার সমস্যা সমাধান করেছে sudo apt-get install python3-dev


4

cryptography==1.7.1উবুন্টু 16.04 এ ইনস্টল করার বিষয়ে আমার সমস্যা ছিল এবং উপরের উত্তরগুলির কোনওটিই সহায়তা করেনি। সুতরাং, আমি প্রয়োজনীয়টিকে একটি সামঞ্জস্যপূর্ণ 1.8.2 এ আপগ্রেড করেছি এবং সেটআপটি সফল হয়েছিল। নোট করুন যে আপনার এখনও শীর্ষে (সর্বাধিক উত্সাহিত) উত্তরে উল্লিখিত প্রয়োজনীয় ও অন্যান্য নির্ভরতা বানাতে হবে ।


3

আমার দৌড়াতে সমস্যা হয়েছিল sudo pip install cryptographyকারণ সংকলনের চেষ্টা করার সময় এটি এফএআই খুঁজে পাবে না। (ওএসএক্স - ইয়োসেমাইট)

আমি এটি লিবিফি ডাউনলোড করে এবং এনএনভি ভার সেট করে সমাধান করেছি।

$ brew install pkg-config libffi
$ export PKG_CONFIG_PATH=/usr/local/Cellar/libffi/3.0.13/lib/pkgconfig/
$ pip install cryptography

আমার কাছে বিসিআরআইপি ইনস্টল করার সমস্যা ছিল কারণ সিএফআই ইনস্টল করতে ব্যর্থ হয়েছিল, তবে এটি এটি সিএফআই এবং বিসিক্রিপ উভয়ের জন্যই স্থির করেছে। ধন্যবাদ!
Radiantradon

এটি এল ক্যাপিটেনে আমার পক্ষে কাজ করেনি। "পিপ ইনস্টল ক্রিপ্টোগ্রাফি" এর শেষে বিপথগামী সময়টি নোট করুন।
শ্যাকার 18

@ শ্যাকার এর কাছে এল ক্যাপিটেন নেই যাতে এটি পরীক্ষা করতে পারে না তবে বিপথগামী সময়কালকে ধন্যবাদ মুছে ফেলে।
থিঙ্কবোনো

@ শ্যাকার আমার উত্তর ভাইকে এল ক্যাপিটান ইনস্টলেশনটির জন্য পরীক্ষা করুন
ডিন ক্রিশ্চান আর্মদা


3

আপনি যদি গিটল্যাব সিআই -র জন্য একটি। গিটল্যাব-সিআই.আইএমএল ফাইলে পাইথন প্যাকেজ বিতরণ তৈরি করছেন যা কোনও এডাব্লুএস ইসি 2 মেশিনে নিযুক্ত গিটল্যাব রানার ব্যবহার করে

 - apk add --update alpine-sdk && \
 - apk add libffi-dev openssl-dev && \
 - apk --no-cache --update add build-base

1
চিয়ার্স, একটি আলপাইন ভিত্তিক ডকার পাত্রে দুর্দান্ত কাজ করেছেন!
অ্যালেক্স সাজাবি

2

আমি লক্ষ্য করেছি যে মূল পোস্টারটি একটি উইন্ডোজ ইনস্টলেশন স্পষ্টভাবে ব্যবহার করছে ... এবং উপরের সেরা উত্তরগুলি সমস্ত অন্যান্য ওএসের জন্য ... তাই এখানে যায়। এটি ধরে নিয়েছে যে আপনি পাইথন ২.7 ইনস্টল করেছেন যা সর্বাধিক বহুল সমর্থিত (যদিও পুরানো) সংস্করণ।

  1. ইনস্টল করুন " ভিসুয়াল সি ++ পাইথন জন্য কম্পাইলার "
  2. প্রশাসনিক কমান্ড প্রম্পট উইন্ডোটি খুলুন
  3. পুনরায় রান পিপ ইনস্টল (প্যাকেজ) যেমন

    cd C:\Python27\Scripts
    pip install cryptography  (or pycrypto, fabric, etc)

2

আমি সম্প্রতি একটি অনুরূপ সমস্যার মুখোমুখি হয়েছি। আমার ক্ষেত্রে প্রয়োজনীয়তাগুলিতে লেখা cffiএবং cryptographyলিখিত সংস্করণগুলি সামঞ্জস্যপূর্ণ ছিল না (সিএফআই == 1.8.9 এবং ক্রিপ্টোগ্রাফি == 1.9)। আমি cffiসর্বশেষ উপলব্ধ সংস্করণ দিয়ে আপডেট করার সমাধান করেছি ।


1

আমি প্রকৃতপক্ষে স্ক্রিপি ইনস্টল করার চেষ্টা করে যা একই ক্রিপ্টোগ্রাফি প্রথমে ইনস্টল করার উপর নির্ভর করে prob আমি পাইথন 2.7 64-বিট ইনস্টল করে উইন 764-বিটে রয়েছি। @ জসনমের উত্তরটি অবশেষে আমার পক্ষে কাজ করেছিল, তবে প্রথমে আমাকে সেই বিন দিরের মধ্যে সাবডিরের কাছে অনুলিপি C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\vcvarsx86_amd64.batকরতে হয়েছিল, x86_amd64যাতে vcvarsall.batকনফিগারেশনটি অনুপস্থিত ছিল বলে কোনও ত্রুটি ছুঁড়ে দেওয়া বন্ধ করবে। যদি আপনাকে আলাদা আলাদা সেটআপের জন্য এনভ ভার্সগুলি কনফিগার করতে হয়, তবে সংশ্লিষ্ট ভিসিভার ব্যাট ফাইলের সাথে সংশ্লিষ্ট সাবডিরের সাথে অনুলিপি করতে ভুলবেন না নীচের প্রথম কমান্ডটি হয়ত কাজ করে না।

তারপরে @ জসোনমের নির্দেশাবলী অনুসারে আমি কমান্ডলাইন থেকে নিম্নলিখিতটি চালিয়েছি (আমার কনফিগারেশনের জন্য টুইট করা) ...

C:\> "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\vcvarsall.bat" x86_amd64 
C:\> set LIB=C:\OpenSSL-Win64\lib;%LIB% 
C:\> set INCLUDE=C:\OpenSSL-Win64\include;%INCLUDE% 
C:\> pip install cryptography

এবং এটা কাজ করে.


1

আমারও এই ত্রুটি ছিল ওপেনএসএসএল ইনস্টল করার পরেও এই ত্রুটিটি অব্যাহত রাখার পরে, শেষ পর্যন্ত আমি হুইল ফাইলগুলি থেকে https://pypi.python.org/pypi/cryptography/0.2.2.2# ডাউনলোডগুলি থেকে ইনস্টল করার চেষ্টা করেছি । এটা কাজ করেছে!


1

আমি পাইপি থেকে পরমিকো পূর্ণ উত্স কোডটি ডাউনলোড করেছি এবং করেছি

পাইথন সেটআপ.পিপি ইনস্টল করুন

এটি নির্বিঘ্নে কাজ করে

সমস্ত ডিফল্ট পাইথনদেব / ওপেনসেল / লিবিফি প্যাকেজ ইতিমধ্যে রেলের মধ্যে উপস্থিত রয়েছে।

আরপিএম ডাউনলোড করার ক্ষেত্রে আরপিএম মেলেনি এবং আরও বেশি সমস্যা


0

আমারও একই সমস্যা হচ্ছে:

pip install cryptography

.
.
.
Installing collected packages: cffi, cryptography
     Running setup.py install for cffi ... error

তারপরে আমি লিবিফি-ডেভেল ইনস্টল করি এবং সমস্যার সমাধান হয়

yum install libffi-devel

0

এই দুটি আদেশ আমার জন্য এটি স্থির করে:

brew install openssl
brew link openssl --force

সূত্র: https://github.com / ফিউশন / প্যাসেঞ্জার/ issues/ 1630#issuecomment147527656


1
আমি brew link openssl --forceওএস এক্সে করার বিরুদ্ধে অত্যন্ত পরামর্শ দিচ্ছি Instead পরিবর্তে, কেবলমাত্র আপনার পিপটি সর্বশেষ সংস্করণে আপগ্রেড করুন এবং এটি কোনও সমস্যা ছাড়াই সিএফআই এবং ক্রিপ্টোগ্রাফি উভয়ের জন্য একটি স্ট্যাটিকালি লিঙ্কড হুইল ইনস্টল করবে।
পল কেহেরার

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.