Quantcast
Channel: Active questions tagged gcc - Stack Overflow
Viewing all articles
Browse latest Browse all 22307

/usr/bin/ld: skipping incompatible /home/imuser/intelFPGA/18.1/hld/host/arm32/lib/libalteracl.so when searching for -lalteracl

$
0
0

guys. I'm newbie to this PipeCNN. When i want to run the makefile, it showed 'skipping incompatible for a binary file when searching for binary file.

g++   ./host/main.o ../common/ocl_util.o ../common/timer.o -o run.exe -L/home/imuser/intelFPGA/18.1/hld/board/terasic/de1_soc/arm32/lib -L/home/imuser/intelFPGA/18.1/hld/host/arm32/lib -L/home/imuser/intelFPGA/18.1/hld/host/linux64/lib -Wl,--no-as-needed -lalteracl -lintel_soc32_mmd -lstdc++ -lelf /usr/bin/ld: skipping incompatible /home/imuser/intelFPGA/18.1/hld/host/arm32/lib/libalteracl.so when searching for -lalteracl/usr/bin/ld: skipping incompatible /home/imuser/intelFPGA/18.1/hld/board/terasic/de1_soc/arm32/lib/libintel_soc32_mmd.so when searching for -lintel_soc32_mmd/usr/bin/ld: cannot find -lintel_soc32_mmd/usr/bin/ld: skipping incompatible /home/imuser/intelFPGA/18.1/hld/host/arm32/lib/libelf.so when searching for -lelfcollect2: error: ld returned 1 exit statusMakefile:168: recipe for target 'run.exe' failedmake: *** [run.exe] Error 1

location of error binary code can found in another folder

libalteracl.so -->  /intelFPGA/18.1/hld/host/linux64/liblibintel_soc32_mmd.so --> 32bit filelibelf.so -->  /intelFPGA/18.1/hld/host/linux64/lib

check pc determine and set the build and host architecture for package building

dpkg --print-architecture --> amd64dpkg --print-foreign-architectures --> i386

Makefile#

#set source and target for host

HOST_EXE  = run.exeHOST_SRCS = ./host/main.cpp ../common/ocl_util.cpp ../common/timer.cppHOST_OBJS = $(HOST_SRCS:%.cpp=%.o)HOST_INCS = ../commonHOST_DEBUG =#if you are loading images from OpenCV interfaces please set to 1USE_OPENCV = 1#set source and target for device#supported vendors are xilinx, altera, amdVENDOR = altera#select the host archecture  x86|arm32PLATFORM = x86#optinal flows are hw|hw_emu|sw_emuFLOW        = sw_emuKERNEL_SRCS = ./device/conv_pipe.clKERNEL_NAME = convKERNEL_DEFS =KERNEL_INCS = KERNEL_DEBUG = 1#additional pragma for xilinxCU_NUM = 1MAX_MEM_PORT = 0MEM_PORT_SIZE = 512#select the device binary nameifeq ($(VENDOR),xilinx)DEV_EXE = $(KERNEL_NAME).xclbinelse ifeq ($(VENDOR),altera)DEV_EXE = $(KERNEL_NAME).aocxelse ifeq ($(VENDOR),amd)DEV_EXE =endif#host compiler optionsCROSS-COMPILE = arm-linux-gnueabihf-ifeq ($(PLATFORM),x86)CXX := g++ifeq ($(USE_OPENCV),1)#add your OpenCV PATH hereOCV_INCLUDES = -I/usr/local/include/OCV_LIBDIRS = -L/usr/local/lib OCV_LIBS =  -lopencv_core -lopencv_imgproc -lopencv_highgui -lopencv_mlendifelse ifeq ($(PLATFORM),arm32)CXX := $(CROSS-COMPILE)g++ifeq ($(USE_OPENCV),1)#add your cross compile OpenCV PATH hereOCV_INCLUDES = -I/usr/local/opencv-arm/include/OCV_LIBDIRS = -L/usr/local/opencv-arm/lib OCV_LIBS =  -lopencv_core -lopencv_imgproc -lopencv_highgui -lopencv_mlendifendif#select whether use OpenCV or notifeq ($(USE_OPENCV),1)CXXFLAGS = -g -Wall -std=c++11 -DUSE_OPENCVelseCXXFLAGS = -g -Wall -std=c++11endif#select whether manually launch free-run kernelsifeq ($(FLOW),sw_emu)CXXFLAGS += -DSW_EMUendififeq ($(VENDOR),xilinx)COMP_CONFIG = -I$(XILINX_SDX)/runtime/include/1_2 -I$(HOST_INCS)  -DFPGA_DEVICE -DXILINXLINK_CONFIG = -L$(XILINX_SDX)/runtime/lib/x86_64 -lxilinxopenclelse ifeq ($(VENDOR),altera)COMP_CONFIG = $(shell aocl compile-config) -I$(HOST_INCS)  -DFPGA_DEVICELINK_CONFIG = $(shell aocl link-config)else ifeq ($(VENDOR),amd)DEV_EXE =endif#opencl compiler options#xilinxifeq ($(VENDOR),xilinx)OCC = $(XILINX_SDX)/bin/xocc -DXILINXOCCFLAGS = --platform xilinx:kcu1500:4ddr-xpr:4.0 -t $(FLOW) -O2  --kernel_frequency 200  --save-temps  --report system \--memory_port_data_width memWrite:32 \--memory_port_data_width memRead:512 \--nk memWrite:1  --nk coreConv:1  --nk lrn:1  --nk maxPool:1  --nk memRead:1 \#--xp misc:map_connect=add.kernel.memRead_1.M_AXI_GMEM0.core.OCL_REGION_0.M00_AXI\#--xp misc:map_connect=add.kernel.memRead_1.M_AXI_GMEM1.core.OCL_REGION_0.M01_AXI\#--xp misc:map_connect=add.kernel.memRead_1.M_AXI_GMEM2.core.OCL_REGION_0.M02_AXI\#--xp misc:map_connect=add.kernel.memWrite_1.M_AXI_GMEM0.core.OCL_REGION_0.M00_AXI\#--xp misc:map_connect=add.kernel.lrn_1.M_AXI_GMEM.core.OCL_REGION_0.M00_AXI#--max_memory_ports lrn\#--xp misc:map_connect=add.kernel.lrn_1.M_AXI_GMEM0.core.OCL_REGION_0.M00_AXI\#--xp misc:map_connect=add.kernel.lrn_1.M_AXI_GMEM1.core.OCL_REGION_0.M01_AXI#memory optimization for xilinxifeq ($(MAX_MEM_PORT), 1)OCCFLAGS += --max_memory_ports allOCCFLAGS += --memory_port_data_width all:$(MEM_PORT_SIZE)endif#alteraelse ifeq ($(VENDOR),altera)OCC = aocifeq ($(FLOW),sw_emu)OCCFLAGS = -v --report -march=emulator -I device/RTL -L device/RTL -l rtl_lib.aoclib else ifeq ($(FLOW),hw)OCCFLAGS = -v --report --profile -I device/RTL -L device/RTL -l rtl_lib.aoclib endif#amdelse ifeq ($(VENDOR),amd)OCC =OCCFLAGS =endif#debug optionifeq ($(KERNEL_DEBUG),1)    OCCFLAGS += -gendif.PHONY: allall: host fpga.PHONY: hosthost: $(HOST_EXE).PHONY: fpgafpga: $(DEV_EXE)$(HOST_EXE): $(HOST_OBJS)    $(CXX) $(OCV_LIBDIRS) $(OCV_INCLUDES) $(HOST_OBJS) -o $@ $(LINK_CONFIG) $(OCV_LIBS)%.o: %.cpp    $(CXX) $(OCV_LIBDIRS) $(OCV_INCLUDES) $(CXXFLAGS) -c $< -o $@ $(COMP_CONFIG) $(OCV_LIBS)$(DEV_EXE): $(KERNEL_SRCS)    $(OCC) $(OCCFLAGS) $< -o $@.PHONY: cleanclean:    rm -rf *.xclbin *.rpt *.xtxt *.json *.dir *.aocx *.aoco *.exe xocc* sdaccel* ./device/*.ll ./host/*.o ../common/*.o *.log *.jou *.mon 

Question:May i know how to solve this problem? Since I had tried to using g++-multilib and g++-arm-linux-gnueabi, is still cannot work.What i know is that the bindary code is 32bit but then my Ubuntu is 64 bit.My CXX is g++when i had changed CXX to -m32, it can compile but the run.exe does not create.


Viewing all articles
Browse latest Browse all 22307

Latest Images

Trending Articles



Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>