Comments (4)
Why are you building static? This project and all of its dependencies are not supposed to be built statically.
from usbmuxd.
Static building is sometimes useful, especially when you want to make an easily redistributable cross-platform tool.
Here is my current approach in achieving it. Did not yet test for runtime errors, but linking succeeds:
You'll need to make several changes to libimobiledevice
sources:
- In
common/thread.c
, remove all contents; - In
common/thread.h
, prepend each function definition withextern
keyword; - This will break building binary tools, so disable them: in
Makefile.am
, removetools
anddocs
fromSUBDIRS
, and removeEXTRA_DIST
line. - Now run
./autogen.sh --enable-shared=no
and other flags you may need (probably you'll want to use custom--prefix
).
from usbmuxd.
@MarSoft are you able to provide a patch for this?
from usbmuxd.
@voltagex, here is the script I use on libimobiledevice/libimobiledevice@798601d to prepare it for static build:
# remove code for thread funcs which is duplcated with usbmuxd
cat /dev/null > common/thread.c
# convert thread funcs to extern ones
sed -i common/thread.h -e 's/^\([iv][no][ti]\)/extern \1/'
# don't build tools (and docs), only lib itself
sed -i Makefile.am -e 's/ tools docs$$//; s/^EXTRA_DIST =.*//'
# apply fix from libplist#114
sed -i src/idevice.c -e 's/WIN32/DLL_EXPORT/'
Newer commits don't work for me because of socket stuff change introduced in libimobiledevice/libimobiledevice@2c83cae.
from usbmuxd.
Related Issues (20)
- Can not Bind local TCP port 8527 and forward to port 6661 of the first device connected via USB: HOT 3
- Preflight support is disabled when --with-preflight is set HOT 1
- New version?🤔 HOT 2
- Default socket is world-writteable HOT 2
- forward traffic from device to host
- Cannot pair iPod 4G (running iOS 6.1.6) anymore.
- configure: error: Package requirements (libplist-2.0 >= 2.3.0) were not met: HOT 1
- How to make this project to a dynamic library?
- udev rules do not match devices in recovery/DFU mode HOT 4
- Pc to ios data transfer
- windows error HOT 1
- Can't connect to old devices (iOS 12), device reboot after unplugging HOT 4
- SystemBUID not stored (can't write to SystemConfiguration.plist: Operation not supported) HOT 3
- Commit c7a0dd9 : usb tethering doesn't work anymore HOT 5
- Could not find a suitable USB interface for device 1-4, Cannot find device entry while removing USB device HOT 1
- usbmuxd when running is interfering with my usbip connected device
- Activation of network connection failed on Ubuntu 22.04
- Features cannot function properly after porting to Android HOT 1
- Segfault with iPhone 15 Pro Max with iOS 17.4.1 HOT 1
- usbmuxd logging asyncReadComplete, message was too large (65536 bytes, max = 65535) while using usbipd-win HOT 4
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 usbmuxd.