FreeBSD ทำให้เกิดข้อผิดพลาด - ไฟล์ 5.19 รองรับเฉพาะไฟล์เวทย์มนต์ 12 ไฟล์ /usr/share/misc/magic.mgc คือเวอร์ชัน 8


0

ฉันมีปัญหาในการติดตั้ง ProFTPD ใหม่ในการติดตั้ง FreeBSD 10.1 เซิร์ฟเวอร์ได้รับการอัพเกรดใหม่จาก 10.0 เป็น 10.1 เมื่อฉันเริ่มกระบวนการทำให้การติดตั้งใหม่ทั้งหมดคำเตือนเหล่านี้จะแสดงบนหน้าจอเป็นครั้งแรก

===>  proftpd-1.3.5_4 depends on shared library: libpcre.so
/usr/share/misc/magic, 93: Warning: Printf format `l' is not valid for type `lelong' in description `, %ld pages'
...
/usr/share/misc/magic, 15118: Warning: Printf format `l' is not valid for type `belong' in description `Volume %ld,'
/usr/share/misc/magic, 15609: Warning: Current entry does not yet have a description for adding a MIME type
file: File 5.19 supports only version 12 magic files. `/usr/share/misc/magic.mgc' is   version 8
[: =: unexpected operator
- not found

และหลังจากที่ฉันในขณะกระบวนการทำให้หยุดด้วยข้อผิดพลาดนี้:

/bin/ln -s libpcre.so.1 /usr/ports/devel/pcre/work/stage/usr/local/lib/libpcre.so.3
====> Compressing man pages (compress-man)
===>  Installing for pcre-8.35_2
===>  Checking if pcre already installed
===>  pcre-8.35_2 is already installed
You may wish to ``make deinstall'' and install this port again
by ``make reinstall'' to upgrade it properly.
If you really wish to overwrite the old port of pcre
without deleting it first, set the variable "FORCE_PKG_REGISTER"
in your environment or the "make install" command line.

*** Error code 1

Stop.
make[3]: stopped in /usr/ports/devel/pcre
*** Error code 1

Stop.
make[2]: stopped in /usr/ports/devel/pcre
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/ftp/proftpd
*** Error code 1

Stop.
make: stopped in /usr/ports/ftp/proftpd

ดูเหมือนว่าไฟล์ /usr/share/misc/magic.mgc เป็นรุ่นที่ผิดหรือเปล่า? อาจเกิดขึ้นเมื่อฉันอัพเกรดจาก 10.0-RELEASE-p12 เป็น 10.1-RELESE-p1

ถ้าฉันทำการติดตั้งใหม่ทั้งหมดของพอร์ต ProFTP และปิดการใช้งานการสนับสนุน pcre กระบวนการและการติดตั้งก็สำเร็จแล้ว แต่ฉันเชื่อว่ามีบางสิ่งที่ยังขาดอยู่

ทักษะการเขียนโปรแกรมของฉันมี จำกัด และข้อผิดพลาดในระดับนี้ กรุณาแจ้งให้เราทราบหากคุณมีความคิดใด ๆ

ขอบคุณ

คำตอบ:


2

การตรวจสอบการพึ่งพาในพอร์ต Makefiles ใช้ file(1) เพื่อตรวจสอบว่าไฟล์เป็นไลบรารีที่แชร์

ดูเหมือนว่าฐานข้อมูลเวทมนต์ของคุณคืออะไร file ใช้เพื่อกำหนดประเภทไฟล์ที่ใช้งานไม่ได้ คุณสามารถสร้างใหม่ได้ดังต่อไปนี้โดยสมมติว่าคุณได้ติดตั้งซอร์สโค้ด FreeBSD

ขั้นแรกให้สร้างฐานข้อมูลทั้งหมดในรูปแบบข้อความ

cat /usr/src/contrib/file/magic/Header \
/usr/src/contrib/file/magic/Localstuff \
/usr/src/contrib/file/magic/Magdir/* >magic

จากนั้นรวบรวมมัน;

file -C magic

ตอนนี้ติดตั้งทั้งสองในตำแหน่งเริ่มต้นของพวกเขา สิ่งนี้จะต้องทำเหมือนรูท

install -m 644 magic magic.mgc /usr/share/misc/
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.