It’s about 10 years ago when I had an build environment of ipfire for the last time so I’m not common with its structure anymore.
If I remeber right there should be a configuration file in the root directory of the build environment with its sources and make script, but I cant find it. There was not problem with building ipfire from scratch so my build environment works fine.
Therefore I cant run ./configure. What am I missing?
The IPFire buildsystem never had a configure script but you can create a .config textfile in the folder where make.sh is located. But there are only some usefull variables like.
TARGET_ARCH= (i586,x86_64,armv5tel,aarch64) default is system arch.
ENABLE_RAMDISK= (on, off, auto) default is auto (if more than 4GB free use ramdisk)
IPFIRE_USER= (username for upload of the IPFire server)
Most of this should work in default (if no .config is present) and the arch can also specified on commandline.
IPFire does not have that. You are thinking of buildroot and OpenWRT is using that for example.
The problem that you have is very unlikely driver-related. It might be that the device is not properly ejected when it is inserted and therefore does not change into modem mode. That would be a problem in usb_modeswitch. There could be some other timing issues, but generally you are talking to your device and that is what the driver does and it works.
I can say that CONFIG_USB_SIERRA_NET and CONFIG_USB_SERIAL_SIERRAWIRELESS is enabled as module in the IPFire Kernel.
I fear that this card not support the pure modem mode and they use a AT command interface to unlock the SIM and set the APN’s but after this the connection is handled via an Ethernet device. This mode is not suported by the IPFire network init skripts.
to reach the kernel config you have to disable the ramdisk, run a full build and after this go into the build-shell (./make.sh shell) and go to /usr/src/linux and run make menuconfig
and run the build to kernel built. (the full kernel not the header part)
You can break if the kernel compile has really started (run tail -f log/_build-ipfire.log in a seperate shell to see)
my .config file was added manually and ended up here --> /home/pi/ipfire-2.x/.config
$ cd ipfire-2.x
$ ls -al
drwxr-xr-x 14 pi pi 4096 Apr 1 15:59 .
drwxr-xr-x 28 pi pi 4096 Mar 31 17:36 ..
drwxr-xr-x 21 root root 4096 Apr 1 15:59 build
drwxr-xr-x 3 pi pi 32768 Mar 31 16:35 cache
drwxr-xr-x 3 root root 4096 Mar 31 16:36 ccache
-rw-r--r-- 1 pi pi 19 Apr 1 15:12 .config
drwxr-xr-x 94 pi pi 4096 Mar 31 15:14 config
drwxr-xr-x 2 pi pi 4096 Mar 31 15:14 doc
drwxr-xr-x 8 pi pi 4096 Apr 1 15:59 .git
-rw-r--r-- 1 pi pi 153 Mar 31 15:14 .gitignore
drwxr-xr-x 4 pi pi 4096 Mar 31 15:14 html
drwxr-xr-x 11 pi pi 4096 Mar 31 15:14 langs
drwxr-xr-x 2 pi pi 20480 Mar 31 15:14 lfs
drwxr-xr-x 2 root root 4096 Apr 1 17:14 log
-rw-r--r-- 1 pi pi 1647 Mar 31 15:14 .mailmap
-rwxr-xr-x 1 pi pi 48357 Apr 1 11:50 make.sh
drwxr-xr-x 17 pi pi 4096 Mar 31 15:14 src
drwxr-xr-x 3 pi pi 4096 Mar 31 15:14 tools
$ cat .config