1
鏈接已編譯的程序時出現問題(有關詳細信息,請參見github repo)。在OSX上設置包含鏈接程序(ld)的目錄
OSX的具體生成文件部分是在這裏:
CFLAGS = -v -arch x86_64 -Wall -fPIC -O2 -I./include $(OPTS)
LDFLAGS = -v -arch x86_64 -lpthread /usr/local/lib/libportaudio.a -framework CoreAudio -framework AudioToolbox -framework AudioUnit -framework Carbon
EXECUTABLE ?= squeezelite-osx
include Makefile
彙編工作正常,但在將它鏈接失敗:
Apple LLVM version 7.0.2 (clang-700.1.81)
Target: x86_64-apple-darwin15.2.0
Thread model: posix
"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" -demangle -dynamic -arch x86_64 -macosx_version_min 10.11.0 -syslibroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk -o squeezelite-osx main.o slimproto.o buffer.o stream.o utils.o output.o output_alsa.o output_pa.o output_stdout.o output_pack.o decode.o flac.o pcm.o mad.o vorbis.o faad.o mpg.o dsd.o dop.o dsd2pcm/dsd2pcm.o process.o resample.o -lpthread /usr/local/lib/libportaudio.a -framework CoreAudio -framework AudioToolbox -framework AudioUnit -framework Carbon -lFLAC -lmad -lvorbisfile -lfaad -lmpg123 -lsoxr -lSystem /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/7.0.2/lib/darwin/libclang_rt.osx.a
ld: library not found for -lFLAC
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [squeezelite-osx] Error 1
未發現是文件夾/usr/local/include
在圖書館我想我必須將此路徑添加到鏈接器的包含路徑。
如何將路徑/usr/local/include
添加到鏈接器的包含路徑?
謝謝 - 這很好。有沒有類似於'''/ usr/local/lib/libportaudio.a'''的文件來避免指定路徑? – Rainer
@Rainer一旦你指定了它,它就適用於所有庫(即提供了一個額外的地方來尋找它們)。如果您添加'-lportaudio'選項,它應該找到該文件。 – trojanfoe
確定 - 用'''-portaudio'''替換''/ usr/local/lib/libportaudio.a''並編譯。非常感謝。 – Rainer