乐于分享
好东西不私藏

一文搞懂常见的源码编译安装

一文搞懂常见的源码编译安装

无论是最近很火的OpenClaw、OpenCode,还是linux等开源项目。相信小伙伴都看到了他们的源码,也有很多非开发专业的小伙伴一头雾水。这主要是因为大家对源码编译安装不太了解,本文就给大家科普一下,让大家可以直接下载开源代码,并成功将程序安装到自己的电脑上使用。

P 1、最常见的开源项目是用什么语言开发的

经常登录github、gitee的小伙伴肯定看到过很多开源的项目,但小伙伴对其一头雾水。其实,我们可以从它的首页观察到一些眉目,最主要的就是它是用什么语言开发的。下面就是最火的OpenClaw开发语言描述。

从上图可以看到主要语言是TypeScript,这是一个JavaScript的超集开发语言,同样运行在node平台。到这里,我们就找到了编译它的方向了,都不用看他的readme文档。那我们常用都有哪些呢?最常看到的通常是C、C++、Java、Python、JavaScript(TypeScript和JS同类)五类,这五种语言可以用一句话概括:

  • C:直接控制硬件的系统语言
  • C++:C的增强版,适合大型项目
  • Java:一次编写,到处运行
  • JavaScript:网页交互的核心
  • Python:简单易学的万能胶水

它们编译方式和性能对比,如下:

语言
类型
需要什么运行
输出文件
性能
C
编译型
操作系统
.exe, .o
⭐⭐⭐⭐⭐
C++
编译型
操作系统
.exe, .o
⭐⭐⭐⭐⭐
Java
半编译
JVM
.class, .jar
⭐⭐⭐⭐
JavaScript
解释型
浏览器/Node.js
.js
⭐⭐⭐
Python
解释型
Python解释器
.py
⭐⭐

P 2、开发编译流程

(1)C语言是基础(linux平台为例,windows需要用Visual Studio)

i. 编写源码

// hello.c#include<stdio.h>intmain(){    printf("Hello C!\n");    return 0;}

ii. 编译运行

# 一步编译gcc hello.c -o hello# 分步编译(理解过程)gcc -c hello.c        # 生成hello.o(机器码片段)gcc hello.o -o hello  # 链接成完整程序# 运行./hello

iii. 关键理解

  • .c文件:你写的源代码
  • .o文件:编译后的机器码(未链接)
  • 可执行文件:链接后的完整程序
  • gcc:GNU编译器套件

(2)C++是面向对象的C

i. 编写源码

// hello.cpp#include<iostream>using namespace std;intmain(){    cout << "Hello C++!" << endl;    return 0;}

ii. 编译运行

# 使用g++编译器g++ hello.cpp -o hello./hello

iii. 与C的区别

  • 使用 g++ 而不是 gcc
  • 支持类、对象等高级特性
  • 编译时检查更严格

(3)Java跨平台老大哥

i. 编写源码

// Hello.javapublic class Hello {    publicstaticvoidmain(String[] args) {        System.out.println("Hello Java!");    }}

ii .编译运行

# 编译成字节码javac Hello.java    # 生成 Hello.class# 通过JVM运行java Hello

iii. 打包部署

# 打包成JAR文件jar cvf myapp.jar Hello.class# 运行JAR包java -jar myapp.jar

iv .核心概念

  • .java:源代码
  • .class:字节码(不是机器码)
  • JVM:Java虚拟机,跨平台的关键
  • JAR:Java归档文件(类似ZIP)

(4)JavaScript是网页的脚本语言

i .它应该在浏览器中运行

// hello.jsconsole.log("Hello JavaScript!");
<!-- index.html --><scriptsrc="hello.js"></script>

ii. 也可以在Node.js环境运行

# 安装Node.js后node hello.js

iii. TypeScript和开发流程

# TypeScript需要编译成.js文件tsc hello.ts    # 生成hello.js# 使用打包工具npm install     # 安装依赖npm run build   # 构建项目

(5)Python即写即用

i. 直接运行

# hello.pyprint("Hello Python!")
# bashpython hello.py

ii. 打包后运行

# 安装打包工具pip install pyinstaller# 打包pyinstaller --onefile hello.py# 运行(无需Python环境)./dist/hello   # Linux/Macdist/hello.exe # Windows
 End 转角  ·  遇见  ·  程序猿
————————-
那是一抹淡淡的微光

它是数字世界里的一把杀猪刀

却总能巧夺天工

它的世界是纯粹0、1组合

却总能创造无尽幻想

……

本公众号关注数据价值分析、编程学习,将不定期更新社会热点数据分析结果、编程技巧,分享数据分析工具、方法、学习等内容,欢迎有兴趣的小伙伴加入。

本站文章均为手工撰写未经允许谢绝转载:夜雨聆风 » 一文搞懂常见的源码编译安装

猜你喜欢

  • 暂无文章