2017-03-03 20 views
0

我遇到了一個問題,試圖在鹵化物代碼中調用邊界條件。我正在使用來自站點的二進制版本halide-mac-64-trunk ...。我沒有其他問題調用其他鹵化物功能。帶邊界條件的鹵化物鏈接器錯誤

Image input = load_image(argv [1]);

bounded_luma = Halide :: BoundaryConditions :: repeat_edge(input);

爲架構x86_64的未定義符號: 「鹵化物:: BoundaryConditions :: repeat_edge(鹵化物:: Func鍵常量&,性病:: __ 1 ::矢量,性病:: __ 1 ::分配器>>常量&)」,引用from: main.o中的Halide :: Func Halide :: BoundaryConditions :: repeat_edge,int,int,int,int>(Halide :: Buffer,int,int,int,int) ld:symbol(s)not found對於體系結構x86_64

回答

0

__1s表明它可能是libHalide是使用libC++編譯的,而您正在使用libstdC++編譯(反之亦然)。嘗試將-stdlib = libC++或-stdlib = libstdC++添加到您的編譯標誌。

+0

使用-stdlib = libstdC++時遇到錯誤#include

+0

__1s是一個提示,它讓我檢查項目包管理配置。這是罪魁禍首。 –