Comments (4)
Hi gingerbredman,
Well, as far as I know, this has worked out before, but not completely.
Fist: I am wondering, because the apple branch is not there anymore.
So you should just do (starting from scratch)
git clone https://gitlab.com/kollo/X11Basic.git
cd X11Basic/src
./configure
And maybe you only want to try the make static
, wich is the simplest build.
But first, after the configure, lets have a look at config.h which has been created by configure.
Especially look at the lines with:
#define HAVE_X11 1
from x11basic.
Looking at the other error: raw_keybord.c probably need to be modified.
try to make somethin like:
#ifndef __APPLE__
#include <linux/input.h>
#endif
or for convinience, delete the line #include <linux/input.h>
but other errors my show up. (for the moment, you can ignore warnings)
from x11basic.
Part of the issues I've run into is assuming that the linker is GNU ld/ELF: Apple's linker is not GNU ld, and it uses an executable format known as Mach.
For me, getting it to see headers and libraries in locations not in /usr/local
is a pain, as the makefile doesn't seem to use LDFLAGS
nor store CPPFLAGS
.
For forkpty
(without the forward declaration, it is an error on Apple Silicon), including util.h
will fix the warning/error.
For the libxbasic shared library, there are a few areas that makes it a no-go on Darwin/macOS:
- linker flags
-Wl,-Bsymbolic-functions
and-Wl,-soname,libx11basic.so.1.28
don't translate to Mach flags (the second can be done with-install_name /usr/local/lib/libx11basic.1.28.dylib
, more on this later). - Shared libraries must end in ".dylib" for the linker to find them.
- Versioning must be done before the file extension.
- All symbols must be present at link time.
prglen
,ifilename
,program
,programbuffer
,programbufferlen
, andverbose
need to be available, otherwise the library won't link. You can use-undefined dynamic_lookup
, but I would not recommend it (You'd need the symbols to be external on the executables as well). - For shared libraries installed in system locations, it is a good idea to set the install name to the prefix you installed it into.
- You can set
-compatibility_version
and-current_version
on the library to make sure the applications fail early if the ABI changes significantly. More information about them can be found here.
from x11basic.
Seems this will not compile for Mac but is it possible to cross-compile the basic code for Mac using the Windows compiler as you can cross-compile on Windows for TomTom?
from x11basic.
Related Issues (20)
- [feature request] MQTT-Support HOT 1
- [feature request] possibility to detect if a key is pressed on keyboard or joystick HOT 41
- strange behavior of colon operator HOT 2
- MOUSEBUTTON events instead of KEY events () HOT 1
- KEYEVENT - reported character does not account for modifier keys HOT 19
- need help to make install HOT 1
- after make install: libx11basic.so.1.27 not found HOT 3
- Put_Bitmap: bug in SDL-version HOT 9
- clearw fills always black instead of background color [SDL] HOT 6
- [feature request] expressions in select case HOT 4
- mod expression requires parentheses HOT 1
- wrong ELF class: ELFCLASS32 HOT 4
- SDL_Keycode does not change according to the active keyboard mapping in Windows
- Graphics and GUI commands don't work when compiling from source HOT 9
- [enhancement] file selector in windows version HOT 3
- FSFIRST and FSNEXT work unexpectably. HOT 2
- no sound with SOUND 1,1 on Windows
- Issue with OPEN when trying to retrieve json response from a public API / Incomplete documentation HOT 1
- Simply Instruction how to for Windows in Powerpoint please
- Keyboard issues on Android 9 HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from x11basic.