Showing posts with label rustup. Show all posts
Showing posts with label rustup. Show all posts

Monday, July 15, 2024

cargo-generate bug iconv libiconv match libraries

linking error between macOS and macport provided libiconv library #1208

The problem is widespread and long lasting with many long discussions.

_libiconv or _iconv undefined symbol on Mac OSX

 

R-Problems with iconv on macOS

Longstanding GHC linking issues when multiple iconv libraries are installed on macOS (Haskell #18743)

 

long discussion:

MacOS iconv linkage misdetection (also deprecation warnings) #830

 

libiconv breaks compatibility with OS-provided #57821

 

rav1e @0.6.6: iconv linking fails, expecting symbols from MacOS's iconv lib #68026

rav1e: build fails due to git_allocator missing members #68178


 

Examples of possible fixes: 

ghc: Bugfixes for test and iconv linking #8523

Fix i/macOS libc++ initialization on early instrumentation #194

frida/frida-core

 

solution: libiconv on Mac OS X


FindIconv: Problem on macOS with mac ports


I can't imagine how cmake could possibly help you with this problem. The only thing cmake does is tell you where libiconv is located. It should not matter at all to your application whether it tells you about a system copy of libiconv like the one in /usr on macOS or a third-party copy of libiconv like the one in /opt/local provided by MacPorts, so long as you use both the headers and the library from the same place. The only way the problem you're experiencing could occur is if you're using the headers from one place and the library from another, so Don't Do That.

 

Friday, May 24, 2024

Part 2: rustup; why; using git

 

rustup; why

Turns out rustup is essential to many projects (zed, redox).
 

curl –proto ‘=https’ –tlsv1.2 -sSf https://sh.rustup.rs | sh

https://www.rust-lang.org/learn/get-started
Don't forget to update every once in a while (see Issue #1208 ).

rustup update
 
Ignore what I said:
 
rustup self uninstall

https://code2care.org/rust/uninstall-rust-lang-from-mac-linux-or-ubuntu/

 

Using git


Thursday, May 9, 2024

Why Linux will take over the world!

Linux reaches 4%

   will take over in 2040!

 No. 

Linux distributions can be usable even by regular folk depending on how they use them.  For web browsing, working on documents, spreadsheets and drawing its usable its fine.

 But once you go off a very narrow path of those basic tasks you may wind up fiddling with apt, peering into the terminal, trying to install package mostly succeeding but sometimes failing in mysterious ways.

 


LibreOffice endless fonts menu

font snafu reponse to EULA fails?

virtualbox additions barf (gcc-11 or gcc-12??); works from virtualbox menu but not from inside the vm session.

installing rust on ubuntu confusion no rustup in the 22.04 repo!



-----

  4% worldwide in 2022

Wednesday, April 24, 2024

learning rust; installing rustup; macchina; build redox

rust / rustup /  cargo
 
rust

the language 

https://tourofrust.com/index.html

redox os (unix-like os written in rust)

rustup

macports had to migrate, old install was on Monterey now on Ventura 13.6.6

setup steps (with brew)

Install rustup package manager first and then have rustup install rustc, cargo.

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh rustup toolchain install stable

 

the rust compiler is rustc

To clean up debug and other build files:

cargo clean

Apple Silicon Development Set up for Rust


Using Rust from Python

Pyo3

 

 

Crux

Cross-platform app development in Rust

Learn how to use Crux in your project

 

 

GUI Tool kits

slint

iced 

Tauri 2.0

  https://www.youtube.com/watch?v=rC4FCS-oMpg

  https://github.com/makepad/makepad

 
 
 
Comfy - 2d game engine in Rust/wgpu

Leaving Rust gamedev after 3 years

Miniquad/Macroquad

  Using D lang to mix C++ and Rust.

www.tipi.build

https://www.youtube.com/watch?v=z6j-lCOi4XM

Corrosion.rs c++ rust bridge


apps

warp (advanced feature terminal; requires login)

gitoxide

media

Writing an OS in Rust

  Philipp Oppermann's blog

  

Brodie interviews Jeremy Soller developer of Redox OS

Building a secure Operating System (Redox OS) with Rust (Interview)

 

https://areweguiyet.com/

zed.dev

A fast new editor to try:

zed.dev (macos, build on linux)

Configuring Rust Analyzer

 

run PopOS arm64

Reddit discussion: Installation guide for Pop!_OS (arm64) on Apple Silicon
  works great using UTM.
  Installation Guide.
 
 UTM cheat sheet

disabling GNOME

Learn Rust

 Crust of Rust by Jon Gjengset



nala install pop_OS!

apt search nala
sudo apt install nala

sudo nala install curl

## install rustup toolchain manager
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

## install rustc and cargo
rustup toolchain install stable

sudo nala install git
sudo nala install build-essential
sudo nala install clang
sudo nala install strip-nondeterminism


 

compile macchina on pop_OS!

# install macchina alt to neofetch
# https://github.com/Macchina-CLI/macchina/wiki/Installation#build-for-everything-else
#
git clone https://github.com/grtcdr/macchina
cd macchina
cargo build --release

strip target/release/macchina
cargo run --release

Build redox disk img

mkdir -p ~/tryredox
cd ~/tryredox/git clone https://gitlab.redox-os.org/redox-os/redox.git --origin upstream --recursive
cd redox/
  370  make pull
  371  pwd
  372  curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  373  nala search rust
  374  which rustc
  375  which cargo
  376  nala search rustc
  377  nala --help
  378  nala remove rustc
  379  sudo nala remove rustc
  380  curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  381  exit
  382  which rust
  383  which rustc
  384  pwd
  385  cd tryredox/redox/
  386  make pull
  387  rustup --help
  388  cargo install --force cbindgen
  389  make pull
  390  cargo install --force nasm
  391  make pull
  392  nala search nasm
  393  nala install nasm
  394  sudo nala install nasm
  395  pwd
  396  make pull
  397  ls
  398  more build.sh
  399  ls
  400  pwd
  401  more README.md
  402  ./bootstrap.sh -d
  403  rustup toolchain list
  404  time make all
  405  ll
  406  cd build
  407  cd ..
  408  more README.md
  409  cd build
  410  ls
  411  cd x86_64/
  412  ls
  413  cd desktop/
  414  ll
  415  df -h .
  416  mount
  417  neofetch
  418  uptime
  419  sudo shutdown -h now