ฉันกำลังสร้างอะไรบางอย่างจากแหล่งที่มาและฉันจะได้รับผลลัพธ์ต่อไปนี้ในขณะที่ทำ:
...
CC libpromises_la-mod_outputs.lo
CC libpromises_la-unix.lo
CCLD libpromises.la
CC cfknow.o
CC manual.o
CCLD cf-know
./.libs/libpromises.so: undefined reference to `dlerror'
./.libs/libpromises.so: undefined reference to `dladdr'
./.libs/libpromises.so: undefined reference to `dlclose'
./.libs/libpromises.so: undefined reference to `dlopen'
./.libs/libpromises.so: undefined reference to `dlsym'
collect2: ld returned 1 exit status
gmake[2]: *** [cf-know] Error 1
gmake[2]: Leaving directory `/tmp/cfengine/cfengine-3.1.5/src'
gmake[1]: *** [all] Error 2
gmake[1]: Leaving directory `/tmp/cfengine/cfengine-3.1.5/src'
gmake: *** [all-recursive] Error 1
ฉันไปเล็กน้อยและดูเหมือนว่า linker ไม่สามารถค้นหาไฟล์บางไฟล์ได้ ฉันไม่เคยต้องจัดการกับเรื่องนี้ดังนั้นฉันจึงสงสัยว่ามีใครสามารถช่วยฉันถอดรหัสข้อความนี้และทำให้เข้าใจถึงไฟล์ที่ไม่สามารถหาได้และฉันจะบอก linker ว่ามันอยู่ที่ไหน
ฉันรู้ว่าการอ้างอิงมาจาก libpromises.so
ซึ่งเป็นไฟล์ไบนารี ดังนั้นการเปิดมันใน vi เพียงทำให้ฉัน garble ฉันควรจะมองหา libpromises.h
? libpromises.c
?