修改 makefile

发布于 2024-10-11 04:12:25 字数 996 浏览 4 评论 0原文

我有来自 PARSEC 开源基准测试的以下文件,我希望能够使用 gcc 对其进行分析。但正如你所知,我需要提高 -pg 标志。但我这样做有困难。我尝试使用常规 g++ -pg -o files.cpp 但它不起作用。我还尝试修改在 -oi 前面放置 -pg 的 makefile,但它也给出了巨大的错误。所以现在我陷入困境,要么我做错了什么,要么 -pg 标志需要一些特殊的东西......但是单独执行时 makefile 给了我一个输出,我通过运行测试了它,它是成功的!所以我确信我的编译器接受源代码

# Makefile for parallel simulated annealer

PREFIX=${PARSECDIR}/pkgs/kernels/canneal/inst/${PARSECPLAT}

TARGET=canneal
LIBS:=$(LIBS) -lm

ifdef version
  ifeq "$(version)" "pthreads"
    CXXFLAGS+=-DENABLE_THREADS -pthread
  endif
endif

all:
    $(CXX) $(CXXFLAGS) annealer_thread.cpp -c -o annealer_thread.o
    $(CXX) $(CXXFLAGS) rng.cpp -c -o rng.o
    $(CXX) $(CXXFLAGS) netlist.cpp -c -o netlist.o
    $(CXX) $(CXXFLAGS) main.cpp -c -o main.o
    $(CXX) $(CXXFLAGS) netlist_elem.cpp -c -o netlist_elem.o
    $(CXX) $(CXXFLAGS) $(LDFLAGS) *.o $(LIBS) -o $(TARGET)

clean:
    rm -f *.o $(TARGET)

install:
    mkdir -p $(PREFIX)/bin
    cp -f $(TARGET) $(PREFIX)/bin/$(TARGET)

I have the following file from the PARSEC opensource benchmarks, and I want to be able to profile it using gcc. yet as u know i need to raise the -pg flags. yet i am having difficulties doing so. i tried to use a regular g++ -pg -o files.cpp yet it didnt work. i also tried to modify the makefile that infront of the -o i placed a -pg yet it also gave huge errors. So now i am stuck, either I did something wrong or the -pg flags require something special...yet the makefile when executed alone gave me an output which i tested by running and it was successfull! so i am sure the source code is accepted by my compiler

# Makefile for parallel simulated annealer

PREFIX=${PARSECDIR}/pkgs/kernels/canneal/inst/${PARSECPLAT}

TARGET=canneal
LIBS:=$(LIBS) -lm

ifdef version
  ifeq "$(version)" "pthreads"
    CXXFLAGS+=-DENABLE_THREADS -pthread
  endif
endif

all:
    $(CXX) $(CXXFLAGS) annealer_thread.cpp -c -o annealer_thread.o
    $(CXX) $(CXXFLAGS) rng.cpp -c -o rng.o
    $(CXX) $(CXXFLAGS) netlist.cpp -c -o netlist.o
    $(CXX) $(CXXFLAGS) main.cpp -c -o main.o
    $(CXX) $(CXXFLAGS) netlist_elem.cpp -c -o netlist_elem.o
    $(CXX) $(CXXFLAGS) $(LDFLAGS) *.o $(LIBS) -o $(TARGET)

clean:
    rm -f *.o $(TARGET)

install:
    mkdir -p $(PREFIX)/bin
    cp -f $(TARGET) $(PREFIX)/bin/$(TARGET)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

风启觞 2024-10-18 04:12:25

尝试将其添加到文件顶部附近:

CXXFLAGS+= -pg

Try adding this near the top of the file:

CXXFLAGS+= -pg
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文