termux / termux-packages Goto Github PK
View Code? Open in Web Editor NEWA package build system for Termux.
Home Page: https://termux.dev
License: Other
A package build system for Termux.
Home Page: https://termux.dev
License: Other
The pip tool in python tries to use a hard link (which does not work on Android 6) for its lock file implementation, so ends up in:
File "/data/data/com.termux/files/usr/lib/python2.7/site-packages/pip/_vendor/lockfile/linklockfile.py", line 49, in acquire
time.sleep(timeout is not None and timeout/10 or 0.1)
"luajit -b" does not work (produces an error message). It expects several *.lua files in $PREFIX/share/luajit-2.0.4/jit/, which are not installed. If I copy those files from another system manually, the broken functionality is restored. So it's probably just a matter of including the missing files into the luajit package.
First of all: wow, great app. First time my tablet is usable!!
I have installed g++ and nano to test some things, but I can't build a simple program:
#include <iostream>
int main()
{
cout << "foobar\n";
return 0;
}
Because I get undefined references to STL stuff. I saw that there is a libgnustl installed and I tried manually linking against that, but it didn't work either. Anything I am not doing right?
Thanks!
:echo has('python') " result 0
many plugin need vim compiled with +python/python3
Package compilation fails with cgo
$ go get -v -x github.com/onsi/ginkgo/ginkgo
WORK=/data/data/com.termux/files/usr/tmp/go-build603239337
runtime/cgo
mkdir -p $WORK/runtime/cgo/_obj/
mkdir -p $WORK/runtime/
cd /data/data/com.termux/files/usr/lib/go/src/runtime/cgo
CGO_LDFLAGS="-g" "-O2" "-lpthread" /data/data/com.termux/files/usr/lib/go/pkg/tool/linux_arm/cgo -objdir $WORK/runtime/cgo/_obj/ -importpath runtime/cgo -import_runtime_cgo=false -import_syscall=false -- -I $WORK/runtime/cgo/_obj/ -Wall -Werror cgo.go
# runtime/cgo
exec: "arm-linux-androideabi-gcc": executable file not found in $PATH
For the android app?
Hello,
First of all, well done your software is awesome !
I encounter a problem with g++
main.cpp :
int main(int argc, char** argv){
std::cout << "bigboy" << std::endl;
}
$ g++ main.cpp -o main
/data/data/com.termux/files/usr/tmp//ccLwzPUy.o: In function main': main.cpp:(.text+0x34): undefined reference to
std::basic_ostream<char, std::char_traits >& std::operator<< std::char_traits(std::basic_ostream<char, std::char_traits >&, char const_)'
main.cpp:(.text+0x4c): undefined reference to std::ostream::operator<<(std::ostream& (_)(std::ostream&))' main.cpp:(.text+0x64): undefined reference to
std::cout'
main.cpp:(.text+0x6c): undefined reference tostd::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&)' /data/data/com.termux/files/usr/tmp//ccLwzPUy.o: In function
__static_initialization_and_destruction_0(int, int)':
main.cpp:(.text+0xb4): undefined reference tostd::ios_base::Init::Init()' main.cpp:(.text+0xf4): undefined reference to
std::ios_base::Init::~Init()'
collect2: error: ld returned 1 exit status
Everything seems like the std lib isn't installed.
The thing is I can't find any matching package.
From @nico202 on November 19, 2015 15:58
Hi, has someone tried getting nix to work inside termux? This would mean to have lot of packages available.
Here's a guide to get it on various distro.
Thanks, Nicolò
Copied from original issue: termux/termux-app#18
I was able to build a bunch native gems now! However, I'm getting stuck on nokogiri, which can't find iconv (which I installed via apt).
Steps to reproduce:
chsh -s zsh
/data/data/com.termux/files/usr/bin/zsh is not an executable file!
Used version:
$ zsh --version
zsh 5.1.1 (arm-unknown-linux-androideabi)
You are using it to fetch the sources, but haven't installed it during ubuntu-setup.sh
.
i am tryng to compile openwrt with termux, unfortunately i cannot find packages for zlib seq and stat.
bpython is a fancy interface to the Python interpreter for Linux, BSD, OS X and Windows (with some work). bpython is released under the MIT License. It has the following (special) features:
On my Arch Linux I have installed these versions:
Keep up the good work! Termux is the best terminal emulator I've tried for Android, installing packages with apt is a killer feature =D
dpkg: error processing archive /data/data/com.termux/files/usr/var/cache/apt/archives/netpbm_r2592_arm.deb (--unpack):
parsing file '/data/data/com.termux/files/usr/var/lib/dpkg/tmp.ci/control' near line 5 package 'netpbm':
error in 'Version' field string 'r2592': version number does not start with digit
Errors were encountered while processing:
/data/data/com.termux/files/usr/var/cache/apt/archives/netpbm_r2592_arm.deb
E: Sub-process /data/data/com.termux/files/usr/bin/dpkg returned an error code (1)
due to this line.. maybe
https://github.com/termux/termux-packages/blob/master/packages/netpbm/build.sh
TERMUX_PKG_VERSION=r${_SVN_REVISION}
Hi,
I successfully installed a package with pip, but when I try to run it I get the following error:
$ ansible
Traceback (most recent call last):
File "/data/data/com.termux/files/usr/bin/ansible", line 36, in <module>
from ansible.runner import Runner
File "/data/data/com.termux/files/usr/lib/python2.7/site-packages/ansible/runner/__init__.py", line 37, in <module>
import ansible.inventory
File "/data/data/com.termux/files/usr/lib/python2.7/site-packages/ansible/inventory/__init__.py", line 26, in <module>
from ansible.inventory.ini import InventoryParser
File "/data/data/com.termux/files/usr/lib/python2.7/site-packages/ansible/inventory/ini.py", line 21, in <module>
from ansible.inventory.host import Host
File "/data/data/com.termux/files/usr/lib/python2.7/site-packages/ansible/inventory/host.py", line 19, in <module>
from ansible import utils
File "/data/data/com.termux/files/usr/lib/python2.7/site-packages/ansible/utils/__init__.py", line 29, in <module>
from ansible.utils.display_functions import *
File "/data/data/com.termux/files/usr/lib/python2.7/site-packages/ansible/utils/display_functions.py", line 22, in <module>
from ansible.callbacks import display
File "/data/data/com.termux/files/usr/lib/python2.7/site-packages/ansible/callbacks.py", line 30, in <module>
from ansible.module_utils import basic
File "/data/data/com.termux/files/usr/lib/python2.7/site-packages/ansible/module_utils/basic.py", line 57, in <module>
import syslog
ImportError: dlopen failed: cannot locate symbol "__android_log_print" referenced by "syslog.so"...
This link suggests to add some extra flags to the build:
https://stackoverflow.com/questions/4455941/undefined-reference-to-android-log-print
I have no experience on any library could provide OpenGL without X or a windowing system. That is not therotically impossible AFAIK as OpenGL APIs don't care about windowing system anyway and some kind of directly writing into framebuffer perhaps is possible but I guess GLFW and freeglut libraries won't support us here. What library could be used for such thing? Is it something would be possible eventually or it is already possible in someway I am not aware of? Thank you
When I use the file(1) command, it prints out the requested info, then says "Segmentation fault". The error code is 139, if that helps anything. If you need any other piece of information, please let me know.
~> autoload -Uz compinstall
~> compinstall
compinstall:6: failed to load module: zsh/files
I get the following error (only pasting relevant part):
...
patching file test/widechars.h
patching file test/worm.c
patching file test/xmas.c
patching file ncurses/tinfo/lib_setup.c
patching file ncurses/tinfo/tinfo_driver.c
sed: no input files
configure: WARNING: If you wanted to set the --build type, don't use --host.
If a cross compiler is detected then cross compile mode will be used.
checking for egrep... grep -E
Configuring NCURSES 5.9 ABI 5 (Fri Oct 9 16:25:50 UTC 2015)
checking for package version... 5.9
checking for package patch date... 20141206
checking build system type... x86_64-pc-linux-gnu
checking host system type... arm-unknown-linux-androideabi
checking target system type... arm-unknown-linux-androideabi
Configuring for linux-androideabi
checking for prefix... /data/data/com.termux/files/usr
checking for arm-linux-androideabi-gcc... arm-linux-androideabi-gcc
checking for C compiler default output... configure: error: C compiler cannot create executables
There are two suspicious things here, one the sed with no input files, the other is the configure warning. Perhaps build-package.sh is out-of-date? I tried this on a ubuntu 15.04 machine with the latest packages.
Hello,
I tried to configure mutt with smime support. Everything looks ok, but the actual encryption/decryption does nothing. This could be due to openssl returning some weird error:
$ openssl
CANNOT LINK EXECUTABLE: cannot locate symbol "SSLv2_client_method" referenced by "openssl"...
Any idea what could cause this?
➜ ~ ranger
zsh: /data/data/com.termux/files/usr/bin/ranger: bad interpreter: /data/data/com.termux/files/usr/bin/python3.4: no such file or directory
while
➜ ~ python --version
Python 3.5.0
Emacs seems to crash on startup a lot.
One working configuration is Android 5.1 with more columns than 72.
It seems that package downloading fails from golang.org
$ go get -d -v golang.org/x/tools/cmd/oracle
Fetching https://golang.org/x/tools/cmd/oracle?go-get=1
https fetch failed.
import "golang.org/x/tools/cmd/oracle": https fetch: Get https://golang.org/x/tools/cmd/oracle?go-get=1: dial tcp: lookup golang.org on [::1]:53: read udp [::1]:44269->[::1]:53: read: connection refused
package golang.org/x/tools/cmd/oracle: unrecognized import path "golang.org/x/tools/cmd/oracle"
and also from other non-github sites.
$ go get -u -v github.com/rogpeppe/godef
github.com/rogpeppe/godef (download)
Fetching https://9fans.net/go/acme?go-get=1
https fetch failed.
import "9fans.net/go/acme": https fetch: Get https://9fans.net/go/acme?go-get=1: dial tcp: lookup 9fans.net on [::1]:53: read udp [::1]:56304->[::1]:53: read: connection refused
package 9fans.net/go/acme: unrecognized import path "9fans.net/go/acme"
For reference, this is the output for running the previous command outside Termux:
$ go get -u -v github.com/rogpeppe/godef -( 23:40:52 ma elo 17 )->
github.com/rogpeppe/godef (download)
Fetching https://9fans.net/go/acme?go-get=1
Parsing meta tags from https://9fans.net/go/acme?go-get=1 (status code 200)
get "9fans.net/go/acme": found meta tag main.metaImport{Prefix:"9fans.net/go", VCS:"git", RepoRoot:"https://github.com/9fans/go"} at https://9fans.net/go/acme?go-get=1
get "9fans.net/go/acme": verifying non-authoritative meta tag
Fetching https://9fans.net/go?go-get=1
Parsing meta tags from https://9fans.net/go?go-get=1 (status code 200)
9fans.net/go (download)
Fetching https://9fans.net/go/plan9?go-get=1
Parsing meta tags from https://9fans.net/go/plan9?go-get=1 (status code 200)
get "9fans.net/go/plan9": found meta tag main.metaImport{Prefix:"9fans.net/go", VCS:"git", RepoRoot:"https://github.com/9fans/go"} at https://9fans.net/go/plan9?go-get=1
get "9fans.net/go/plan9": verifying non-authoritative meta tag
Fetching https://9fans.net/go?go-get=1
Parsing meta tags from https://9fans.net/go?go-get=1 (status code 200)
Fetching https://9fans.net/go/plan9/client?go-get=1
Parsing meta tags from https://9fans.net/go/plan9/client?go-get=1 (status code 200)
get "9fans.net/go/plan9/client": found meta tag main.metaImport{Prefix:"9fans.net/go", VCS:"git", RepoRoot:"https://github.com/9fans/go"} at https://9fans.net/go/plan9/client?go-get=1
get "9fans.net/go/plan9/client": verifying non-authoritative meta tag
Fetching https://9fans.net/go?go-get=1
Parsing meta tags from https://9fans.net/go?go-get=1 (status code 200)
Hi
This app is awesome and it will be very interesting if there be openjdk.
thank you.
The subprocess module in python2 defaults to using /bin/sh
, which should be /data/data/com.termux/files/usr/bin/sh
. I'm prepping a PR to add a patch to the subprocess.py
file once I can test it.
I'm using the Node.JS package, after doing apt install nodejs
. However, when trying to install a module (serve if relevant), I get a permissions error.
command run: npm install serve
output
npm ERR! tar.unpack untar error /data/data/com.termux/files/home/.npm/serve/1.4.0/package.tgz npm ERR! Linux 3.4.0-g2aa165e npm ERR! argv "/data/data/com.termux/files/usr/bin/node" "/data/data/com.termux/files/usr/bin/npm" "install" "serve" npm ERR! node v4.2.2 npm ERR! npm v2.14.7 npm ERR! path /storage/emulated/0/Download/node_modules/serve/package.json npm ERR! code EPERM npm ERR! errno -1 npm ERR! syscall chmod npm ERR! Error: EPERM: operation not permitted, chmod '/storage/emulated/0/Download/node_modules/serve/package.json' npm ERR! { [Error: EPERM: operation not permitted, chmod '/storage/emulated/0/Download/node_modules/serve/package.json'] npm ERR! errno: -1, npm ERR! code: 'EPERM', npm ERR! syscall: 'chmod', npm ERR! path: '/storage/emulated/0/Download/node_modules/serve/package.json', npm ERR! fstream_finish_call: 'chmod', npm ERR! fstream_type: 'File', npm ERR! fstream_path: '/storage/emulated/0/Download/node_modules/serve/package.json', npm ERR! fstream_class: 'FileWriter', npm ERR! fstream_stack: npm ERR! [ '/data/data/com.termux/files/usr/lib/node_modules/npm/node_modules/fstream/lib/writer.js:306:21', npm ERR! 'FSReqWrap.oncomplete (fs.js:82:15)' ] } npm ERR! npm ERR! Please try running this command again as root/Administrator.
It suggests I try running the command again as root, so I go ahead with su
, then npm install serve again
. This time I get a different error:
CANNOT LINK EXECUTABLE: library "libnuv.so.`" not found
I'm not sure what this means or how I should proceed from here. Any ideas?
It prints strange output on startup mostly.
GNAT is a free-software compiler for the Ada programming language which forms part of the GNU Compiler Collection. It supports all versions of the language, i.e. Ada 2012, Ada 2005, Ada 95 and Ada 83.
The spec file on my Dell Venue 8 was giving odd errors, just like @fornwall reported here: http://stackoverflow.com/questions/31815737/cross-compiled-gcc-fails-with-unrecognised-emulation-mode-dynamic-linker#
I was able to get around this (and so far all my python packages other than numpy work, with some modification to the _sysconfigdata.py
file) by changing the spec file to be:
# Android 5 requires position-independent executables, so we use the
# %{!S:X} Substitutes X, if the -S switch is not given to GCC"
# construct (see https://gcc.gnu.org/onlinedocs/gcc/Spec-Files.html for full reference)
# to add -fPIE and -pie flags as appropriate.
*cc1_options:
+ %{!fpie: %{!fPIE: %{!fpic: %{!fPIC: %{!fno-pic:-fPIE}}}}}
*link_emulation:
elf_i386
*dynamic_linker:
%{mglibc:/lib/ld-linux.so.2;:%{muclibc:/lib/ld-uClibc.so.0;:/system/bin/linker}}
*link:
+ %{!nopie: %{!static: %{!shared: %{!nostdlib: %{!nostartfiles: %{!fno-PIE: %{!fno-pie: -pie}}}}}}}
Hi,
Awesome work you did with termux, I really love it! I'm gonna go away for three months, and an android tablet is all I take with me (and a bt keyboard!). I'm pretty sure in 3 months time I'll want to program, so hey, termux really is perfect for me :)
One thing I'd love is to see PHP arrive, including binding to SQLite 3 (php pdo sqlite) and the built-in webserver (available since PHP 5.4 I believe). I tried to build it on the tablet, but I ran into problems with shebang and stuff...
you should state somewhere, that you need to link agains "libgnustl_shared" on the device to get a functioning c++ standard library.
zsh compinit complains about insecure directories. The dirs
files/usr/share/zsh
files/usr/share/zsh/5.1.1
have permissions 770, but should be 750 for compaudit to stop complaining.
Sorry me, I have not found the source code of your Android app.
Is it released? Have you planned a release?
Your project can be really appreciated in F-Droid.
Python 3.X is great to have, and to be up to date, but seeing as how python 2.7 is still widely used i was wondering if you could include it in the repository? if this needs a package maintainer i would understand.
$ busybox | head -1
BusyBox v1.23.2 (2015-08-03 18:05:04 EDT) multi-call binary.
$ busybox wget
wget: applet not found
Wow, blown away, 405 packages available on Android. :)
Do you have any plans to package the necessary tools from the NDK and SDK so that I could write and build an Android apk directly from my tablet? I notice you have aapt packaged, which is used by the SDK to package apks. The compilers and linkers from the NDK wouldn't be hard, as it's all open source and you already build the stock versions yourself. I don't know how bad it would be to extract and build the necessary tools from the SDK. If that is your plan, that'd be great.
Some small bugs I've noticed so far:
-lgcc
to the linker, twice actually. If I compiled to an object file with clang and then ran the same linker command without that flag, it worked.git log
shows some cruft, specifically every commit starts like this:[[33mcommit a254fecc4824a884024e7907e2185cfc95e4c64d[[m
Ctrl-C
out of the program to get a backtrace in gdb. I ended up having to open another session and kill gdb.Love this work; if you have a bitcoin address, I suggest you make it public.
The git-submodule script relies partially on Perl. It's hard-coded to run /usr/bin/perl, which isn't where the Termux Perl package installs that command. Looks like an additional patch is needed for the Git package.
Hello, I tried to compile simple hello world in c, but gcc failed with this:
$ gcc -Wall hello.c -o hello
/data/data/com.termux/files/usr/bin/ld: unrecognised emulation mode: -dynamic-linker
Supported emulations: elf_i386 i386linux elf32_x86_64
collect2: error: ld returned 1 exit status
Can you, please, help me with working around this?
Thanks.
On asus zenfone 2 .
$ termux-camera-photo -h
usage: /data/data/com.termux/files/usr/bin/termux-camera-photo [OPTIONS] <output-file>
Take a photo and save it in a file. Valid options:
-c, --camera <camera-id> the id of the camera to use
See the termux-camera-info for getting information about available cameras
$ termux-camera-photo -c 0 pic.jpg
Error type 3
Error: Activity class {com.termux.extras/com.termux.extras.PhotoActivity} does not exist.
$
If I run curl
, this is what I see:
CANNOT LINK EXECUTABLE: cannot locate symbol "Curl_raw_nequal" referenced by "curl"...
hi there, I'm the developer of ZShaolin
you may want to include it in the resources section, we have our own build toolchain based on crosstools-ng which may come handy for someone studying the field, plus our own build script
this is just an heads up as a zshaolin user signaled termux. I am studying your system and wouldnt exclude the possibility of joining efforts in the future
happy hacking!
Taskwarrior is a command line task editor with a lot of features, including syncing task with a server. Would be great to use this wonderful program on a smartphone.
https://taskwarrior.org/
Keep up the good work! =D
$ which ssh-keygen
/data/data/com.termux/files/usr/bin/ssh-keygen
$ ssh-keygen
CANNOT LINK EXECUTABLE: cannot locate symbol "OpenSSL_add_all_algorithms" referenced by "ssh-keygen"...
page record for 0xb6eef00c was not found (block_size=64)
$ for i in $(find $PREFIX/share/nano -type f); do echo include \"$i\" >>| ~/.nanorc; done
$ nano
Error in /data/data/com.termux/files/usr/share/nano/patch.nanorc on line 4: Command "magic" not understood
Error in /data/data/com.termux/files/usr/share/nano/asm.nanorc on line 4: Command "magic" not understood
Error in /data/data/com.termux/files/usr/share/nano/php.nanorc on line 4: Command "magic" not understood
Error in /data/data/com.termux/files/usr/share/nano/html.nanorc on line 4: Command "magic" not understood
Error in /data/data/com.termux/files/usr/share/nano/python.nanorc on line 5: Command "linter" not understood
Error in /data/data/com.termux/files/usr/share/nano/perl.nanorc on line 5: Command "magic" not understood
Error in /data/data/com.termux/files/usr/share/nano/guile.nanorc on line 5: Command "magic" not understood
Error in /data/data/com.termux/files/usr/share/nano/java.nanorc on line 4: Command "magic" not understood
Error in /data/data/com.termux/files/usr/share/nano/awk.nanorc on line 4: Command "magic" not understood
Error in /data/data/com.termux/files/usr/share/nano/man.nanorc on line 4: Command "magic" not understood
Error in /data/data/com.termux/files/usr/share/nano/texinfo.nanorc on line 5: Command "magic" not understood
Error in /data/data/com.termux/files/usr/share/nano/ruby.nanorc on line 5: Command "linter" not understood
Error in /data/data/com.termux/files/usr/share/nano/tex.nanorc on line 4: Command "linter" not understood
Error in /data/data/com.termux/files/usr/share/nano/xml.nanorc on line 4: Command "magic" not understood
Error in /data/data/com.termux/files/usr/share/nano/sh.nanorc on line 5: Command "magic" not understood
Error in /data/data/com.termux/files/usr/share/nano/sh.nanorc on line 6: Command "linter" not understood
Error in /data/data/com.termux/files/usr/share/nano/c.nanorc on line 4: Command "magic" not understood
Error in /data/data/com.termux/files/usr/share/nano/postgresql.nanorc on line 4: Command "magic" not understood
Error in /data/data/com.termux/files/usr/share/nano/go.nanorc on line 45: Command "formatter" not understood
Press Enter to continue starting nano.
From @archanox on November 2, 2015 16:7
It would be fantastic if mono support was included in termux to at least run cli applications.
Copied from original issue: termux/termux-app#9
With some input methods that support both a "word mode" and a "letter mode", the virtual keyboard is put in the word mode. For instance, when I write "apt" with Google Pinyin, the screen looks like:
This is not a limitation of the input method, since in quite some circumstances like the location bar of Firefox and Chrome, the virtual keyboard is correctly put in the letter mode. I believe the behavior is influenced by some property of the text field, which termux is not setting correctly.
Would be great to add mosh as a package to termux
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.