首页 > 其他分享 >golang编译go build -ldflags "-s -w"的 解释

golang编译go build -ldflags "-s -w"的 解释

时间:2023-09-04 11:13:07浏览次数:39  
标签:可执行文件 标志 golang build ldflags go

go build -ldflags "-s -w" 是一个 Go 语言的构建命令,其中使用了 -ldflags 参数来传递一些额外的链接器标志。

这个命令中,-ldflags "-s -w" 传递了两个标志:

  1. -s:该标志会禁止生成可执行文件中的符号表信息,这样在执行文件时就不会暴露源代码中的函数名、变量名等符号信息。这有助于保护代码的隐私和安全。
  2. -w:该标志会禁止生成可执行文件的启动信息,也就是在执行文件时会忽略包含在文件头部的运行时信息。这个标志主要用于创建不依赖于动态链接库的可执行文件,从而避免了需要依赖动态链接库的问题。

通过使用这两个标志,可以生成一个更加简洁和独立的可执行文件,同时保护了代码的隐私和安全。

标签:可执行文件,标志,golang,build,ldflags,go
From: https://www.cnblogs.com/taoshihan/p/17676400.html

相关文章

  • Java中使用ProcessBuilder执行命令
    在Java中我们可以使用ProcessBuilder来创建一个进程并执行命令。在使用前我们首先了了解下两个程序。一、认识命令行解释程序不论在windows中还是linux中都可以通过命令行方式来执行某些程序或脚本,而解析命令行的程序被称为shell,其本身是一种命令行解释器,用于与操作系统进行交互和......
  • golang base64解码
    解码过程1.使用标准库的base64.StdEncoding.DecodeString 最开始是印象标准库有一个base64.StdEncoding.DecodeString方法可以解码,就直接使用了这个方法packagemainimport("encoding/base64""fmt")funcmain(){encrypt:="Cf1WA2nBMo3H9G2UPhlLBBVB......
  • golang realize数据库简介
    存储与数据库简介一个提供了读写,控制类接口,能够安全有效的把数据持久化的软件,就可以成为存储系统。-存储系统概览存储系统特点性能敏感既简单又复杂容易受硬件影响存储器层级结构单机存储栈RAID技术单块大容量磁盘的价格>多块小容量的磁盘单块磁盘的写入性能<多块磁盘的并发写入......
  • jetbrains GoLang设置编写proto文件的实时模板
    具体步骤1. 首先,先创建一个模板组,我这里创建为"proto"。2.下面这张图是我的模板组中的内容3.具体实时模板缩写:enum描述:enumname{}模板文字:enum$name${$END$}适用于:协议缓存区中的Other缩写:import描述:import"";模板文字:import"$file$";$END$适用......
  • 第一次接触golang的体验
    ay01今天是第一次接触golang,之前学java用了不少精力,借着这次的青训营有机会学习go来开发后端,是一次难得的经历。经过这几个小时的学习,已经了解了大部分基础语法,说实话,比起java来说,语法还是有很大不同,适应起来比较慢,网络上的教程也比较少,一个scan语法我都花了不少时间,真是惭愧。不......
  • 苹果证书(免费) + 打包ipa + 上传app store在Hbuilder里面打包ipa包到没越狱的手机上安
    苹果证书(免费)+打包ipa+上传appstore 在Hbuilder里面打包ipa包到没越狱的手机上安装时,是需要p12文件跟.mobileprovision的证书的,这里可以超简单不需要Mac也可以申请到前提:先安装好Appuploader——>http://www.applicationloader.net/blog/zh/72.html1、打开软件,使用开发者账......
  • StringBuilder类分享(2)
    一、StringBuilder说明StringBuilder是一个可变的字符序列。这个类提供了一个与StringBuffer兼容的API,但不保证同步,即StringBuilder不是线程安全的,而StringBuffer是线程安全的。显然,StringBuilder要运行的更快一点。这个类被设计为在字符串缓冲区所在的地方作为StringBuffer的临时......
  • hbuilderx
     HBuilderX-高效极客技巧(dcloud.io) 装一个node,在装一个HBuilder,在装一个小程序开发工具 cmd到student目录,npmrundev本地启动浏览器输入http://localhost:3000/可以浏览,打包npmrunbuild清除npm缓存的命令: npmcacheclean--force......
  • docker build过程中遇到错误qemu-x86_64: Could not open '/lib64/ld-linux-x86-64.so
    Removingintermediatecontainer70af516d5d6b--->a69229847153Step5/6:RUNGO111MODULE="on"gogetgithub.com/jsonnet-bundler/jsonnet-bundler/cmd/jb;ln-s$(goenvGOPATH)/bin/jb/usr/bin/jb--->Runningin13545862fffeqemu-x86_64:......
  • StringBuilder类分享(1)
    一、StringBuilder说明StringBuilder是一个可变的字符序列。这个类提供了一个与StringBuffer兼容的API,但不保证同步,即StringBuilder不是线程安全的,而StringBuffer是线程安全的。显然,StringBuilder要运行的更快一点。这个类被设计为在字符串缓冲区所在的地方作为StringBuffer的临时......