Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

INSTSONAME in Makefile does not point to a .so file?

Đang mở
#181 13 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
25/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
python
Lĩnh vực
build-system

Hướng nghiên cứu

Bắt đầu với config-3.6m-x86_64-linux-gnu/Makefile của Python 3.6 được mô tả trong issue và so sánh các giá trị LIBRARY, LDLIBRARY và INSTSONAME của nó với Makefile của Python 3.5.2. Sau đó, kiểm tra configure.ac được liên kết và trường hợp sử dụng autoconf của Vim để xác định liệu bản build của conda có đang tạo ra metadata thư viện không chính xác hay không; hoàn thành khi các giá trị biến mong đợi và dự án chịu trách nhiệm đã được xác định.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

I'm not sure if it's a python or a conda build thing, so please refer me to the right channel if this is not the right place to address this issue.

After I installed Python 3.6.5 in Linux (through conda from anaconda build hc3d631a_2) I see the following in [environment root]/lib/python3.6/config-3.6m-x86_64-linux-gnu/Makefile:

LIBRARY=	libpython$(VERSION)$(ABIFLAGS).a
LDLIBRARY=      libpython$(VERSION)$(ABIFLAGS).a
BLDLIBRARY=     $(LDLIBRARY)
PY3LIBRARY=     
DLLLIBRARY=	
LDLIBRARYDIR=   
INSTSONAME=	$(LDLIBRARY)

Does this look odd as the INSTSONAME is not a .so? The reason for this is that I think some autoconf script (such as Vim when compiling with python support) would read the INSTSONAME from the Makefile and use that as the dynamic library name. And thus it will try to load the .a instead of .so and failed (?).

Here is the same file for Python 3.5.2 (lib/python3.5/config-3.5m):

LIBRARY=	libpython$(VERSION)$(ABIFLAGS).a
LDLIBRARY=      libpython$(LDVERSION).so
BLDLIBRARY=     -L. -lpython$(LDVERSION)
PY3LIBRARY=     libpython3.so
DLLLIBRARY=	
LDLIBRARYDIR=   
INSTSONAME=	libpython$(LDVERSION).so.1.0

It looks like this is what the python configure.ac is setting:

https://github.com/python/cpython/blob/master/configure.ac

My question is, should the LDLIBRARY point to a .so?

Ngôn ngữ chính
Shell
Star
47
Fork
112
Merge trung bình
1 ngày 2 giờ
Pull request đã merge (30 ngày)
15

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của conda-forge/python-feedstock

Tất cả issue của conda-forge/python-feedstock

Issue tương tự

Thêm issue về Shell/Bash

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.