使sym链接到可执行文件(代码片段)

author author     2023-05-08     622

关键词:

我有一个shell脚本compileRun,它编译并执行C源文件。

#!/bin/sh
gcc bar.c -o ./bar
./bar

我真正希望实现的是我们何时

ln -s compileRun bar.c
./bar.c

我希望bar.c能够编译和执行。我感谢任何帮助。

答案

我理解OP想要什么。

只有当源文件显式存储在与符号链接不同的地方时,以下内容才有效。可以在bash脚本中将路径添加到$0

你应该在你的bash脚本中用somefile.c替换$0

此特殊shell表达式返回当前正在执行的文件的名称。在你的情况下,bar.c

例如:

ln execute_c_file my_file.c
./my_file.c

如果my_file.c是一个正在运行的bash脚本,$0将评估为my_file.c

我建议你编辑你的问题以清除代码的语义/含义。

静态库中的符号有时会链接到可执行文件,有时不会

】静态库中的符号有时会链接到可执行文件,有时不会【英文标题】:symbolsinstaticlibrarysometimesgotlinkedintoexecutable,sometimesnot【发布时间】:2019-01-1010:27:59【问题描述】:我有一个静态库,它是使用g++从linux上的许多cpp文件生成的。... 查看详情

从源代码到可执行文件(代码片段)

请简述程序从源代码到可执行程序的过程,面试经常会被问到!这是一个屡见不鲜的问题,总而言之就如下四个过程:预处理比如有test.c源文件,内容如下:#include<stdio.h>/*主函数*/intmain(void) printf("h... 查看详情

从源代码到可执行文件(代码片段)

请简述程序从源代码到可执行程序的过程,面试经常会被问到!这是一个屡见不鲜的问题,总而言之就如下四个过程:预处理比如有test.c源文件,内容如下:#include<stdio.h>/*主函数*/intmain(void) printf("h... 查看详情

一个c++源文件从文本到可执行文件经历的过程(代码片段)

一个C++源文件从文本到可执行文件经历的过程以HelloWorld为例进行说明首先我们编写一个cpp源程序test.cpp#include<iostream>usingnamespacestd;intmain()cout<<"helloworld"<<endl;return0;使用g++编译命令时g++-otesttest.cppGcc编 查看详情

从源代码到可执行文件(代码片段)

请简述程序从源代码到可执行程序的过程,面试经常会被问到!这是一个屡见不鲜的问题,总而言之就如下四个过程:预处理比如有test.c源文件,内容如下:#include<stdio.h>/*主函数*/intmain(void) printf("h... 查看详情

第20课链接过程简介(代码片段)

...目标文件,这些目标文件如何生成最终的可执行程序呢?链接器: 静态链接: 静态链接就是将库文件或者目标文件直接加入到可执行文件当中。Linux下静态库的创建和使用: 静态库示例程序:20-1.c1#include<stdio.h>2... 查看详情

从源代码到可执行程序:四个步骤与详解(代码片段)

...处理(Prepressing)、编译(Compilation)、汇编(Assembly)和链接(L 查看详情

c程序(代码片段)

C程序到可执行程序的编译链接过程预处理-->编译-->汇编-->链接预处理用于将所有的#include头文件以及宏定义替换成其真正的内容编译指将经过预处理之后的程序转换成特定汇编代码(assemblycode)的过程汇编过程将上一步的汇... 查看详情

arm链接脚本(代码片段)

一.为什么需要链接脚本  1.1.从源码到可执行程序(主要有三个步骤:预编译、编译、链接)    1.1.1. 预编译      a. 预编译器执行。譬如C中的宏定义就是由预编译器处理,注释等也是由预编译器处理的。... 查看详情

源文件如何转换到可执行文件

从源文件到可执行文件 1)计算机只能运行本地代码(机器语言)由cpu进行解析源代码(构成源文件.c/.java)-------(翻译)---------本地代码   2)本地代码:例如Windows下的.exe文件的内容---------(Dump)-----------2位16... 查看详情

sh使文件可执行(代码片段)

查看详情

编写动态链接库(代码片段)

...重复无用劳动了。所以,可以自己动手写一个自己的动态链接库,保存起来。下次用到只需要加上库就ok了,这样既方便了自己又对动态链接库本身的工作原理理解更深了。windows的链接库和linux的链接库在实现原理上大同小异,... 查看详情

gcc编译过程与动态链接库和静态链接库(代码片段)

...hellospeak.cpp选项-c用来告诉编译器编译源代码但不要执行链接,输出结果为对象文件。文件默认名与源码文件名相同,只是将其后缀变为.o。例如,上面的命令将编译源码文件hellospeak.cpp并生成对象文件hellospeak.o;下面这条命令将... 查看详情

使用 CMake 将资源(例如,着色器代码;图像)嵌入到可执行文件/库中

】使用CMake将资源(例如,着色器代码;图像)嵌入到可执行文件/库中【英文标题】:Embedresources(eg,shadercode;images)intoexecutable/librarywithCMake【发布时间】:2012-08-0212:54:50【问题描述】:我正在用C++编写一个应用程序,它依赖于我... 查看详情

将所有库依赖项包含到可执行文件中 Linux

...?如果是这样,我该怎么做?【问题讨论】:您可以静态链接库,创建一个包含大多 查看详情

6c_宏定义与预处理函数与函数库(代码片段)

...译)->elf可执行程序源码.c->(编译)->目标文件.o->(链接)->elf可执行程序源码.c->(编译)->汇编文件.S->(汇编)->目标文件.o->(链接)->elf可执行程序源码.c->(预处理)->预处理过的.i源文件->(编译)-> 查看详情

#从源码到可执行程序

...行程序从源码到可执行程序1.概述2.预编译3.编译4.汇编5.链接1.概述  很多编译型语言的源码都需要被编译之后才可以正常的运行,如常用的c语言,它需通过编辑器的编译把它变成0101序列的机器语言才可以在指定机器上运... 查看详情

第1章linux系统编程入门:动态链接库的创建和使用(代码片段)

...章目录动态库的制作动态库的基本工作原理如何使用动态链接库?法一:添加环境变量法二:修改etc/ld.so.cache文件列表动态库的制作一、命名规则Linux:libxxx.solib:前缀(固定)xxx:库的名字,自己起.so:后缀&#x... 查看详情