Отговори на тема  [ 76 мнения ]  Отиди на страница Предишна  1, 2, 3, 4, 5, 6  Следваща
GCC 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Окт 11, 2011 10:53 pm
Мнения: 4174
Местоположение: Brussels / Пловдив
Мнение Re: GCC
А защо не го направиш с един #ifdef ... и после да дефинираш или от командния ред или от сорса съответния define за да зареди оригиналния файл и този в който си добавил орязаните неща.

_________________
Мразя да мразя ...


Съб Сеп 28, 2019 9:16 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4671
Мнение Re: GCC
в момента е така ... търсех някво по-добро решение

_________________
main[-1u]={1};


Съб Сеп 28, 2019 11:33 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Яну 19, 2007 8:16 am
Мнения: 1063
Местоположение: путинофили: "иди н***й"
Мнение Re: GCC
ако е Ц++, ако правилно съм разбрал проблема, може да пробваш с namespace (не съм сигурен че ще работи):

Код:
namespace NS1 {
#include "PATH1\inc.h"
}

namespace NS2 {
#include "PATH2\inc.h"
}


bool NS = false;

int open (char *file)
{
if (NS)
   return NS1::open (file);
else
   return NS2::open (file);
}

...


не знам и дали линкера няма да се оплаква!


Нед Сеп 29, 2019 8:27 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4671
Мнение Re: GCC
C библиотека е musl .... usr/include

gcc -Iusr/include -Iex/include ... където usr/include e орязан "оригинал" а ex/include е моя фолдер с допълненията
например fnctl.h е празен а в ext съм сложил пълния файл

include <fnctl.h> зарежда само първия -I

това е узер SDK на М$ Azure Sphere - махнали са всички функции с опен PATH ... и разни други библиотеки
a аз добавих всичко ... искам да го направя по дефол да работи "стандартно" като за М$, но с прост кей enable да отвори всички възможности .... без да редактирам оригинала
в момента съм бръкнал в няколко файла така
https://github.com/Wiz-IO/framework-azu ... fcntl.h#L5

_________________
main[-1u]={1};


Нед Сеп 29, 2019 9:18 am
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Яну 19, 2007 8:16 am
Мнения: 1063
Местоположение: путинофили: "иди н***й"
Мнение Re: GCC
в моя пример по-горе с namespace можеш да инклудаваш и двата fnctl.h и да ги викаш ... проблема е че, за всяка функция трабва да си направиш stub функция (както е в моя пример open).


Нед Сеп 29, 2019 10:17 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Окт 11, 2011 10:53 pm
Мнения: 4174
Местоположение: Brussels / Пловдив
Мнение Re: GCC
TheWizard написа:
C библиотека е musl .... usr/include

gcc -Iusr/include -Iex/include ... където usr/include e орязан "оригинал" а ex/include е моя фолдер с допълненията
например fnctl.h е празен а в ext съм сложил пълния файл

include <fnctl.h> зарежда само първия -I

това е узер SDK на М$ Azure Sphere - махнали са всички функции с опен PATH ... и разни други библиотеки
a аз добавих всичко ... искам да го направя по дефол да работи "стандартно" като за М$, но с прост кей enable да отвори всички възможности .... без да редактирам оригинала
в момента съм бръкнал в няколко файла така
https://github.com/Wiz-IO/framework-azu ... fcntl.h#L5

А така дали ще ти върши работа?

Код:
gcc -Iex/include -Iusr/include


В ex/include/fcntl.h добавяш те това:
Код:
...
#include </usr/include/fcntl.h>
...


Да не говорим, че може в твоя файл да изкопираш съдържанието на оригиналният и да си добавиш каквото ти трябва ...

_________________
Мразя да мразя ...


Нед Сеп 29, 2019 11:04 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4671
Мнение Re: GCC
:) пак трябва да пиша много
заебавам го така - бъркам само в два файла с три реда
кат ми дойде муза ще пробвам различни (лесни) варианти

по принцип гледам да не барам "оригинала" щото разни М$ чайници казаха, че като местя една статична библиотека в usr/lib папката било хакерско и "много опасно" :)
https://github.com/Wiz-IO/platform-azur ... -all-API-s

тези "орязваници" са ги направили за да се използва САМО Azure облака с оправдания за защита от хакери
а защитата на Линукса им е "dongle" друго хард ядро което държи всички админ и flash операции плюс firewall за периферия и мрежа

_________________
main[-1u]={1};


Нед Сеп 29, 2019 12:18 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4671
Мнение Re: GCC
питанка:
C проект, линкера подържа C++
как да изимитирам ( от C ) клас конструктор ... един вид init_foo() да се изпълни в __init_array_start

_________________
main[-1u]={1};


Чет Мар 11, 2021 7:22 am
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Фев 07, 2012 10:22 pm
Мнения: 3074
Мнение Re: GCC
Не е ли до някакви атрибути на твоята специфична функция?

void init(int argc, char **argv, char **envp) {
printf("inithello\n");
}

__attribute__((section(".init_array"))) typeof(init) *__init = init;

http://www.dbp-consulting.com/tutorials ... artup.html


Чет Мар 11, 2021 9:04 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4671
Мнение Re: GCC
аз га написах поста се сетих :)

Код:
#pragma GCC push_options
#pragma GCC optimize("-O0")
static void pre_lfs_rom_init(void)
{
    MUTEX_INIT(lfs_rom_ctx.pMutex);
}
static __attribute__((section(".preinit_array"))) void (*__pre_lfs_rom_init)(void) = pre_lfs_rom_init;
#pragma GCC pop_options

_________________
main[-1u]={1};


Чет Мар 11, 2021 9:34 am
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4671
Мнение Re: GCC
някой правил ли е ретаргет на <sys/lock.h>

_________________
main[-1u]={1};


Пет Мар 12, 2021 6:56 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4671
Мнение Re: GCC
схванах му чалъма :)
https://github.com/Wiz-IO/framework-wiz ... lib/lock.c

_________________
main[-1u]={1};


Нед Мар 14, 2021 3:25 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4671
Мнение Re: GCC
без sys/lock.h

със sys/lock.h

loop() го върти core_0, loop1() ... core_1

_________________
main[-1u]={1};


Чет Мар 18, 2021 6:55 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4671
Мнение Re: GCC
OpenOCD + GDB
има ли възможност и ако да, как да стартирам тази последователност в ЕДИН команден ред?

нещо от рода:
openocd -f "cmsis-dap.cfg" -c "adapter speed 4000" RUN arm-none-eabi-gdb load app.elf

или обратното
arm-none-eabi-gdb параметри RUN OpenOCD параметри

_________________
main[-1u]={1};


Пон Мар 29, 2021 9:51 am
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 5:52 pm
Мнения: 10356
Местоположение: Добрич
Мнение Re: GCC
Може да си направиш .gdbinit файл... Питай чичо Гошо за подробности ;-)


Пон Мар 29, 2021 10:32 am
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 76 мнения ]  Отиди на страница Предишна  1, 2, 3, 4, 5, 6  Следваща

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 5 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни