如何在 linux 中使用 Makefile 编译 tensorflow c_api

Posted

技术标签:

【中文标题】如何在 linux 中使用 Makefile 编译 tensorflow c_api【英文标题】:How to compile tensorflow c_api using Makefile in linux 【发布时间】:2019-07-29 19:46:15 【问题描述】:

我正在尝试使用 Makefile 编译 tensorflow c_api。我需要帮助才能在 makefile 中添加 tensorflow 库。我在 Ubuntu 上运行它。

这里我附上了项目的文件夹结构, folder structure

我还在下面添加了 Makefile。

CC = g++
CFLAGS = -c -Wall
INCLUDES = -I "tensorflow/c"

LIBS =-L "lib" -ltensorflow -ltensorflow_framework
all : exec

exec : simple.o
    $(CC) -o exec simple.o $(INCLUDES) $(LIBS)

.cpp.o:
    $(CC) $(CFLAGS) $< 

clean: 
    rm -rf *.

程序编译没有错误,

g++ -c -Wall simple.cpp

g++ -o exec simple.o -I "tensorflow/c" -L "lib" -ltensorflow -ltensorflow_framework

但是当我运行 exec 时出现以下错误,

./exec:加载共享库时出错:libtensorflow.so.1:无法打开共享对象文件:没有这样的文件或目录

【问题讨论】:

【参考方案1】:

您必须确保libLD_LIBRARY_PATH 上。

export LD_LIBRARY_PATH=`pwd`/lib:$LD_LIBRARY_PATH
./exec

【讨论】:

酷 :) 玩得开心 :)

以上是关于如何在 linux 中使用 Makefile 编译 tensorflow c_api的主要内容,如果未能解决你的问题,请参考以下文章

如何提高linux makefile的编译速度

LINUX网络编程Makefile文件

Linux开发-makefile

Linux2.6 如何编写Makefile,使驱动程序能够编译链接静态库

关于Linux内核编译中的Makefile

如何使用CMAKE生成makefile文件