gpt4 book ai didi

linux - 用一个较短的交换 unix 编译器标志

转载 作者:太空宇宙 更新时间:2023-11-04 09:46:10 24 4
gpt4 key购买 nike

我一直在 linux 中运行 ns3 求和,每次编译我都必须输入

g++ -Wall -o simulacija simulacija.cc -DNS3_ASSERT_ENABLE -DNS3_LOG_ENABLE `pkg-config --libs --cflags
libns3.16-core-debug libns3.16-network-debug libns3.16-applications-debug libns3.16-internet-debug
libns3.16-point-to-point-debug libns3.16-point-to-point-layout-debug libns3.16-csma-debug
libns3.16-csma-layout-debug libns3.16-topology-read-debug libns3.16-wifi-debug`

有没有办法将标志缩短为例如:

g++ -Wall simulacija.cc -o simulacija -my_params

谢谢

最佳答案

GCC 编译器支持使用 @ 符号在文件中嵌入一系列参数。阅读接近尾声的 GCC overall options页面。

所以你可以在一些文件 params.args 中放入以下几行

-Wall
-I /usr/local
-DNS3_ASSERT_ENABLE
-DNS3_LOG_ENABLE
-O

然后调用

g++ @params.args  simulacija.cc -o simulacija

您可以使用Makefile 规则来构建params.args(例如使用pkg-config 等...)

其实是时候学习如何使用GNU make了.

请注意 @ 选项不被其他一些编译器理解,例如 GCC 处理它。

关于linux - 用一个较短的交换 unix 编译器标志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16118646/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com